三、简单应用题 编写类AA的成员函数intCompare(AAb),该函数用于比较*this与b的大小,若两者含有元素的个数n相同,并且数组中前n个元素值对应相同,则认为两者相等返回1,否则返回0。注意:用数组方式及for循环来实现该函数。输出结果如下:
a=b
a<>c
注意:部分源程序已存在文件kt2_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数Compare的花括号中填写若干语句。
文件kt2_2.cpp的内容如下:
#include
#include
classAA{
int*a;
intn;
intMS;
public:
voidInitAA(intaa[],intnn,intms)
{
if(nn>ms)
{\cout<<"Error!"<< p>
exit(1);}
MS=ms;
n=nn;
a=newint[MS];
for(inti=0;i< p>
}
intCompare(AAb);
};
intAA::Compare(AAb)
{
}
voidmain()
{AAa,b,c;
intx[]={1,2,3,4,5};
inty[]={1,2,3,6,7};
intz[]={1,2,5,7,9};
a.InitAA(x,3,5);
b.InitAA(y,3,5);
c.InitAA(z,3,5);
if(a.Compare(b))
cout<<"a=b"<< p>
else
cout<<"a<>b"<< p>
if(a.Compare(c))
cout<<"a=c"<< p>
else
cout<<"a<>c"<< p>
【参考答案】
int AA::Compare(AA b)
{if(n!=b.n) return 0;
for(int i=0; i<>
if(a[i]!=b.a[i]) return 0;
return 1;}
【试题解析】
本题考查应用for循环、if条件控制语句等基本控制结构解决实际问题的能力。