试题 百分网手机站

下半年计算机二级C语言上考试题及答案

时间:2020-09-14 19:30:30 试题 我要投稿

2016下半年计算机二级C语言上考试题及答案

  一.程序改错题

2016下半年计算机二级C语言上考试题及答案

  使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正其中的错误,使程序正确运行,并且使程序输出的结果为

  0K

  注意:错误的语句在//******error******的下面,修改该语句即可。

  试题程序:

  #include

  classTC

  {

  public:

  TC()

  {

  a=b=0:

  }

  private:

  inta,b;

  };

  classTCl:publicTC

  {

  public:

  TC1()

  {

  }

  //******error******

  virtualvoidfunc();

  };

  classTC2:publicTCl

  {

  public:

  TC2()

  {

  a=0:

  b=0:

  }

  voidfunc()

  {

  //******error******

  cout<<"OK"  }

  private:

  inta;

  intb;

  };

  voidmain()

  {

  TC20bj;

  //******error******

  TCl*p=(TCl*)obj;

  p->func();

  }

  (1)应改为“virtualvoidfunc()=0;”。

  (2)应改为“cout<<"0K"<(endl;”。

  (3)应改为“TCl*p=(TCl*)&obj;”。

  【解析】本题中TCl类中的func函数是纯虚函数,纯虚函数的定义格式为virtual<函数类型><函数名>((参数表>)=0”,因此第1处的语句应为“virtualvoidfunc()=0;”。func函数没有参数表。编译程序后发现第2处的语句有错误,cout流中的数据是用流插入运算符“<<”顺序加入的,因此“<”不正确,应改成“cout<<"0K"<

  二.综合应用题

  使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的.定义补充完整。

  (1)完成TC的构造函数,请改正注释1后的错误。

  (2)完成func函数定义,请改正注释2后的错误。

  (3)初始化CmyClass的成员变量Num3为4,请改正注释3后的错误。

  (4)完成func函数,请改正注释4后的错误。

  输出的结果为

  Num1=12

  Num2=18

  Num3=16

  Num1=4

  Num2=2

  Num3=19

  注意:除在指定位置添加语句之外,不要改动程序中的其他内容。