版权声明:版权所有,尊重原创。转载请注明出处: https://blog.csdn.net/qq_36426650/article/details/84627709
C++面向对象程序设计50道编程题(第17题)
摘要:C++程序设计实习是为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析问题和解决问题的能力,提高学生运用所学知识解决实际问题的能力。
本专辑为编程入门者、高校计算机软件专业学习或复习提供C++程序设计题库。
读者请先独立思考哦,再与参考程序进行比对检查。
一、问题描述
二、考察内容
基本面向对象概念,如何创建类、对象,对类私有数据成员和公有成员函数的理解,对重载运算符的理解,简单的数组运算。
三、难度等级
难度等级:★★★☆☆
四、参考程序
#include <iostream.h>
class Array{
int ar[3];
public:
Array(){}
Array(int *aa)
{
for(int i=0;i<3;i++)
ar[i]=aa[i];
}
void show( )
{
for(int i=0;i<3;i++)
cout<<ar[i]<<'\t';
cout<<'\n';
}
Array operator ^(Array);
} ;
Array Array::operator ^(Array arr)
{
int t;
for(int i=0;i<3;i++)
{
t=ar[i];
if(arr.ar[i]==0)ar[i]=1;
else for(int j=1;j<arr.ar[i];j++)
ar[i]*=t;
}
return *this;
}
void main( )
{
int a[3]={2,2,2},b[3]={3,4,2};
Array ar1(a),ar2(b),ar3;
ar1.show(); ar2.show();
ar3=ar1^ar2; ar3.show();
}
五、心得感受
可以在评论处写下思考和编程此题的感受