建立一个Array类,求一个一维数组中各元素的最大值最小值(C++程序设计)

建立一个Array类,求一个一维数组中各元素的最大值最小值
(1)私有成员
Int data[10]数组名称
int max
int min
float averge
(2)公有成员
构造函数Array(int a[10]):初始化成员数组
Void process()求data数组中Max,Min,average
Void print() 输出数组中元素Max,Min,average

/*

建立一个Array类,求一个一维数组中各元素的最大值最小值
(1)私有成员
Int data[10]数组名称
int max
int min
float averge
(2)公有成员
构造函数Array(int a[10]):初始化成员数组
Void process()求data数组中Max,Min,average
Void print() 输出数组中元素Max,Min,average
*/

#include <iostream>

using namespace std;

class Array
{
private:
int date[10];
int max;
int min;
float average;
public:
Array(int a[10]);
void process();
void print();
};

Array::Array(int a[10])
{
for(int i=0; i<10; i++)
{
this->date[i] = a[i];
}
}

void Array::process()
{
int a = this->date[0];
for(int k=0; k<10; k++)
{
if(a < this->date[k])
{
a = this->date[k];
}
}
this->max = a;
for(int l=0; l<10; l++)
{
if(a > this->date[l])
{
a = this->date[l];
}
}
this->min = a;

this->average =(this->max + this->min)/2;
}

void Array::print()
{
cout<<"最大值MAX = "<<this->max<<endl;
cout<<"最大值MIN = "<<this->min<<endl;
cout<<"平均值ARV = "<<this->average<<endl;
}

void main()
{

int da[10];

for(int i=0; i<10; i++)
{
cout<<"请输入第"<<i+1<<"个数字:";
cin>>da[i];
}
system("cls");
cout<<"输入是十个数字为"<<endl;
for(int j=0; j<10; j++)
{
cout<<da[j]<<'\t';
}

Array a(da);

a.process();
a.print();
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-12-30
运行结果:
Data in Array:
1 3 2 5 6 2 3 6 4 8
Max=8,Min=1,Average=4.00

代码:

#include <stdio.h>

class Array
{
public:
Array(int a[10]);
void process();
void print();
private:
int data[10];
int max;
int min;
float average;
};

Array::Array(int a[10])
{
for (int i=0;i<10;i++)
data[i] = a[i];
}

void Array::process()
{
average = 0;
max = min = data[0];
for (int i=0;i<10;i++)
{
if (max < data[i])
max = data[i];
if (min > data[i])
min = data[i];
average+=data[i];
}
average/=10;
}

void Array::print()
{
printf("Data in Array:\n");
for (int i=0;i<10;i++)
printf("%d ",data[i]);
printf("\nMax=%d,Min=%d,Average=%.2f\n",max,min,average);
}

void main()
{
int a[10] = {1,3,2,5,6,2,3,6,4,8};
Array arr(a);
arr.process();
arr.print();
}
第2个回答  2009-12-30
class Array
{
private:
int data[10];//数组名称
int max;
int min;
float averge;
public:
Array(int *a)
{
for(int i=0;i<10;i++)
{
data[i]=a[i];
}
max=-214748364;
min=214748364;
averge=0;
}
void process()
{
for(int i=0;i<10;i++)
{
if(max<data[i])
max=data[i];
if(min>data[i]);
min=data[i];
averge=averge+data[i];
}
averge=averge/10;
}
void print()
{
cout<<"min="<<min<<" ";
cout<<"max="<<max<<" ";
cout<<"averge="<<averge<<endl;
}
};

这就是你要的Array类了
第3个回答  2009-12-30
class Array
{
public:
Array(int a[10])
{
for(int i=0;i<10;i++)
{
data[i]=a[i];
}
}
void process();
void print();
private:
int data[10];
int max;
int min;
float average;
};

void Array::process()
{
max=data[0];
min=data[0];
int sum=data[0];
for(int i=1;i<10;i++)
{
if(max<data[i])
tmax=data[i];
if(min>data[i]
min=data[i];
sum+=data[i];
}
average=float(sum/10);
}

void Array::print()
{
cout<<max<<endl;
cout<<min<<endl;
cout<<average;
}
第4个回答  2009-12-30
.晕啊你分多的不行大放送啊
这种水平的题有个20分绝对有人给你做
可惜本人不会c++ 用c的话完全没难度啊 就是冒泡法排下序就完了啊
相似回答