2011年9月计算机等级考试二级C++模拟试题1及答案

开发 前端
这是2011年9月计算机等级考试二级C++模拟试题1及答案,附带专家解析。供各位考生朋友在考试之前参考。

51CTO编辑向您推荐:《2011年9月全国计算机等级考试试题及答案》及相关模拟题。一、选择题(每题2分,共70分)。

 

下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

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

A.算法程序的长度

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

C.算法程序所占的存储空间

D.执行过程中所需要的存储空间

【答案】D

2.用链表表不线性表的优点是( )。

A.便于随机存取

B.花费的存储空间较顺序存储少

C.便于插入和删除操作

D.数据元素的物理顺序与逻辑顺序相同

【答案】C

3.下列关于栈的描述正确的是( )。

A.在栈中只能插入元素而不能删除元素

B.在栈中只能删除元素而不能插入元素

C.栈是特殊的线性表,只能在一端插入或删除元素

D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素

【答案】D

4.下列叙述中正确的是( )。

A.一个逻辑数据结构只能有一种存储结构

B.数据的逻辑结构属于线性结构,存储结构属于非线性结构

C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率

D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率

【答案】D

5.下列对列的叙述正确的是( )。

A.队列属于非线性表

B.队列按”先进后出”的原则组织数据

C.队列在队尾删除数据

D.队列按“先进先出”原则组织数据

【答案】D

6.对下列二叉树进行前序遍历的结果为( )。

A.DYBEAFCZX

B.YDEBFZXCA

C.ABDYECFXZ

D.ABCDEFXYZ

【答案】C

7.在面向对象方法中,不属于“对象”基本特点的是( )。

A.一致性

B.分类性

C.多态性

D.标识唯一性

【答案】A

【解析】对象是面向对象方法中最基本的概念,它的基本特点有:标识唯一性、分类性、多态性、封装性和模块独立性。故本题答案为A。

8.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。

A.一对一

B.一对多

C.多对一

D.多对多

【答案】B

【解析】一个实体宿舍可以对应多个学生,而一个学生只能对应一个宿舍,所以宿舍和学生之间是一对多关系。

9.将E-R图转换到关系模式时,实体与联系都可以表示成( )。

A.属性

B.关系

C.键

D.域

【答案】B

10.SQL语言又称为( )。

A.结构化定义语言

B.结构化控制语言

C.结构化查询语言

D.结构化操纵语言

【答案】C

11.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是( )。

A.增加了一些新的运算符

B.允许函数重载,并允许设置缺省参数

C.规定函数说明符必须用原型

D.引进了类和对象的概念

【答案】D

12.设有定义int a=1;float f=1.2;char c=’a';,则下列表示错误的是( )。

A.++a;

B.f--;

C.C++;

D.8++;

【答案】D

13.下列程序的运行结果为( )。

  1. #include   
  2.  void main()   
  3.  {   
  4.  int a=2:   
  5.  int b=a+1;   
  6.  cout<<   
  7.  }  

A.0.66667           B.0

C.0.7                  D.0.66666666…

【答案】B

14.下列关于运算符重载的叙述中,正确的是( )。

A.通过运算符重载,可以定义新的运算符

B.有的运算符只能作为成员函数重载

C.若重载运算符+,则相应的运算符函数名是+

D.重载一个二元运算符时,必须声明两个形参

【答案】B

15.下列关于模板的叙述中,错误的是( )。

A.调用模板函数时,在一定条件下可以省略模板实参

B.可以用int、double这样的类型修饰符来声明模板参数

C.模板声明中的关键字class都可以用关键字typename替代

D.模板的形参表中可以有多个参数

【答案】D

16.要利用C++流进行文件操作,必须在程序中包含的头文件是( )。

A.iostream

B.fstream

C.strstream

D.iomanip

【答案】B

17.下列描述中,不属于面向对象思想主要特征的是( )。

A.封装性

B.跨平台性

C.继承性

D.多态性

【答案】B

18.有如下程序段:

Tnt i=4;int j=l;

int main(){

int i=8,j=i;

cout<}

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

A.44

B.41

C.88

D.81

【答案】C

19.下面的哪个选项不能作为函数的返回类型? ( )。

A.void

B.int

C.new

D.long

【答案】C

20.函数fun的返回值是( )。

  1. fun(char*a,char*B.  
  2. {  
  3. int num=0,n=0;  
  4. while(*(a+num)!=‘\0’)num++;  
  5. while(b[n]){*(a+num)=b[n];num++;n++;}  
  6. return num;  
  7. }  

A.字符串a的长度

B.字符串b的长度

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

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

【答案】D

21.有如下函数定义:

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

【答案】C

22.有如下程序

  1. #include  
  2. using namespace std;  
  3. class Sample{  
  4. public:  
  5. Sample(){}  
  6. ~Sample(){cout<<‘*’;}  
  7. };  
  8. int main(){  
  9. Sample temp[2], *pTemp[2];  
  10. return 0;  
  11. }  

执行这个程序输出星号(*)的个数为( )。

A.1

B.2

C.3

D.4

【答案】C

#p#

23.下列选项中,与实现运行时多态性无关的是( )。

A.重载函数

B.虚函数

C.指针

D.引用

【答案】A

24.对类的构造函数和析构函数描述正确的是( )。

A.构造函数可以重载,析构函数不能重载

B.构造函数不能重载,析构函数可以重载

C.构造函数可以重载,析构函数也可以重载

D.构造函数不能重载,析构函数也不能重载

【答案】A

25.下面程序的运行结果为( )。

  1. #include    
  2.  class A    
  3.  {    
  4.  int num;    
  5.  public:    
  6.  A(int i){num=i;}    
  7.  A(A &A.{num=a. num++;}    
  8.  void print(){cout<    
  9.  };    
  10.  void main()    

A a1(),b(A);

a. print();

b.print();

A.11

B.12

C.21

D.22

【答案】C

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

A.一元成员运算符

B.二元成员运算符

C.一元友元运算符

D.选项B和选项C都可能

【答案】D

27.下列关于模板的说法正确的是( )。

A.模板的实参在任何时候都可以省略

B.类模板与模板类所指的是同一概念

C.类模板的参数必须是虚拟类型的

D.类模板中的成员函数全部都是模板函数

【答案】D

28.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是( )。

A.派生类的对象可以赋给基类的对象

B.派生类的对象可以初始化基类的引用

C.派生类的对象可以直接访问基类中的成员

D.派生类的对象的地址可以赋给指向基类的指针

【答案】C

29.建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、

c(派生类的构造函数)这3种构造函数的调用顺序为( )。

A.abc

B.acb

C.cab

D.cba

【答案】A

30.下面关于虚函数的描述,错误的是( )。

A.在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数

B.基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数

C.虚函数可以是另一个类的友元函数,但不能是静态成员函数

D.基类中说明的纯虚函数在其任何派生类中都必须实现

【答案】B

31.定义派生类时,若不使用关键字显示地规定采用何种继承方式,则默认方式为( )。

A.私有继承

B.非私有继承

C.保护继承

D.公有继承

【答案】A

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

A.操作数乘以2

B.操作数除以2

C.操作数乘以4

D.操作数除以4

【答案】B

33.有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把节点b连接到节点a 之后的语句是( )。

struct node

{ char data;

struct node*next;

}a,b,*p=&a,*q=&b;

A.a. next=q;

B.p. next=&b;

C.p->next=&b;

D.(*p).next=q;

【答案】B

34.假定下列语句都是程序运行后***执行的输出语句,其中输出结果与另外三条语句不同的语句是( )。

A.cout

35.有如下程序:

  1. #include    
  2. using namespace std;    
  3. class ONE{    
  4. int c;    
  5. public:    
  6. ONE():c(0){cout<<1;}    
  7. ONE(int n):c(n){cout<<2;}    
  8. };    
  9. class TWO{    
  10. ONE onel;    
  11. ONE one2;    
  12. public:    
  13. TWO(int m):one2(m){cout<<3;}    
  14. };    
  15. int main(){    
  16. TWO t4()    
  17. return 0    
  18. }   

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

A.3

B.23

C.123

D.213

【答案】C

二、填空题(每空2分,共30分)

请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。

注意:以命令关键字填空的必须拼写完整。

1.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性***的阶段是 【1】 。

【答案】数据库系统

2.软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于 【2】 测试。

【答案】黑盒

3.符合结构化原则的三种基本控制结构是:选择结构、循环结构和 【3】 。

【答案】顺序结构

4.一棵二叉树第六层(根结点为***层)的结点数最多为 【4】 个。

【答案】32

5.数据结构分为逻辑结构和存储结构,循环队列属于 【5】 结构。

【答案】存储

6.有如下程序段:

int x=1,Y=2,z=3;

x=x^z;

y=y^z;

z=x^y;

cout<执行这个程序段的输出是 【6】 。

【答案】100

7.若要访问指针变量p所指向的数据,应使用表达式 【7】 。

【答案】*P

8.已知一个函数的原型是:

int fn(double x);

若要以5.27为实参调用该函数,应使用表达式 【8】 。

【答案】fn(5.27)

9.通过使用new和delete两个运算符进行的分配为 【9】 存储分配。

【答案】【9】动态

10.如果类B继承了类A,则称类A为类B的基类,类B称为类A的 【10】 。

【答案】【10】派生类

11.将x+y中的+运算符用友元函数重载应写为 【11】 。

【答案】【11】 operator+(x,y)

12.请将下列类定义补充完整。

  1. class Base { publicvoid fun( ){ cout<<"Base::fun"<    
  2. class Derived : public Base {    
  3. public:    
  4. void fun( ) {   

【12】 //显式调用基类的fun函数

cout<<"Derived::fun"<}};

【答案】【12】Base::fun()

13.多数运算符既能作为类的成员函数重载,也能作为类的非成员函数重载,但[ ]运算符只能作为类的 【13】 函数重载。

【答案】【13】成员

14.表达式operator+(x,y)还可以表示为 【14】 。

【答案】【14】x+y

15.C++语言中的多态性分为编译时的多态性和 【15】 时的多态性。

【答案】运行

责任编辑:陈贻新 来源: 考试大-计算机二级考试
相关推荐

2011-09-05 16:38:07

计算机等级考试

2011-09-05 14:37:38

计算机等级考试

2011-09-01 17:20:28

计算机等级

2011-09-17 20:08:50

计算机等级考试

2011-09-17 20:12:24

计算机等级考试

2011-09-17 19:49:05

计算机等级考试

2011-09-17 19:31:01

计算机等级考试

2011-09-17 19:34:08

计算机等级考试

2011-09-17 19:40:57

计算机等级考试

2011-09-17 19:56:00

计算机等级考试

2011-04-11 16:42:25

C++等级考试

2011-03-26 22:16:31

等考试题C++笔试试题

2011-03-26 22:39:43

等考试题C语言试题

2010-12-03 11:38:29

计算机等级考试

2011-09-17 20:19:04

计算机等级考试

2011-03-26 22:06:07

Java笔试试题

2011-03-26 22:52:38

等考试题VB笔试试题

2011-09-17 19:44:59

计算机等级考试

2010-12-03 11:44:06

计算机等级考试

2009-09-19 11:47:03

2009年9月计算机等2009年9月等级考试
点赞
收藏

51CTO技术栈公众号