参考答案
一、
【参考答案】
(1)将~B(int i){cout<
(2)将ptr[0]=B(0);改为:ptr[0]=B();
(3)将for (int i=0;i<2;)改为:for(int i=0;i<2;i++)
B(inti){x=i;cout<<"Constructor2"<
~B(){cout<<"Destructor"<
/**********found**********/
~B(inti){cout<
voidprint(){cout<<"x="<
voidmain()
{B*ptr;
ptr=newB[2];
/**********found**********/
ptr[0]=B(0);
ptr[1]=B(5);
/**********found**********/
for(inti=0;i<2;)
ptr[i].print();
delete[]ptr;}
【参考答案】
(1)将~B(int i){cout<
(2)将ptr[0]=B(0);改为:ptr[0]=B();
(3)将for (int i=0;i<2;)改为:for(int i=0;i<2;i++)
【试题解析】
本题主要考查对文件相关操作的熟练程度。首先定义文件流类的变量,然后使用该对象的open方法打开一个文件,接着使用while循环和getch方法每次读入一个字符并统计字符个数,最后使用close方法关闭文件,返回i值。
二、
【参考答案】
int charnum(char fn[10])
{fstream file;
file.open(fn,ios::in);
if(!file)
{cout<<"abc.txt can't open"<
abort();}
char ch;
int i=0;
while(!file.eof())
{file.get(ch);
i++;}
file.close();
return i-1;}
【试题解析】
本题主要考查对文件相关操作的熟练程度。首先定义文件流类的变量,然后使用该对象的open方法打开一个文件,接着使用while循环和getch方法每次读入一个字符并统计字符个数,最后使用close方法关闭文件,返回i值。
三 、
【参考答案】
(1)Circle(int rad):radius(rad){}
(2)void Print(){cout<<"The circle has radius of "<
(3)if ((c1->GetRadius())>(c2->GetRadius()))
【试题解析】
本题考查成员函数的定义与实现,友元函数,if分支语句等知识点。友元函数的类体外的定义与一般函数一样,其中if-else的使用,else总是与其最近的那个if配对使用的,书写时最好使用缩进格式,将配对的if-else对齐,以免出错。