- 相关推荐
计算机二级C++练习题:改错题
为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的计算机二级C++练习题:改错题,供参考练习,预祝考生们考出自己理想的成绩!
计算机二级C++练习题:改错题
使用VC6打开考生文件夹下的工程kt7_1,此工程包含一个源程序文件kt7_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:
Constructor1
Constructor1
Constructor1
Destructor
Constructor2
Destructor
x=0
x=5
Destructor
Destructor
源程序文件kt21_1.cpp清单如下:
#include
classB
{intx;
public:
B(){x=0;cout<<"Constructor1"<<ENDL;}
B(inti){x=i;cout<<"Constructor2"<<ENDL;}
~B(){cout<<"Destructor"<<ENDL;}
/**********found**********/
~B(inti){cout<<I<<"BEDESTRUCTOR"<<ENDL;}
voidprint(){cout<<"x="<<X<<ENDL;}};
voidmain()
{B*ptr;
ptr=newB[2];
/**********found**********/
ptr[0]=B(0);
ptr[1]=B(5);
/**********found**********/
for(inti=0;i<2;)
ptr[i].print();
[]ptr;}
【参考答案】
(1)将~B(inti){cout<<I<<"p=""be=">
(2)将ptr[0]=B(0);改为:ptr[0]=B();
(3)将for(inti=0;i<2;)改为:for(inti=0;i<2;i++)
B(inti){x=i;cout<<"Constructor2"<<ENDL;}
~B(){cout<<"Destructor"<<ENDL;}
/**********found**********/
~B(inti){cout<<I<<"BEDESTRUCTOR"<<ENDL;}
voidprint(){cout<<"x="<<X<<ENDL;}};
voidmain()
{B*ptr;
ptr=newB[2];
/**********found**********/
ptr[0]=B(0);
ptr[1]=B(5);
/**********found**********/
for(inti=0;i<2;)
ptr[i].print();
[]ptr;}
【试题解析】
本题主要考查对文件相关操作的熟练程度。首先定义文件流类的变量,然后使用该对象的open方法打开一个文件,接着使用while循环和getch方法每次读入一个字符并统计字符个数,最后使用close方法关闭文件,返回i值。
【计算机二级C++练习题:改错题】相关文章:
2016计算机二级《C++》练习题及答案08-14
2016计算机二级《C++》上机练习题06-09
2017计算机二级C++强化练习题08-17
2017计算机二级C++考前练习题09-18
2016计算机二级考试C++练习题及答案07-15
2017计算机二级C++考前练习题及答案09-11
2017计算机二级C++基础练习题及答案08-07
2017计算机二级C++备考练习题及答案09-22