2012年计算机二级C++第九套上机模拟试题及答案解析

来源:计算机等级考试    发布时间:2012-08-29    计算机等级考试视频    评论

本文导航
  • 第1页:一、改错题
  • 第2页:二、简单应用题
  • 第3页:三、综合应用题
  一、改错题

  使用VC6打开考生文件夹下的工程kt14_1,此工程包含一个源程序文件kt14_1.cpp,但该程序运行有问题,请改正程序中的错误,使该程序的输出结果为:

  A:noparameters

  B:intparameter

  A:noparameters

  B:intparameter

  C:intparameter

  源程序文件kt14_1.cpp清单如下:

  #include

  classA

  { /*****************found*****************/

  private:

  A(){cout<<"A:noparameters/n";}

  A(inta){cout<<"A:intparameter/n";} };

  classB:publicA

  { public:

  B(inta){cout<<"B:intparameter/n";} };

  /*****************found*****************/

  classC:publicB,publicA

  { public:

  /*****************found*****************/

  C(inta)::B(a){cout<<"C:intparameter/n";} };

  voidmain()

  { Bb(1);

  Cc(2); }

  【参考答案】

  (1)将private:改为:public:

  (2)将class C:public B,public A改为:class C:public B

  (3)将C(int a)::B(a){cout<<"C: int parameter/n"; }

  改为:C(int a):B(a){cout<<"C: int parameter/n";}

  【试题解析】

  (1)一个类的构造函数和析构函数可以由系统自动生成,也可以由用户提供,但构造函数和析构函数都必须是该类的公有成员函数,否则编译时将出现错误,不能被调用;

  (2)A已经是B的基类,C公有继承B,A也就成为了C的基类,根据程序的运行结果可知,C是要公有继承B;

  (3)派生类的构造函数,初始化基类的参数,调用基类的构造函数时,使用符号“:”,而不是“::”;

上一页123下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答