2018年9月计算机二级考试C++考前基础习题二

  出国留学网为考生们整理了“2018年9月计算机二级考试C++考前基础习题”,希望有所帮助,想了解更多考试资讯,请关注小编的及时更新哦。

  2018年9月计算机二级考试C++考前基础习题二

  1.下列控制格式输入输出的操作符中,能够设置浮点数精度的是(  )。

  A.setprecision

  B.setw

  C.setfill

  D.showpoint

  2.下列程序段中包含4个函数,其中具有隐含this指针的是(  )。

  intfunl(  );

  classTest{

  public:

  intfun2(  );

  friendintfun3(  );

  staticintfun4(  );

  };

  A.funl

  B.fun2

  C.fun3

  D.fun4

  3.有如下程序:

  #include

  usingnamespacestd;

  classTest(

  public:

  Test(  ){}

  Test(constTest8Lt){cout<<1;}

  };

  Testfun(Test&u){Testt=U;returnt;}

  intmain(  ){Testx,y;x=fun(y);return0;}

  运行这个程序的输出结果是(  )。

  A.无输出

  B.1

  C.1l

  D.111

  4.有如下程序:

  #include

  usingnamespacestd;

  classA{

  public:

  A(inti=O):rl(i){}

  voidprint(  ){cout<<’E’

  voidprint(intx){cout<<’P’<-’;}

  private:

  intr1;

  };

  intmain(  ){

  Aal:

  constAa2(4);

  a1.print(2);

  a2.print(  );

  return0;

  }

  运行时的输出结果是(  )。

  A.P8一E4

  B.P8一C16一

  C.P0一E4一

  D.P0一C16—

  5.下列代码段声明了3个类:

  classPerson{);

  classStudent:publicPerson{};

  classUndergraduate:Student{);

  下列关于这些类之间关系的描述中,错误的是(  )。

  A.类Person是类Undergraduate的基类

  B.类Undergraduate从类Student公有继承

  C.类Student是类Person的派生类

  D.类Undergraduate是类Person的派生类

  6.有如下程序:

  #include

  Usingnamespacestd;

  classBase{

  public:

  Base(intx=O):valB(x){cout<~Base(  ){cout

  intvalB:

  };

  classDerived:publicBase{

  public:

  Derived(intX=0,inty=0):Base(x),valD(y)(cout<~Derived(  ){cout

  intvalD;

  };

  intmain(  ){

  Derivedobj12(2,3);

  return0;

  }

  运行时的输出结果是(  )。

  A.2332

  B.2323

  C.3232

  D.3223

  7.下面是类Shape的定义:

  classShape{

  public:

  virtualvoidDraw(  )=0;

  }

  下列关于Shape类的描述中,正确的是(  )。

  A.类Shape是虚基类

  B.类Shape是抽象类

  C.类Shape中的Draw函数声明有误

  D.语句“ShapeS;”能够建立Shape的一个对象S

  8.将运算符“+”重载为非成员函数,下列原型声明中,错误的是(  )。

  A.MyClockoperator+(MyClock,long);

  B.MyClockoperator+(MyClock,MyCloek);

  C.MyCloekoperator+(long,long);

  D.MyClockoperator+(long,MyCloek):

  9.打开文件时可单独或组合使用下列文件打开模式:

  ①ios_base::aop

  ②ios_base::binary

  ③ios_base::

  ④ios_base::out

  若要以二进制读方式打开一个文件,需使用的文件打开模式为(  )。

  A.①③

  B.①④

  C.②③

  D.②④

  10.有如下程序:

  #include

  usingnamespacestd;

  classB{

  public:

  B(intxx):x(xx){++count;x+=10;}

  virtualvoidshow(  )const

  {cout

  staticintcount;

  private:

  intx;

  };

  classD:publicB{

  public:

  D(intxx,intyy):B(XX),y(yy){++count;y+=

  100;)

  virtualvoidshow(  )const

  {cout

  inty;

  };

  intB::count==0;

  intmain(  ){

  B*ptr=newD(10,20);

  ptr->show(  );

  deleteptr;

  return0;

  }

  运行时的输出结果是(  )。

  A.1_120

  B.2_120

  C.1_20

  D.2_20

  参考答案:

  1.A。【解析】setprecision(int)是设置浮点数的精度,setw(intn)是设置输入输出宽度,setfill(charc)设置填充字符,showpoint即使小数部分为0,也输出以及其后的无效数据0。

  2.B。【解析】this指针是成员函数所属对象的指针,是指向类对象的地址,是一个隐含的指针,隐含于每个类的非静态成员函数中。funl是外部函数,fun3是友元函数,fun4是静态成员函数,故选B。

  3.C。【解析】本题调用了fun函数。

  4.D。

  5.B。【解析】类Undergraduate从类Student私有继承,继承方式缺省则默认是private。

  6.A。【解析】本题使用析构函数。

  7.B。【解析】抽象类是类中至少有一个纯虚函数,抽象类是用来被继承的,即是用来生成派生类,它本身不能生成实例。

  8.C。【解析】非成员函数一般都是友元函数,相比成员函数第一个操作数是对象本身以thiS指针的形式隐含在参数列表中,非成员函数调用必须显式的列出参数;选项C中没有MyClock类型,故选C。

  9.D。【解析】ios_base::binary是作为二进制文件打开,ios_base::out是为输出而打开,故选D。

  10.B。【解析】本题考查了类的继承。继承有3种方式,public公有、private私有和protected保护,本题都涉及了。本题中类D公有继承类B。在类B中又定义了虚函数,并且有保护类静态类型count及私有变量x。主函数中调用类D,类D又继承了类B,经过系统及调用,本题最终结果为2_120。

  推荐阅读:

  2018年9月计算机二级考试C++考前基础习题一

  2018年计算机二级考试大纲汇总

  2018年计算机二级考试WEB考点汇总

  2018年计算机二级考试VB习题答案汇总

  2018年计算机二级考试基础知识考点汇总

  2018年计算机二级考试MySQL试题及答案汇总

  出国留学网计算机等级考试 栏目推荐

  2018年计算机等级考试计划

  2018年计算机等级考试时间

  计算机等级考试动态

  计算机等级考试报名时间

  计算机等级考试时间

  计算机等级考试准考证打印时间

  计算机等级考试成绩查询时间

  计算机等级考试试题及答案

分享

热门关注

计算机二级考试时间多长

关于计算机二级

计算机二级考试时间一年几次呢

关于计算机二级

计算机二级考试时间分配

关于计算机二级

计算机二级考试内容考些什么

考试内容

计算机二级什么时候出成绩呢

计算机成绩

计算机二级考试c语言难不难

计算机二级考试

计算机二级公共基础知识和计算机基础内容有哪些

计算机二级公共基础知识

计算机二级考试难不难

计算机二级考试

计算机二级公共基础知识考试内容

计算机公共基础知识考试

计算机二级考试内容难不难?有关计算机二级的考试内容

计算机二级考试内容难不难