练习题综合 下载本文

试卷名称:2011 练习题 试卷说明:练习题综合

命题教师:北京邮电大学世纪学院 计算机科学与技术系

一、单项选择题(总分 45)

1. (分值:0.2 分)下列关于运算符重载的描述中,错误的是( A: ::运算符不能重载

B: 类型转换运算符只能作为成员函数重载

C: 将运算符作为非成员函数重载时必须定义为友元 D: 重载[ ]运算符应完成 R? 下标访问 R? 操作 序号:16 难度:2 考查点:重载

)。

2. (分值:0.2 分)将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是 A: 不合法的运算符 B: 一元运算符 C: 无操作数的运算符 D: 二元运算符

序号:18 难度:1 考查点:重载

3. (分值:0.2 分)下列关于虚基类的描述中,错误的是( A: 使用虚基类可以消除由多继承产生的二义性 B: 构造派生类对象时,虚基类的构造函数只被调用一次 C: 声明 R? class B : virtual public AR? 说明类 B 为虚基类 D: 建立派生类对象时,首先调用虚基类的构造函数 序号:19 难度:2 考查点:多态性与虚函数

)。

4. (分值:0.2 分)Sample 是一个类,执行下面语句后,调用 Sample 类的构造函数的次数 是 Sample a[2], *P = new Sample; A: 0 B: 1 C: 2 D: 3

序号:20 难度:1 考查点:类与对象

5. (分值:0.2 分)下列关于 C++流的描述中,错误的是 A: cout>>'A'表达式可输出字符 A B: eof()函数可以检测是否到达文件尾

C: 对磁盘文件进行流操作时,必须包含头文件 fstream

D: 以 ios_base::out 模式打开的文件不存在时,将自动建立一个新文件 序号:26 难度:1 考查点:输入输出流

6. (分值:0.2 分)下列字符串中可以用作 C++标识符的是 A: 2009var B: goto

C: test-2009 D: _123

序号:32 难度:1 考查点:C++基础知识

7. (分值:0.2 分)有如下类定义: class XX {

int xdata;

public:

XX(int n=0) : xdata(n){} };

class YY : public XX {

int ydata;

public:

YY(int m=0, int n=0) : XX(m), ydata(n){}

};

YY 类的对象包含的数据成员的个数是( )。

A: 1 B: 2 C: 3 D: 4

序号:35 难度:1 考查点:类与对象

8. (分值:0.2 分)下列关于运算符函数的描述中,错误的是( A: 运算符函数的名称总是以 operator 为前缀 B: 运算符函数的参数可以是对象 C: 运算符函数只能定义为类的成员函数

D: 在表达式中使用重载的运算符相当于调用运算符重载函数 序号:36 难度:2 考查点:重载

9. (分值:0.2 分)有如下程序: #include using namespace std; class AA {

int k; protected:

int n;

void setK(int k){ this->k=k; }

public:

void setN(int n){ this->n=n; }

};

class BB: public AA

)。

{ /*类体略*/ }; int main( ) {

BB x; x.n=l; x.setN(2); x.k=3; x.setK(4); return 0;

}

在标注号码的四条语句中正确的是( A: 1 B: 2 C: 3 D: 4

序号:59 难度:1 考查点:类与对象

)。

//2#

//1#

//3#

//4#

10. (分值:0.2 分)已知表达式++a 中的 R? ++R? 是作为成员函数重载的运算符,则与++a 等效的运算符函数调用形式为 A: .operator++(1) B: operator++(a) C: operator++(a,1) D: a.operator++()

序号:61 难度:1 考查点:重载

11. (分值:0.2 分)建立一个类对象时,系统自动调用 A: 析构函数 B: 构造函数 C: 静态函数 D: 友元函数

序号:66 难度:1 考查点:类与对象

12. (分值:0.2 分)通过派生类的对象可直接访问其 A: 公有继承基类的公有成员 B: 公有继承基类的私有成员 C: 私有继承基的公有成员 D: 私有继承基类的私有成员

序号:67 难度:1 考查点:继承与派生

13. (分值:0.2 分)运算符重载时不需要保持的性质是 A: 操作数个数 B: 操作数类型 C: 优先级 D: 结合性

序号:75 难度:1 考查点:重载

14. (分值:0.2 分)下列字符串常量中,错误的表示是( A: \ B: \ C: ′ABC′ D: \

序号:106 难度:1 考查点:C++基础知识

)。

15. (分值:0.2 分)定义变量 int a=6,则 a++的值是__________。 A: 7 B: 6 C: 5 D: 4

序号:108 难度:1 考查点:C++基础知识

16. (分值:0.2 分)下列常量中不能作为 c++常量的是__________。 A: 0382 B: 0xB4 C: .5e-2 D: 123

序号:110 难度:1 考查点:C++基础知识

17. (分值:0.2 分)定义整型变量 x,y,z 并赋初始值 6 的正确语句是__________。 A: int x=y=z=6; B: int x=6,y=6,z=6; C: x=y=z=6; D: int x,y,z=6;

序号:113 难度:1 考查点:C++基础知识

18. (分值:0.2 分)关于 C++和 c 语言的描述中,错误的是__________。 A: C 语言是 C++的一个子集 B: C 语言和 C++是兼容的 C: C++对 C 语言进行了一些改进 D: C 语言和 C++都是面向对象的

序号:116 难度:1 考查点:C++基础知识

19. (分值:0.2 分)以下对派生类叙述不正确的是__________。 A: 一个派生类可以作另一个派生类的基类 B: 一个派生类可以有多个基类

C: 具有继承关系时,基类成员在派生类中的访问权限不变

D: 派生类的构造函数与基类的构造函数有成员初始化参数传递关系 序号:117 难度:1 考查点:继承与派生

20. (分值:0.2 分)一个类的友元函数能够访问该类的__________。 A: 私有成员 B: 保护成员 C: 公有成员 D: 所有成员

序号:119 难度:1 考查点:类与对象

21. (分值:0.2 分)有以下类定义:

class A

{

public:

int x;

};

B

是类 A 的派生类,且 b 为 B 类对象,若要求正确执行以下语句:

b.x=5;

则 B 对 A

的继承方式是( )。

A: public B: private C: protected D: 都不对

序号:120 难度:1 考查点:继承与派生

22. (分值:0.2 分)C++中的模块包括__________。 A: 对象模块和函数模块 B: 对象模块和类模块 C: 函数模块和类模块 D: 对象模块和变量模块

序号:121 难度:1 考查点:类与对象

23. (分值:0.2 分)下列有关类的说法,不正确的是__________。 A: 类是一种用户自定义的数据类型

B: 只有类中的成员函数或类的友元函数才能存取类中的私有数据 C: 在类中,如果不作特别说明,所有的数据成员均为私有数据成员 D: 在类中,如果不作特别说明,所有的成员均为公有成员 序号:122 难度:1 考查点:类与对象

24. (分值:0.2 分)结构化程序由三种基本结构组成,不包括__________。A: 顺序结构 B: 选择结构 C: 控制结构 D: 循环结构

序号:123 难度:1 考查点:C++基础知识

25. (分值:0.2 分)下列关于构造函数说法不正确的是__________。 A: 构造函数必须与类同名 B: 构造函数可以省略不写 C: 构造函数必须有返回值

D: 在构造函数中可以对类中的成员进行初始化 序号:127 难度:1 考查点:类与对象