《面向对象程序设计C》期末考试考题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

封面

作者:PanHongliang

仅供个人学习《面向对象程序设计C++》期末考试试卷

一、选择题(每小题3分,共48分.)

01、下列关于C++函数地叙述中, 正确地是( c ).

A) 每个函数至少要具有一个参数B) 每个函数都必须返回一个值

C)函数在被调用之前必须先声明D) 函数不能自己调用自己

02、下列关于类和对象地叙述中, 错误地是( a ).

A) 一个类只能有一个对象B)对象是类地具体实例

C)类是对某一类对象地抽象D) 类和对象地关系是一种数据类型与变量地关系03、在C++中,用于实现运行时多态性地是( d ).

A) 内联函数B) 重载函数C) 模板函数D) 虚函数04、下列关于运算符重载地叙述中, 正确地是( b ).

A) 通过运算符重载, 可以定义新地运算符B)有地运算符只能作为成员函数重载C)若重载运算符+, 则相应地运算符函数名是+ D) 重载二元运算符时,必须声明两个形参06、有如下类声明, 则类MyDERIVED中保护地数据成员和成员函数地个数是(b ).

class MyBASE

{ private: int k 。public: void set(int n){ k=n 。}

int get( )const{ return k 。}} 。

class MyDERIVED: protected MyBASE

{ protected: int j 。

public: void set(int m, int n){ MyBASE::set(m) 。j=n 。}

int get( )const{ return MyBASE::get( )+j 。} } 。

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

07、已知在一个类体中包含如下函数原型函数地叙述中, 错误地是( b ). A)这是运算符- 地重载运算符函数C)这是一个成员函数

: Volume operator-(Volume)const

B)这个函数所重载地运算符是一个一

元运算符

下列关于这个

08( a ).

cout.fill('*') 。cout.width(6) 。cout.fill('#') cout << 123 << endl

A)###123 B)123### C)***123 D)123***

09、在下列函数原型中, 可以作为类AA构造函数地是( d ).

A)void AA(int) 。B)int AA() 。C)AA(int)const 。D)AA(int)

10、下面四个选项中,( a) 是用来声明虚函数地.

A)virtual B)public C)include D)using namespace

11、实现运行时地多态性要使用( d ).

A) 重载函数B) 构造函数C) 析构函数D) 虚函

数12、要实现动态联编, 必须通过( a ) 调

用虚函数A) 对象指针B) 成员名限定C)对象

名D) 派生类名13、以下( c ) 成员函数表示

纯虚函数.

A)virtual int

vf(int) C)virtual void vf()=0 14、有如下类声明:

{ private: int x

。B)void vf(int)=0

。D)virtual void vf(int){} class XA

public: XA(int n){ x=n class XB: public XA

{ private: int y 。

public: XB(int a,int b)

在构造函数XB地下列定义中, 正确地是( b ).

A)XB::XB(int a,int b): x(a),y(b){ }B)XB::XB(int a,int b): XA(a),y(b){ }

C)XB::XB(int a,int b): x(a),XB(b){ } D)XB::XB(int a,int b): XA(a),XB(b){ }

15、在表达式x+y*z 中, + 是作为成员函数重载地运算符,* 是作为非成员函数重载地

运算符则operator+ 有个参数,operator* 有参数.( c )

A)2、2 B)2 、 1 C)1 、2 D)1 、1

16、应在下列程序划线处填入地正确语句是( c ).

class Base

{ public:

void fun(){cout<<"Base::fun"<

class Derived:public Base

{ void fun()

{ // 显示调用基类地函数fun()

cout<<"Derived::fun"<

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

、填空题(每空2分,共20分.)

17、面向对象程序设计有四个主要特点_______________ , 即抽象、封装、和.

18、非成员函数应声明为类地_ 函数才能访问这个类地private 成员.

19、派生类中地成员不能直接访问基类中地成员.

20、在用class 定义一个类时, 数据成员和成员函数地默认访问权限是.

21、运算符重载函数可能是类地函数,也可以是类地_ 函数, 还可以是普通函数.

22、用流对象地成员函数控制输出格式时_____________________________________ , 用

相关文档
最新文档