计算机等级考试二级C++模拟题及解析2(笔试)

日期:12-29| http://www.59wj.com |二级C++模拟试题|人气:425

计算机等级考试二级C++模拟题及解析2(笔试)

  计算机等级考试二级C++模拟题及解析2笔试部分

  一、选择题

  1.栈和队列的共同特点是( )

  A.都是先进先出

  B.都是先进后出

  C.只允许在端点处插入和删除元素

  D.没有共同点

  【参考答案】 C

  2.链表不具有的特点是( )

  A.不必事先估计存储空间 B.可随机访问任一元素

  C.插入删除不需要移动元素 D.所需空间与线性表长度成正比

  【参考答案】 B

  3.为了提高测试的效率,应该( )

  A.随机选取测试数据 B.取一切可能的输入数据作为测试数据

  C.在完成编码以后制定软件的测试计划 D.集中对付那些错误群集的程序

  【参考答案】 D

  4.软件生命周期中所花费用最多的阶段是( )

  A.详细设计 B.软件编码 C.软件测试 D.软件维护

  【参考答案】 D

  5.下列有关数据库的描述,正确的是( )

  A.数据库是一个DBF文件

  B.数据库是一个关系

  C.数据库是一个结构化的数据集合

  D.数据库是一组文件

  【参考答案】 C

  6.算法的空间复杂度是指( )

  A.算法程序的长度 B.算法程序中的指令条数

  C.算法程序所占的存储空间 D.执行过程中所需要的存储空间

  【参考答案】 D

  7.数据结构中,与所使用的计算机无关的是数据的( )

  A.存储结构 B.物理结构 C.逻辑结构 D.物理和存储结构

  【参考答案】 C

  8.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指( )

  A.模块间的关系 B.系统结构部件转换成软件的过程描述

  C.软件层次结构 D.软件开发过程

  【参考答案】 B

  9.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )

  A.控制流 B.加工 C.数据存储 D.源和潭

  【参考答案】 A

  10.在数据库设计中,将E-R图转换成关系数据模型的过程属于( )

  A.需求分析阶段 B.逻辑设计阶段

  C.概念设计阶段 D.物理设计阶段

  【参考答案】 B

  .
       
        www.59wj.com

  11.以下C++语言中用于单行注释的是( )

  A.// B./* C.*/ D.|

  【参考答案】 A

  12.若变量已正确定义并赋值,以下符合C++语言语法的表达式是( )

  A.a:=b+1 B.a=b=c+2 C.int 18.5%3 D.a=a+7=c+b

  【参考答案】 B

  13.有以下程序

  #include″iostream.h″

  void main()

  {int i=1,j=1,k=2;

  if((j++||k++)&&i++)

  cout<

  cout<

  执行后输出结果是( )

  A.1,1,2 B.2,2,1 C.2,2,2 D.2,2,3

  【参考答案】 C

  14.若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是( )

  A.a,point,*&a

  B.&*a,&a,*point

  C.*&point,*point,&a

  D.&a,&*point,point

  【参考答案】 D

  15.若运行时给变量x输入12,则以下程序的运行结果是( )

  #include

  void main()

  {

  int x,y;

  cin>>x;

  y=x>12?x+10:x-12;

  cout<

  cout<

  }

  A.0 B.22 C.12 D.10

  【参考答案】 A

  16.以下关于C++类的说法中正确的是( )

  A.C++语言的默认访问权限是private

  B.C++语言中的类定义,用户一定要自己定义一个构造函数用于实例化类

  C.C++语言中的成员函数的实现部分一定要写在类定义外

  D.C++语言中的类不能够嵌套定义

  【参考答案】 A

  .
       
        www.59wj.com

  17.派生类对象对其基类中的什么成员是可访问的?( )

  A.公有继承的私有成员 B.私有继承的公有成员

  C.私有继承的保护成员 D.保护继承的保护成员

  【参考答案】 D

  18.下列关于运算符重载不正确的是( )

  A.运算符重载不能改变运算符的操作数个数

  B.运算符重载不能改变运算符的优先级

  C.运算符重载不能改变运算符的结合性

  D.运算符重载能改变对预定义类型数据的操作方式

  【参考答案】 D

  19.对于重载的运算符>>,它是一个( )

  A.用于输入的友元函数 B.用于输入的成员函数

  C.用于输出的友元函数 D.用于输出的成员函数

  【参考答案】 A

  20.若调用一个函数,且此函数中没有return语句,则正确的说法是该函数( )

  A.没有返回值

  B.返回若干个系统默认值

  C.有返回值,但返回一个不确定的值

  D.能返回一个用户所希望的函数值

  【参考答案】 C

  21.以下能对二维数组a进行正确初始化的语句是( )

  A.int a[2][]={{1,0,1},{5,2,3}}; B.int a[][3]={{1,2,3},{4,5,6}};

  C.int a[2][4]={{1,2,3},{4,5},{6}}; D.int a[][3]={{1,0,1},{},{1,1}};

  【参考答案】 B

  22.有如下程序

  #include

  void main()

  {float x=2.0,y;

  if(x<0.0) y=0.0;

  else if(x<10.0) y=1.0/x;

  else y=1.0;

  cout<

  该程序的输出结果是( )

  A.0 B.0.25 C.0.5 D.1.0

  【参考答案】 C

  .
       
        www.59wj.com

  23.C++中,表示一条语句结束的标号是( )

  A.# B.; C.// D.}

  【参考答案】 B

  24.已知有定义

  const int D=5;

  int i=1;

  double f=0.32;

  char c=15;

  则下列选项错误的是( )

  A.++i; B.D--; C.c++; D.--f;

  【参考答案】 B

  25.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在划线处应填入的选项是( )

  #include

  void main()

  {int i=0,j,k;

  do{i++;k=316-13*i;} while(___);

  j=k/11;

  cout<<″316=13*″<

  A.k/11 B.k%11 C.k/11==0 D.k%11=0

  【参考答案】 B

  26.若已定义:

  int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;

  其中o≤i≤9,则对a数组不正确的引用是( )

  A.a[p-a] B.*(&a[i])

  C.p[i] D.a[10]

  【参考答案】 D

  27.函数fun的返回值是( )

  fun(char *a,char *b)

  {int num=0,n=0;

  while(*(a+num)!=′\0′)num++;

  while(b[n]){*(a+num)=b[n];num++;n++;}

  return num;}

  A.字符串a的长度 B.字符串b的长度

  C.字符串a和b的长度之差 D.字符串a和b的长度之和

  【参考答案】 D

  28.下面程序的结果为( )

  #include

  int c;

  class A{

  private:

  int a;

  static int b;

  public:

  A() {a=0;c=0;}

  void seta() {a++;}

  void setb() {b++;}

  void setc() {c++;}

  void display() {cout<

  int A::b=0;

  void main()

  {A a1,a2;

  a1.seta();

  a1.setb();

  a1.setc();

  a2.seta();

  a2.setb();

  a2.setc();

  a2.display();}

  A.1 2 1 B.1 2 2 C.1 1 2 D.2 2 2

  【参考答案】 B

  int a;

  static int b;

  public:

  A() {a=0;c=0;}

  void seta() {a++;}

  void setb() {b++;}

  void setc() {c++;}

  void display() {cout<

  int A::b=0;

  void main()

  {A a1,a2;

  a1.seta();

  a1.setb();

  a1.setc();

  a2.seta();

  a2.setb();

  a2.setc();

  a2.display();}

  A.1 2 1 B.1 2 2 C.1 1 2 D.2 2 2

  【参考答案】 B

  .
       
        www.59wj.com

  29.下列关于构造函数说法不正确的是( )

  A.构造函数必须与类同名

  B.构造函数可以省略不写

  C.构造函数必须有返回值

  D.在构造函数中可以对类中的成员进行初始化

  【参考答案】 C

  30.在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是( )

  A.一元成员运算符 B.二元成员运算符

  C.一元友元运算符 D.选项B和选项C都可能

  【参考答案】 D

  31.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是( )

  A.showbase()和eof() B.showpoint()和eof()

  C.showpoint()和bad() D.showpoint()和good()

  【参考答案】 B

  32.下列程序中画线处应填入的语句是( )

  class Base

  {public:

  void fun() {cout<<″Base of fun″<

  class Derived:public Base

  33.在位运算中,操作数每右移一位,其结果相当于( )

  A.操作数乘以2 B.操作数除以2 C.操作数乘以4 D.操作数除以4

  【参考答案】 B

  34.一个类的友元函数能够访问该类的( )

  A.私有成员 B.保护成员 C.公有成员 D.所有成员

  【参考答案】 D

  35.下面程序的输出结果是( )

  #include

  #include

  void main()

  {

  char p1[10],p2[10];

  strcpy(p1,″abc″);

  strcpy(p2,″ABC″);

  char str[50]″xyz″;

  strcpy(str+2,strcat(p1,p2));

  cout<

  }

  A.xyzabcABC B.zabcABC C.xyabcABC D.yzabcABC

  【参考答案】 C

  .
       
        www.59wj.com

  二、填空题

  1.算法的基本特征是可行性、确定性、【1】和拥有足够的情报。

  【参考答案】

  【1】有穷性

  2.在面向对象的程序设计中,类描述的是具有相似性质的一组【2】。

  【参考答案】

  【2】对象

  3.数据库管理系统常见的数据模型有层次模型、网状模型和【3】3种。

  【参考答案】

  【3】关系模型

  4.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的【4】。

  【参考答案】

  【4】可重用性

  5.关系操作的特点是【5】操作。

  【参考答案】

  【5】集合

  6.C++语言中关键字运算符有new,delete和【6】。

  【参考答案】

  【6】sizeof

  7.以下程序的输出结果是【7】。

  #include

  class object

  {private:

  int val;

  public:

  object();

  object(int i);

  ~object();};

  object::object()

  {val=0;

  cout<<″Default constructor for object″<

  object::object(int i)

  {val i;

  cout<<″Constructor for object″<

  object::~object()

  {cout<<″Destructor for object″<

  class container { private:

  object one;

  object two;

  int data;

  public:

  container();

  container(int i,int j,int k);

  ~container();};

  container::container()

  {cata=0;

  cout<<″Default constructor for container″<

  container::container(int i,int j,int k):two(i),one(j)

  {data=k;

  cout<<″Constructor for container″<

  container::~container()

  {cout<<″Destructor for container″<

  void main()

  {container anObj(5,6,10);}

  【参考答案】

  【7】Constructor for object6

  Constructor for object5

  Constructor for container

  Destruct

  .
       
        www.59wj.com

  8.静态成员函数可以直接访问类的【8】成员,不能直接访问类的【9】成员。

  【参考答案】

  【8】静态 【9】非静态

  9.表达式x.operator+(y.operator++(0))还可以写成【10】。

  【参考答案】

  【10】x+y++或x+(y++)

  10.在C++语言的结构化程序设计中,【11】是程序的基本组成单元;在C++语言的面向对象设计框架中,【12】是程序的基本组成单元。

  【参考答案】

  【11】函数 【12】类

  11.C++语言提供的基本控制结构可以分为3种类型:顺序结构、【13】和循环结构。

  【参考答案】

  【13】选择结构

  12.C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【14】方式。

  【参考答案】

  【14】传地址

  13.继承的方式有公有继承、私有继承和【15】3种。

  【参考答案】

  【15】保护继承

  .
       
        www.59wj.com 如果觉得《计算机等级考试二级C++模拟题及解析2(笔试)》二级C++模拟试题,jsj不错,可以推荐给好友哦。
本文Tags: 计算机等级考试 - 模拟试题 - 计算机二级模拟试题 - 二级C++模拟试题,jsj,
在百度中搜索相关文章:计算机等级考试二级C++模拟题及解析2(笔试)
在谷歌中搜索相关文章:计算机等级考试二级C++模拟题及解析2(笔试)
在soso中搜索相关文章:计算机等级考试二级C++模拟题及解析2(笔试)
在搜狗中搜索相关文章:计算机等级考试二级C++模拟题及解析2(笔试)
相关分类导航|
热门推荐|