第八章类和对象复习题docWord格式文档下载.docx

上传人:b****6 文档编号:8425083 上传时间:2023-05-11 格式:DOCX 页数:15 大小:30.24KB
下载 相关 举报
第八章类和对象复习题docWord格式文档下载.docx_第1页
第1页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第2页
第2页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第3页
第3页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第4页
第4页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第5页
第5页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第6页
第6页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第7页
第7页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第8页
第8页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第9页
第9页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第10页
第10页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第11页
第11页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第12页
第12页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第13页
第13页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第14页
第14页 / 共15页
第八章类和对象复习题docWord格式文档下载.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第八章类和对象复习题docWord格式文档下载.docx

《第八章类和对象复习题docWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《第八章类和对象复习题docWord格式文档下载.docx(15页珍藏版)》请在冰点文库上搜索。

第八章类和对象复习题docWord格式文档下载.docx

A.一个类是由一批数据以及对其操作的函数组成

B.类中数据和函数可以分为private和public两大类

C.具有“类”类型特征的变量称为“对象”

D.

12.

如果用struct声明类时,

对其成员既不指定private,

也不指定public,则

系统就默认

为()

A・privateB.publicC・protected

13・在声明类类型时,声明的次序是()

A・先声明private部分,再声明public部分

B.先声明public部分,再声明private部分

C.声明public部分和声明private部分不能同时出现

D.既可以先声明private部分,也可以先声明public部分

14.关于类的友元函数的描述,正确的是()

A・友元函数可以被继承

D.不确定

B.一个类的友元函数可以访问这个类的所有成员

C・一个类的友元函数必须在这个类中定义成内联函数

D•—个类的友元函数的返回类型必须是这个类的类型标识符

15.在一个类中()

A.只能有数据成员

B.只能有成员函数

C.

可以有数据成员和成员函数

D.只能有数据成员或只能有成

类中私有成员函数可以被其他类中的成员函数所调用

 

员函数

16•下列特性中,不是面向对象程序设计的特征的是()

A・继承

B.内联函数

17.在声明类类型时,声明的次序是()

A.先声明private部分,再声明public部分

18.下列说法正确的是()

A.类是对象的抽象,对象是类的具体实例

B.对象是类的抽象

C・类是对象的具体实例

D.对象是类的模板19.类是对具有共同属性和行为的一类事物的抽象描述,

共同属性被描述为类中的数据成员,共同行为被描述为类中的。

成员函数

20.在一个函数的定义或声明前加上关键字时,该函数就声明为

内联函数。

inline

21•单目运算符作为类成员函数重载时没有参数;

双目运算符作为重载时只需声明其右操作数,作为友元函数重载时需声明全部操作数。

22.当用protected继承从基类派生一个类时,基类的public成员成为派生类的

中,将

置于虚函数的函数原型的末尾可以将该函数声明为纯虚

函数。

protected

=0

protected成员,protected成员成为派生类的成员。

在类定义

23.类是对具有共同属性和行为的一类事物的抽象描述,共同属性被描述为类

中的,共同行为被描述为类中的成员函数。

数据成员

24・如果一个数组中的每个元素都是同一个类的对象,则该数组被称

为o对象数组

25.在C++语言中,每个对象都有一个隐含的指针叫做this指针,该指针指

向o对象自身

26・当一个类对象的成员函数被调用时,该成员函数的指针指向

调用它的对象。

this

27.在结构定义中,数据和成员函数默认权限是公有的。

在类定义中,数据和成员

函数默认权限是。

私有的

28.对类中的成员函数和属性的访问是通过、protected和

这3个关键字来控制的。

publicprivate

29.仔细阅读程序,在题后写出其运行结果。

#include<

iostream>

usingnamespacestd;

classBox

{public:

Box(intw=10,inth=10,intlen=10);

intvolumeO;

private:

intheight;

intwidth;

intlength;

};

Box:

:

Box(intw,inth,intlen)

{height=h;

width=w;

length=len;

}

intBox:

volume()

{return(height*width*length);

intmain()

{

Boxboxl;

cout«

nThevolumeofboxlistf«

boxLvoluineO«

endl;

Boxbox2⑸;

nThevolumeofbox2isn«

box2eVoluine()«

Boxbox3⑸3);

nThevolumeofbox3istf«

box3eVoluineO«

Boxbox4(5,3,2);

nThevolumeofbox4istf«

box4eVoluineO«

return0;

运行结果:

1000(2分)

500(1分)

150(1分)

30(1分)

30.根据输出结果,在程序中填入正确的语句。

classInstrument!

public:

virtualvoidPrint()const{cout«

nInstrument:

Printn«

classPiano:

publicInstument{

voidPrint()constfcout«

MPiano:

Print«

}

classGuitar:

publicInstrulment{

voidPrint()const{cout«

nGuiur:

PrintM«

voidTone(){

voidmain(){

Guitarg;

Tone(g);

Pianop;

Tone(p);

输出结果为:

Guitar:

Print

Piano:

33•#include<

h>

Instrument&

obj

obj.Print();

31.下列程序通过把类Distance定义为类Point的友元类来实现计算两点之间距离的功能。

请完成该程序。

#includeiostream>

#indude<

math>

classPointf

Point(){

X=a;

Y=b;

voidPrint(){

HX=n«

cout«

nY=n«

floatX,Y;

classDistance!

floatDis(Point&

p,Point&

q);

floatDistance:

Dis(Point&

q){floatresult;

result«

returnresult;

Pointp(10,10),q(20,20);

Distanced;

d・Dis(p,q);

34.friendclassDistance

floata,floatb

resuit=sqrt((p.X-q.X)*(p.X-q.X)+(p.Y-q.Y)*(p.Y-q.Y))

32.在下面程序的横线处填上适当的语句,使运行该程序执行结果为20o

classMyCIass{

〃取X值

intx;

Myclassmy(20);

my>

GetNum()«

33.#include<

iostream.h>

或者"

iostream.h,,

MyClass(intn){x=n;

intGetNum(){returnx;

33.下列程序的运行结果如下:

Base'

scons>

Derived'

sdes>

sdes.

根据结果将程序补充完整。

#incude<

classBase{

Base(){cout«

«

{cout«

"

sdes.**<

}};

classDerived:

publicBase{

Derived(){cout«

nDerivedfscons>

tf«

-Derived(){cout«

HDerived,sdes.n«

};

Base*Ptr=

deleteptr;

34・“Base'

scons.”

~Base()

newDerived

34•分析下列程序,写出其运行结果。

classMyClass

MyClass(inta){x=a;

voidFunl(){x++;

voidFun2(){x+=2;

voidFun3(){x+=3;

voidPrint(){cout«

,x=,,«

}private:

voidmain()

MyClassmy(8);

void(MyClass:

*pf)();

my.Print();

35.仔细阅读程序,

在题后写出其运行结果。

pf=MyClass:

Funl;

(my・*pf)();

my.Print();

pf=MyCIass:

Fun2;

pf=MyClass:

Fun3;

(my.*pf)();

37.x=8

(2分)

x=9

(1分)

x=ll

x=14

usingnamespacestd;

Box(inth=109intw=12,intlen=15):

height(h),width(w),length(len){}intvolumeO;

{inti;

Boxa[3]={

Box(10,12,15),

Box(15,l8,20),

Box(l6,20,26)

for(i=0;

i<

=2;

i++)

Mvolumeofa[M«

n]isn«

a[i].volume()«

return0;

38.volumeofa[0]is1000

volumeofa[l]is5400

volumeofa[0]is8320

36•计算两个长方柱的体积,请编一个基于对象的程序,数据成员包括length(长)>width(宽)、height(高)。

要求用成员函数实现以下功能。

(1)由键盘分别输入两个长方柱的长、宽、高。

(2)计算长方柱的体积。

(3)输出2个长方柱的体积。

classBox(1分)

voidget_value();

floatvolume();

voiddisplayO;

floatlengh;

floatwidth;

floatheight;

(1分)

voidBox:

get_value()(1分)

{cout«

npleaseinputlengh,widthJieight:

;

cin»

lengh;

vvidth;

height;

floatBox:

volume()(1分)

{return(lengh*width*height);

display()(1分)

volume()«

{Boxboxl,box2;

boxl>

get_value();

boxl.displayO;

box2>

box2.display();

37.根据输出结果,在程序中填入正确的语句。

classInstrumentf

voidPrint()constf}

HGuiur:

voidTone()

uPiano:

38.写出下列程序的运行结果。

classBl{

intNv;

voidfun(){cout«

uMemberofBl・,'

vvendl;

classB2{

uMemberofB2・,'

classDl:

publicBl,publicB2{

uMemberofDl・”vvendl;

DIdl;

dl.Nv=l;

dl.fun();

dl.Bl:

Nv=2;

fun();

dLB2:

Nv=3;

}运行结果:

MemberofBl・

MemberofB2・

38.MemberofDI.(2分)

39在划线处填上适当的语句,完成下列程序。

math.h>

classPoint{

Point(doublea9doubleb,doublec){X=a;

Z=c}〃构造函数

doubleGetx(){returnX;

doubleGety(){returnY;

doubleGetz(){returnZ;

classLine:

Point{

Line(doublea,doubleb,doublec,doubled)

K=d;

voidshow(){

Getx()«

^”;

Gety()«

^”;

Getz()«

^^”;

doubleK;

Lineobj(l・2,3・4,5・6,7.8);

obj.show();

}〃运行结果是1.23.45.67.8

34.doubleX,Y,Z;

pubic

Point(a,b,c)

max,用指向对象的指针作函数参数,在

max函数找出5个学生中成绩最

40.建立一个对象数组,内放5个学生的数据(学号,成绩),设立一个函数

高者,并输出其学号。

41.

classStudent

Student(intn9floats):

num(n),score(s){}(1分)

intnum;

floatscore;

{Studentstud[5]={

Student(101,78.5),Student(102,85.5),Student(103,98.5),(1分)

Student(104,100.0),Student(105,95.5)};

voidmax(Student*);

Student*p=&

stud[0];

max(p);

}(1分)

voidmax(Student*arr)

{floatmax_score=arr[0].score;

intk=0;

for(inti=l;

iv5;

if(arr[i].score>

max_score){max_score=arr[i].score;

k=i;

arr[k].num«

nn«

max_score«

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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