就业数据资源平台
当前位置:首页 > C++语言程序设计
2010年全国计算机等级考试二级C++模拟试题及答案(9)

  33.有以下程序
  #include
  void main()
  { int a=5,b=0,c=0;
  if(a=b+c)cout<<″***″<
  else cout<<″$$$″<
  下列选项叙述正确的是( )
  A.有语法错不能通过编译 B.可以通过编译但不能通过连接
  C.输出*** D.输出$$$
  【参考答案】D
  34.以下程序中循环体总的执行次数是( )
  int i,j;
  for(i=6;i>1;i--)
  for(j=0;j
  {……}
  A.20 B.261 C.15 D.25
  【参考答案】A
  35.下列程序的输出结果是( )
  #include
  void main()
  { int a[3],i,j,k=2;
  for(i=0;i<3;i++)a[i]=i;
  for(i=0;i
  for(j=0;j
  a[j]=a[i];
  cout<
  A.2 B.3 C.1 D.0
  【参考答案】A


  二、填空题
  1.将代数式
  ______________ 换成程序设计中的表达式为 【1】。
  ╱ X*X+Y*Y
  Z= ╱ ----------
  ╲╱ a+b
  【参考答案】
  【1】SORT(x^2+y^2)/(a+b)
  2.【2】是数据库设计的核心。
  【参考答案】
  【2】数据模型
  3.测试的目的是暴露错误,评价程序的可靠性;而【3】的目的是发现错误的位置并改正错误。
  【参考答案】
  【3】调试
  4.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为【4】。
  【参考答案】
  【4】消息
  5.常用的黑箱测试有等价分类法、【5】、因果图法和错误推测法4种。
  【参考答案】
  【5】边值分析法
  6.【6】是C++语言程序的入口。
  【参考答案】
  【6】main()函数
  7.C++语言的基本控制结构为顺序结构、选择结构和【7】。
  【参考答案】
  【7】循环结构
  8.函数重载要求重载的函数必须有和原函数一样的【8】。
  【参考答案】
  【8】函数名
  9.设置虚基类的目的是【9】,通过【10】表示虚基类。
  【参考答案】
  【9】解决二义性问题
  【10】用关键字virtual
  10. 语句cout<<′\n′还可表示为【11】。
  【参考答案】
  【11】cout<
  11.若已知a=10,b=20,则表达式!a
  【参考答案】
  【12】1
  12.友元类的所有成员函数都是另一个类的【13】。
  【参考答案】
  【13】友元函数
  13.表达式x.operator++()还可写成【14】。
  【参考答案】
  【14】++x
  14.若要在C盘根目录下作为二进制文件打开文件test.dat,则应该用的语句是:
  【参考答案】
  【15】ifstream fin(″C:\test.dat″,ios_binary);或ifstream fin;fin.open(c:\test.dat″,ios_bin


  上机部分
  一、改错题
  使用VC6打开考生文件夹下的工程kt2_1,此工程包含一个源程序文件kt2_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:
  Vehiclemessage
  Carmessage
  Vehiclemessage
  源程序文件kt2_1.cpp清单如下:
  #include
  classvehicle
  {
  intwheels;
  floatweight;
  public:
  voidmessage(void){cout<<"Vehiclemessage\n";}
  };
  classcar:publicvehicle
  {
  intpassenger_load;
  public:
  voidmessage(void){cout>>"Carmessage\n";}
  };
  classtruck:publicvehicle
  {
  intpassenger_load;
  floatpayload;
  public:
  intpassengers(void){returnpassenger_load;}
  };
  voidmain()
  {
  vehicle*unicycle;
  unicycle=newvehicle;
  unicycle.message();
  deleteunicycle;
  unicycle=newcar;
  unicycle->message();
  deleteunicycle;
  unicycle=newtruck;
  unicycle->message();
  deleteunicycle;
  }
  【参考答案】
  (1)将void message(void){ cout<<"Vehicle message\n";}
  改为:virtual void message(void){ cout<<"Vehicle message\n";}
  (2)将void message (void){cout>>"Car message\n";}
  改为:void message (void){cout<<"Car message\n";}
  (3)将unicycle.message();
  改为:unicycle->message();
  【试题解析】
  (1)主要考查对虚函数使用规则的掌握,要实现对函数message的动态联编应该使用虚函数,否则产生的是静态联编,调用的函数输出结果就与要求不符;
  (2)主要考查对流输出操作的掌握,该处错误的使用了流输入操作;
  (3)主要考查对象和对象指针的概念,对象指针使用"->"调用成员函数,而对象使用"."调用成员函数。

就业数据资源平台