就业数据资源平台
当前位置:首页 > C++语言程序设计
2012年计算机二级C++练习题:改错题4

改错题
  使用VC6打开考生文件夹下的工程kt9_1,此工程包含一个源程序文件kt9_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:
  4,5
  20
  源程序文件清单如下:
  #include<iostream.h>
  classA
  { protected:
   intn,m;
   public:
   voidset(inta,intb){m=a;n=b;}
   voidshow(){cout<<m<<","<<n<<endl;}
   /**********found**********/ }
  classB:publicA
  { ints;
   public:
   voidset(){s=m*n;}
   voidshows(){cout<<s<<endl;} }; 
  voidmain()
  { 
   Bb;
   /**********found**********/
   b.set();
   b.show();
   b.set();

   /**********found**********/
   b.show(); 
  }
【参考答案】
  (1)在“}”后添加分号
  (2)将b.set();改为:b.A::set(4,5);
  (3)将b.show();改为:b.shows();
【试题解析】
  (1)主要考查对类定义格式的掌握,类的结尾应该使用";";
  (2)主要考查对基类与派生类函数调用关系的掌握,根据所要求的输出结果,应该调用的函数为类A的set,而不是类B自身的set函数,应该避免调用的二义性;
  (3)主要考查对继承与派生的理解,由所要求输出结果可知正确:b.shows()。
就业数据资源平台