求大神帮忙写一下C++程序,速度!!!!
题目三定义一个基类MyArray,基类中可以存放一组数组。ClassMyArray{private:int*alist;//动态数组指针intlength;//数组长度p...
题目三
定义一个基类MyArray,基类中可以存放一组数组。
Class MyArray
{
private:
int *alist; //动态数组指针
int length; //数组长度
public:
MyArray( int length);//构造函数,根据length申请动态数组空间
~myarray();//析构函数
void input();//数据输入
void display();//数据输出
};
1) 编写构造函数、析构函数及其它函数实现动态分配内存,释放内存和数据输入输出功能。
2) 定义类AverArray继承自MyArray并定义成员函数Getaverage求数组平均值并输出。
3) 定义类RevArray继承自 MyArray, 并定义成员函数Revdata使数组按反序存放并输出。
4) 编写main函数分别定义上述三个类的三个对象并对其成员函数进行测试
main模板如下
void main(void)
{
MyArray array1(5);
array1.input();
array1.display();
AverArray array2(5);
array2.input();
cout<<”The average of array2 is:”;
cout<<array2.GetAverage<<endl;
Revarray array3(5);
array3.input();
array3.Revdata();
} 展开
定义一个基类MyArray,基类中可以存放一组数组。
Class MyArray
{
private:
int *alist; //动态数组指针
int length; //数组长度
public:
MyArray( int length);//构造函数,根据length申请动态数组空间
~myarray();//析构函数
void input();//数据输入
void display();//数据输出
};
1) 编写构造函数、析构函数及其它函数实现动态分配内存,释放内存和数据输入输出功能。
2) 定义类AverArray继承自MyArray并定义成员函数Getaverage求数组平均值并输出。
3) 定义类RevArray继承自 MyArray, 并定义成员函数Revdata使数组按反序存放并输出。
4) 编写main函数分别定义上述三个类的三个对象并对其成员函数进行测试
main模板如下
void main(void)
{
MyArray array1(5);
array1.input();
array1.display();
AverArray array2(5);
array2.input();
cout<<”The average of array2 is:”;
cout<<array2.GetAverage<<endl;
Revarray array3(5);
array3.input();
array3.Revdata();
} 展开
2个回答
展开全部
#include <iostream.h>
class Myarray
{
protected:
int *alist;
int length;
public:
Myarray(int len)
{alist=new int[len];length=len;}
~Myarray()
{delete(alist);cout<<"x........"<<endl;}
void input()
{
int i;
for(i=0;i<length;i++)
{cout<<"输入数组的"<<i+1<<"个元素:"<<'\n';
cin>>alist[i];}
}
int getlen(){return length;}
void display()
{for(int i=0;i<length;i++)
cout<<alist[i]<<' ';
cout<<endl;
}
};
class averarray:virtual public Myarray
{
public:
averarray(int n):Myarray(n)
{}
float getaver()
{float aver;
int sum=0,i;
for(i=0;i<length;i++)
sum+=alist[i];
aver=(float)sum/length;
return aver;
}
};
class rearray:virtual public Myarray
{
public:
rearray(int n):Myarray(n)
{}
void turn()
{
int i,t,j=length-1;
for(i=0;i<length/2;i++,j--)
{t=alist[i];alist[i]=alist[j];alist[j]=t;}
}
};
class nawarray:public rearray,public averarray
{
public:
nawarray(int n):Myarray(n),rearray(n),averarray(n)
{}
};
int main()
{
nawarray A(5);
A.input();
A.display();
cout<<"输出平均成绩:"<<endl;
cout<<A.getaver()<<endl;
cout<<"倒置:"<<endl;
A.turn();
A.display();
return 0;
}
发现有个类似的 ,你可以参考下
http://zhidao.baidu.com/question/338164226.html
class Myarray
{
protected:
int *alist;
int length;
public:
Myarray(int len)
{alist=new int[len];length=len;}
~Myarray()
{delete(alist);cout<<"x........"<<endl;}
void input()
{
int i;
for(i=0;i<length;i++)
{cout<<"输入数组的"<<i+1<<"个元素:"<<'\n';
cin>>alist[i];}
}
int getlen(){return length;}
void display()
{for(int i=0;i<length;i++)
cout<<alist[i]<<' ';
cout<<endl;
}
};
class averarray:virtual public Myarray
{
public:
averarray(int n):Myarray(n)
{}
float getaver()
{float aver;
int sum=0,i;
for(i=0;i<length;i++)
sum+=alist[i];
aver=(float)sum/length;
return aver;
}
};
class rearray:virtual public Myarray
{
public:
rearray(int n):Myarray(n)
{}
void turn()
{
int i,t,j=length-1;
for(i=0;i<length/2;i++,j--)
{t=alist[i];alist[i]=alist[j];alist[j]=t;}
}
};
class nawarray:public rearray,public averarray
{
public:
nawarray(int n):Myarray(n),rearray(n),averarray(n)
{}
};
int main()
{
nawarray A(5);
A.input();
A.display();
cout<<"输出平均成绩:"<<endl;
cout<<A.getaver()<<endl;
cout<<"倒置:"<<endl;
A.turn();
A.display();
return 0;
}
发现有个类似的 ,你可以参考下
http://zhidao.baidu.com/question/338164226.html
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询