试题 百分网手机站

计算机二级《C++》上机强化练习题

时间:2020-11-01 20:00:43 试题 我要投稿

2016计算机二级《C++》上机强化练习题

  2016年全国计算机等级考试时间为3月26日-29日,为了帮助大家顺利通过计算机二级考试,下面百分网小编为大家带来2016计算机二级《C++》上机强化练习题,供大家参考学习,预祝考生备考成功!

  一、选择题(每小题1分,共40分)

  1、有如下程序:

  #inClude using namespaCe std; Class B{

  publiC:

  virtual void show(){Cout<<”B”;} };

  Class D:publiC B{ . publiC:

  void show(){Cout<<”D”;} };

  void funl(B * ptr){ptr一>show();} void fUN2(B&ref){ref.show();}

  voidfhIl3(B B.{b.show();} int main()

  {

  B b,* P=new D; D d;

  funl(P); fun2(B.; fun3(D);

  delete P; return 0; }

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

  A.BBB

  B.BBD

  C.DBB

  D.DBD

  2、下面描述中错误的是( )。

  A.系统总体结构图支持软件系统的详细设计

  B.软件设计是将软件需求转换为软件表示的过程

  C.数据结构与数据库设计是软件设计的任务之一

  D.PAD图是软件详细设计的表示工具

  3、已知函数FA调用函数FB,若要把这两个函数定义在同一个文件中,则( )。

  A.FA必须定义在FB之前

  B.FB必须定义在FA之前

  C.若FA定义在FB之后,则FA的原型必须出现在FB的定义之前

  D.若FB定义在FA之后,则FB的原型必须出现在FA的定义之前

  4、有如下函数定义:

  void funC(int a,int&B. {a++;b++;}

  若执行代码段:

  int x=0,Y = 1; funC(X,Y);

  则变量x和y的值分别是(  )。

  A.0和1

  B.1和1

  C.0和2

  D.1和2

  5、下面程序的输出结果是( )。

  #include

  class example

  {

  int a;

  public:

  example(int B.{a=b++;}

  void print(){a=a+1;eout< void print()const{cout< };

  void main()

  {

  example x(3);

  const example Y(2);

  A print();

  B print();

  }

  A.2 2

  B.4 3

  C.4 2

  D.3 2

  6、下列有关类继承的叙述中,错误的是( )。

  A.继承可以实现软件复用

  B.虚基类可以解决由多继承产生的二义性问题

  C.派生类构造函数要负责调用基类的构造函数

  D.派生类没有继承基类的私有成员

  7、下面程序的运行结果是( )。

  #include

  int fun(int a[],int n) {

  int resuh=1;

  for(inl i=1;i<11;1‘++)

  result=result * a[i];

  retum result;

  } void main()

  int a[3]={3,4,5}:

  cout< }

  A.12

  B.15

  C.20

  D.60

  8、下列叙述中正确的是( )。

  A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化

  B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化

  C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化

  D.以上说法都不正确

  9、在满足实体完整性约束的条件下( )。

  A.一个关系中应该有一个或多个候选关键字

  B.一个关系中只能有一个候选关键字

  C.一个关系中必须有多个候选关键字

  D.一个关系中可以没有候选关键字

  10、下面关于c+十语言变量的叙述错误的是( )。

  A.c++语言中变量分为aut0、static、extem和register4种存储类型

  B.自动变量和外部变量的作用域为整个程序

  C.内部静态变量的作用域是定义它的函数

  D.外部静态变量的作用域是定义它的文件

  11、 下面程序的运行结果是( )。

  #include void main()

  {

  int num=1:

  int&ref=num; ref=ref+2:

  cout< }

  A.13

  B.16

  C.36

  D.33

  12、 有以下程序:

  #include float tun(int X,int Y) {return(X+Y);} void main()

  {int a=2,b=5,c=8;

  cout< 程序运行后的输出结果是( )。

  A.编译出错

  B.9

  C.21

  D.9.0

  13、 下列运算符中,不能被重载的是(  )。

  A.&&

  B.!=

  C..

  D.++

  14、 算法的空间复杂度是指( )。

  A.算法在执行过程中所需要的计算机存储空间

  B.算法所处理的数据量

  C.算法程序中的语句或指令条数

  D.算法在执行过程中所需要的临时工作单元数

  15、 c++语言类体系中,不能被派生类继承的有( )。

  A.转换函数

  B.构造函数

  C.虚函数

  D.静态成员函数

  16、 对C++编译器区分重载函数无任何意义的信息是( )。

  A.参数类型

  B.参数个数

  C.返回值类型

  D.常成员函数关键字Const

  17、 对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是( )。

  A.公有类型

  B.私有类型

  C.保护类型

  D.友元类型

  18、 下列程序的运行结果为(  )。

  #include int i=0;

  class A{ public: A(){i++;}

  };

  void main() {

  A a,b[3],*C; C=b;

  cout< }

  A.2

  B.3

  C.4

  D.5

  19、 以下关键字不能用来声明类的访问权限的是(  )。

  A.publiC

  B.statiC

  C..proteCted

  D.private

  20、 设有定义int a=1;float f=1.2;char C='a';,则下列表示错误的是( )。

  A.++a;

  B.f一一;

  C.c++;

  D.8++;