城建大学计算机期末习题练习.docx

上传人:b****0 文档编号:18104949 上传时间:2023-08-13 格式:DOCX 页数:16 大小:18.45KB
下载 相关 举报
城建大学计算机期末习题练习.docx_第1页
第1页 / 共16页
城建大学计算机期末习题练习.docx_第2页
第2页 / 共16页
城建大学计算机期末习题练习.docx_第3页
第3页 / 共16页
城建大学计算机期末习题练习.docx_第4页
第4页 / 共16页
城建大学计算机期末习题练习.docx_第5页
第5页 / 共16页
城建大学计算机期末习题练习.docx_第6页
第6页 / 共16页
城建大学计算机期末习题练习.docx_第7页
第7页 / 共16页
城建大学计算机期末习题练习.docx_第8页
第8页 / 共16页
城建大学计算机期末习题练习.docx_第9页
第9页 / 共16页
城建大学计算机期末习题练习.docx_第10页
第10页 / 共16页
城建大学计算机期末习题练习.docx_第11页
第11页 / 共16页
城建大学计算机期末习题练习.docx_第12页
第12页 / 共16页
城建大学计算机期末习题练习.docx_第13页
第13页 / 共16页
城建大学计算机期末习题练习.docx_第14页
第14页 / 共16页
城建大学计算机期末习题练习.docx_第15页
第15页 / 共16页
城建大学计算机期末习题练习.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

城建大学计算机期末习题练习.docx

《城建大学计算机期末习题练习.docx》由会员分享,可在线阅读,更多相关《城建大学计算机期末习题练习.docx(16页珍藏版)》请在冰点文库上搜索。

城建大学计算机期末习题练习.docx

城建大学计算机期末习题练习

一、单选题(本题共10小题,每题2分,共20分)

1.下面选项中,不是类的成员函数为

A)构造函数B)析构函数

C)友元函数D)复制构造函数

2.下面对析构函数的正确的描述是

A)系统可以提供默认的析构函数B)析构函数必须由用户定义

C)析构函数可以重载D)析构函数可以设置默认参数

3.关于类和对象不正确的说法是_

A)类是一种类型,它封装了数据和操作B)对象是类的实例

C)一个类的对象只有一个D)一个对象必属于某个类

4.在类的外部,可以被访问的成员有_

A)所有类成员B)private或protected的类成员

C)public的类成员D)public或private的类成员

5.声明一个类的对象时,系统自动调用一个函数;撤消对象时,系统自动调用一个函数;该函数为__

A)成员函数;构造函数B)复制构造函数;析构函数

C)构造函数;析构函数D)析构函数;复制构造函数

6.假定XY为一个类,则该类的拷贝构造函数的声明语句为。

A)XY&(XYx);B)XY(XY&x);

C)XY(XYx);D)XY(XY*x);

7.当一个派生类保护继承一个基类时,基类中的所有公有成员和保护成员成为派生类的

A)友元B)private成员

C)public成员D)protected成员

8.在C++中,要实现动态联编,必须使用_______调用虚函数

A)类名B)派生类指针

C)对象名D)基类指针

9.下列函数原型声明中,_________声明了fun为纯虚函数

A)voidfun()=0;B)virtualvoidfun()=0;

C)virtualvoidfun();D)virtualvoidfun(){};

10.假定AA为一个类,inta()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为________。

A)intAA:

:

a()    B)intAA:

a()

C)AA:

:

a()    D)AA:

:

inta()

二、填空题(本题共10小题,每题3分,共30分)

1.类A中有一个数据成员staticintb,在类外为它定义并初始化为0时使用的语句为_;_

2.在一个派生类中,对派生类对象成员、基类成员和子对象成员的初始化次序是先____,后__,最后为_。

3.把函数voidfun();定义为一个类ABC的友元函数,则应在类ABC的定义中加入一条语句:

_;。

4.在C++流类库中,根基类为_______。

5.函数的递归调用是指函数直接或间接地调用。

6.在定义类对象的语句执行时,系统在建立每个对象的过程中将自动调用该类的__,使其初始化。

7.类只能作为基类使用,而不能声明它的对象。

8.若要在程序文件中进行文件输入输出操作。

必须在开始的#include命令中使用__头文件。

9.通过一个对象只能调用它的常成员函数,不能调用其他成员函数。

10.类的成员函数可以在类内或类外定义。

若在类外定义,在类中必需对成员函数进行____。

三、写出下列程序运行后的输出结果(本题共6小题,每题5分,共30分)

1.带默认参数的构造函数

#include

classM

{inta,b;

public:

M(intaa=1,intbb=2):

a(aa),b(bb)

{cout<<"constructor!

"<

};

voidmain()

{

Mx,y(2,3);

}

 

constructor!

3

constructor!

5

2.析构函数的调用

#include

classM

{int*a;

public:

M(intaa=3){

a=newint(aa);

cout<<"constructor!

"<<*a<

~M(){cout<<"destructor!

"<<*a<

};

voidmain()

{Mx[2];

M*p=newM(8);

deletep;

}

constructor!

3

constructor!

3

constructor!

8

destructor!

8

destructor!

3

destructor!

3

3.运算符+重载

#include

classM{

inta,b;

public:

M(){a=b=0;}

M(intaa,intbb){a=aa,b=bb;}

Moperator+(M&x)

{Mr;

r.a=a+x.a;

r.b=b+x.b;

returnr;

}

Moperator-(M&x)

{Mr;

r.a=a-x.a;

r.b=b-x.b;

returnr;

}

voidOutB()

{cout<

};

voidmain()

{Mx(3,5),y(8,4),z1,z2;

z1=x+y;//x.operator+(y);

z2=x-y;

z1.OutB();z2.OutB();

}

119

-51

4.含子对象的派生类

#include

classAX

{intx;

public:

AX(intxx=0):

x(xx){}

voidoutput()

{cout<

intGet(){returnx;}

};

classBX:

publicAX

{inty;

AXz;

public:

BX(intxx=0,intyy=0):

AX(xx),y(yy),z(xx+yy){}

voidoutput()

{AX:

:

output();cout<

cout<

}

};

voidmain()

{BXa(8),b(11,22);

a.output();

b.output();}

8808

11112233

5.虚函数实现的多态

#include

classAY

{protected:

inta,b;

public:

AY(intaa=0,intbb=0)

{a=aa;b=bb;}

virtualvoidcompute()

{cout<

};

classBY:

publicAY

{public:

BY(intaa=0,intbb=0):

AY(aa,bb){}

voidcompute()

{cout<

};

classCY:

publicBY

{public:

CY(intaa=0,intbb=0):

BY(aa,bb){}

voidcompute()

{cout<

};

classDY:

publicAY

{public:

DY(intda=0,intdb=0):

AY(da,db){}

voidcompute()

{if(b!

=0)

cout<

相关搜索
资源标签

当前位置:首页 > 外语学习 > 日语学习

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2