考试试卷 A(xin)面向对象程序设计

更新时间:2023-10-23 22:56:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

贵州大学2011-2012学年第二学期考试试卷 A

《面向对象程序设计》

注意事项:

1. 请考生按要求在试卷装订线内填写姓名、学号和年级专业。 2. 请仔细阅读各种题目的回答要求,在规定的位置填写答案。 3. 不要在试卷上乱写乱画,不要在装订线内填写无关的内容。 4. 满分100分,考试时间为120分钟。 题 号 得 分 得 分 评分人

一 二 三 四 五 六 总 分 统分人 一、填空(共10分,每空1分)

1、含有 的类叫做抽象类。

2、在类的继承中,原有的类称为父类或 ,产生的新类称为子类或 。

3、无论采用哪种继承方式,父类的 成员在子类中都不可直接访问。 4、绑定工作在程序运行阶段完成的情况称为 。

5、 是一个隐含于类的非静态成员函数中的特殊指针,它用于指向正在被成员函数操作的对象。

6、 若类A是类B的友元类,则类A的所有成员函数都是类B的 。 7、 是一种特殊类型的变量,可以被认为是另一个变量的别名。 8、定义名字空间的关键字 。

9、在C++的异常处理中,用于抛掷异常的关键字是 。

1

得 分 评分人

二、单项选择(共30分,每小题2分)

1.C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是( )。

A.面向过程 B.面向对象 C.安全性 D.复用性

2. C++中能声明常量的关键字是( )。 A. const B. extern C. public D. enum

3. 对于类中定义的成员,其隐含访问权限为( )。

A.public B.protected C.private D.static

4. 定义析构函数时,应该注意( )。

A.其名与类名完全相同 B.返回类型是 void 类型

C.无形参,也不可重载 D.函数体中必须有 delete 语句

5.下面有关重载函数的说法中正确的是( ) 。

A.重载函数必须具有不同的返回值类型; B.重载函数形参个数必须不同; C.重载函数必须有不同的形参列表 D.重载函数名可以不同;

6.下列关于构造函数的描述中,错误的是( ) 。

A.构造函数可以设置默认参数; B.构造函数在定义类对象时自动执行 C.构造函数可以是内联函数; D.构造函数不可以重载

7.下面描述中,表达错误的是( )。

A.公有继承时基类中的public成员在派生类中仍是public的

B.公有继承时基类中的private成员在派生类内部可以直接访问的 C.公有继承时基类中的protected成员在派生类中仍是protected的 D.私有继承时基类中的public成员在派生类中是private的

8.应在下列程序划线处填入的正确语句是( )。

class Base {

public:

void fun() {cout<<\

};

2

class Derived:public Base {

void fun()

{_____________

//显示调用基类的函数fun() cout<<\

} };

A.fun(); B.Base.fun(); C.Base::fun(); D. Base->fun();

9. 有如下的对类“CSample”的说明,其中( )是错误的。 class CSample { A.int a=23; B.CSample(); public:

C.CSample(int val); D.~ CSample();

}

10. 对于在类中定义的静态数据成员,下面正确的说法是( )。

A.该类的每个对象中都有一个静态数据成员 B.对象创建时产生 C.在类外进行初始化

D.既可以在类外初始化,也可以在类内初始化 11. 下面关于友元的描述中,错误的是( )。

A.友元函数可以访问该类的私有数据成员

B.一个类的友元类中的成员函数都是这个类的友元函数 C.友元不是必须使用,则尽可能少用。 D.类与类之间的友元关系可以继承

12. 已知:int m=10; 下列表示引用的方法中,( )是正确的。

A.int &x=m; B.int &y=10; C.int &z; D.float &t=&m;

13. 在公用继承方式下,有关派生类对象和基类对象关系,不正确的叙述是( )。 A.派生类的对象可以赋给基类的对象 B.派生类的对象可以初始化基类的引用 C.派生类的对象可以直接访问基类中的成员 D.派生类的对象的地址可以赋给指向基类的指针

3

14. 在C++中,用于实现动态多态性的是( )。 A.内联函数 B.重载函数 C.模板函数 D.虚函数

15. 设置虚基类的目的是( )。

A.简化程序 B.消除二义性 C.提高运行效率 D.减少目标代码

得 分 评分人

三、判断题(共10分,每小题1分)(对的打√,错的打╳)

1. 友元函数用于允许一个函数访问不相关类的私有部分。 2. 构造函数可以被继承。

3. 动态绑定的多态性是通过虚函数实现的。 4. 在c++中,传引用调用等同于传地址调用。 5. 重载函数必须有不同的参数列表。

6. 可以用delete释放不是用new运算符分配的内存。 7. 类成员的默认访问模式是private。

8. 在类Time中的析构函数可以声明为:void ~Time(int); 9. const对象必须初始化。

10. 在c++中,只能重载已有的运算符。

得 分 评分人

四、程序填空(共10分,每空2分)

#include using namespace std;

4

class A {

____________ (1) char name[80]; public: A( __________ ) (2){__________ }(3)

};

class B____________ (4) {

public: B(const char*n)____________ { } (5) void PrintName( ) {cout<<”name:”<

int main( ) { B b1(“Ling Li”); b1.PrintName( ) ; return 0;

} // 执行结果: name: Ling Li

得 分

五、程序分析题(共20分,每小题5分)评分人

1. 给出下面程序的运行结果: #include #include using namespace std;

class Student{ private:

string no;

static int stuNum; public:

Student(string no) { this->no=no; Student::stuNum++;

5

本文来源:https://www.bwwdw.com/article/hmy2.html

Top