大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > C++技巧 > 2014年计算机二级考试C++强化通关卷及答案1

2014年计算机二级考试C++强化通关卷及答案1(9)

关键词:计算机二级C++考试真题  阅读(2708) 赞(12)

[摘要]本文是2014年计算机二级考试C++强化通关卷及答案,与大家分享。
第 1 页:选择题
第 5 页:程序改错
第 6 页:综合应用题
第 7 页:参考答案

  二、程序改错题

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

  (2)应改为“p=&obj1;”。

  (3)应改为“p=&obj2;”。

  【解析】如果在基类中不使用这个虚函数,其返回值也是没有意义的,它应该被定义为纯虚函数。所以虚函数fun应该是纯虚函数,也就是声明虚函数时初始化为0的函数。即第2处的“virtualvoidfun()=0;”。第2处的P为指针变量,将对象obj1赋值给P,实际上蹙P指向对象obj1的地址,所以将“p=*obj1;”修改为“P=&obj1;”。第3处的“P=*obj2;”修改为“p=&obj2;”。

  三、简单应用题

  inti,j,k;

  for(i=0;i<4;i++)//百位循环

  {

  for(j=0;j<4;j++)//十位循环

  for(k=0;k<4;k++)//个位循环

  {

  if(i!=j&&j!=k&&k!=i&&N[i]!=0)//

  当三位数不同,并且百位不为0

  {

  cout<  }

  }

  }

  【解析】本题利用3层循环,对3位数字是否相同进行判断。如果3位数不同,并且百位不为0,那么依次输出这3 位数,即由3位数组成的数字。

  四、综合应用题

  (1)将“voidprint(){};”补充完整为“virtualvoidprint(){};”。

  (2)应添加“sex=1;”。

  (3)应添加“sex=0;”。

  (4)应添加“voidfun(People&p)”。

  【解析】第1处要求“基类People完成打印功能,定义其中的打印函数为虚函数”。虚函数是函数的一种,定义虚函数,在函数名前声明virtual就可以了,所以将第1处的“voidprint(){}”语句修改为“virtualvoidprint(){}”。第2处要求“类Boy继承于People,在构造函数中设置性别为l”。基类People中变量sex用来存放性别,Boy继承People,所以Boy中性别的变量可以使用基类中的sex变量,设置性别为1,即“sex=1;”。第3处要求“类Girl继承于People,在构造函数中设置性别为0”。在第3处添加语句“sex=0;”。第4处要求“实现函数fun,用于传递不同的类型,打印出性别”。根据“P.print();”语句知道,fun函数的形参为指针P,由于它调用了基类People中的成员函数print,所以P的基类为People,即添加函数fun的定义为“voidfun(People&p)”。

«上一页1... 56789下一页»


相关评论