17秋学期北理工《面向对象程序设计》在线作业4.docx

上传人:b****1 文档编号:1183821 上传时间:2022-10-18 格式:DOCX 页数:14 大小:18.57KB
下载 相关 举报
17秋学期北理工《面向对象程序设计》在线作业4.docx_第1页
第1页 / 共14页
17秋学期北理工《面向对象程序设计》在线作业4.docx_第2页
第2页 / 共14页
17秋学期北理工《面向对象程序设计》在线作业4.docx_第3页
第3页 / 共14页
17秋学期北理工《面向对象程序设计》在线作业4.docx_第4页
第4页 / 共14页
17秋学期北理工《面向对象程序设计》在线作业4.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

17秋学期北理工《面向对象程序设计》在线作业4.docx

《17秋学期北理工《面向对象程序设计》在线作业4.docx》由会员分享,可在线阅读,更多相关《17秋学期北理工《面向对象程序设计》在线作业4.docx(14页珍藏版)》请在冰豆网上搜索。

17秋学期北理工《面向对象程序设计》在线作业4.docx

17秋学期北理工《面向对象程序设计》在线作业4

北理工《面向对象程序设计》在线作业

试卷总分:

100得分:

100

一、单选题(共38道试题,共76分)

19.下列关于C++函数的描述中,正确的是()。

A.每个函数至少要有一个参数

B.每个函数都必须返回一个值

C.函数在被调用之前必须先进行声明或定义

D.函数不能自己调用自己

满分:

2分

正确答案:

C

 

38.下列关键字中不能用来声明类成员访问权限的是()。

A.public

B.static

C.protected

D.private

满分:

2分

正确答案:

B

 

1.在下列的各类函数中,______不是类的成员函数。

A.构造函数

B.析构函数

C.友元函数

D.拷贝构造函数

满分:

2分

正确答案:

D

 

3.派生类对象对它的基类成员中()是可以访问的。

A.公有继承的私有成员

B.公有继承的保护成员

C.公有继承的公有成员

D.私有继承的公有成员

满分:

2分

正确答案:

C

 

8.定义p并使p指向动态空间中的包含30个整数的数组所使用的定义语句为()。

A.int*p=newint[30]

B.int*p=newint(30)

C.int*p=new[30]int*p=new[30]

D.*p=newint[30]

满分:

2分

正确答案:

A

 

35.多继承时对象的构造顺序中包含如下4步:

①所有非虚基类的构造函数按照它们被继承的顺序构造;②所有虚基类的构造函数按照它们被继承的顺序构造;③所有子对象的构造函数按照它们声明的顺序构造;④派生类自己的构造函数体;这4个步骤的正确顺序是()。

A.④③①②

B.②④③①

C.②①③④

D.③④①②

满分:

2分

正确答案:

C

 

30.若函数原型为voidFun(intx,inty=6,intchar='a'),则下列调用错误的是()。

A.Fun(5)

B.Fun(5,'b')

C.Fun(5,8)

D.Fun(2,4,'b')

满分:

2分

正确答案:

B

 

18.在横线处填入语句()后,下列语句序列能够正确执行。

int*ptr;delete[]ptr;

A.ptr=newint(5);

B.ptr=newint[5];

C.ptr=newint;

D.ptr=malloc(5);

满分:

2分

正确答案:

B

 

14.下列程序的输出结果是()。

#includeclassPart{public:

Part(intx=0):

val(x){cout<

intval;};classWhole{public:

Whole(intx,inty,intz=0):

p2(x),p1(y),val(z){cout<

Partp1,p

A.123321

B.213312

C.213

D.123123

满分:

2分

正确答案:

B

 

31.print()函数是某类中无返回值的常成员函数,下列表示中,正确的是()。

A.voidprint()const

B.constvoidprint()

C.voidconstprint()

D.voidprint(const)

满分:

2分

正确答案:

A

 

23.在下面的类定义中,横线处应填入的内容是()。

classMyClass{private:

staticintcount;};count=0;

A.int

B.staticint

C.intMyClass

D.staticintMyClass:

满分:

2分

正确答案:

C

 

12.复制构造函数的参数通常为()

A.某个对象名

B.某个对象的成员名

C.某个对象的引用名

D.某个对象的指针名

满分:

2分

正确答案:

C

 

7.下列描述中,错误的是()。

A.析构函数中调用虚函数采用静态联编

B.对虚析构函数的调用可以采用动态联编

C.当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数

D.构造函数可以声明为虚函数

满分:

2分

正确答案:

D

 

2.有如下类声明:

classMyClass{public:

MyClass(){cout<<1;}};执行语句MyClassa,b[2],*p[2];后,程序的输出结果是()。

A.11

B.111

C.1111

D.11111

满分:

2分

正确答案:

B

 

15.关于封装,下列说法中不正确的是()。

A.通过封装,对象的全部属性和操作结合在一起,形成一个整体

B.通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)

C.通过封装,每个对象都成为相对独立的实体

D.通过封装,对象的属性都是不可见的

满分:

2分

正确答案:

D

 

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

A.构造函数可以重载

B.析构函数名与类名相同

C.构造函数中可以设置参数的默认值

D.类中只有一个析构函数

满分:

2分

正确答案:

B

 

33.C++中用于实现运行时多态性的是()。

A.内联函数

B.重载函数

C.静态函数

D.虚函数

满分:

2分

正确答案:

D

 

35.下列关于继承的描述中,错误的是()。

A.派生类对象不能访问基类的保护成员

B.派生类对基类成员的访问权限随着继承方式而改变

C.派生类成员可以访问基类的私有成员

D.派生类继承了基类的所有成员

满分:

2分

正确答案:

C

 

19.下列函数中,不是类的成员函数的是()。

A.构造函数

B.友元函数

C.析构函数

D.复制构造函数

满分:

2分

正确答案:

B

 

34.下列语句中,会产生编译错误的是()。

A.intx=5;int&ref=x;

B.constintsize;

C.intx=5;int&ref=x;x++;

D.constintsize=100;

满分:

2分

正确答案:

B

 

38.下列描述中,错误的是()。

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

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

C.私有继承时基类中的public成员在派生类中是private的

D.保护继承时基类中的public成员在派生类中是protected的

满分:

2分

正确答案:

B

 

11.下列程序的输出结果是()。

#includeclassMyClass{public:

MyClass(){cout<<'A';}MyClass(charc){cout<

A.ABX

B.ABXB

C.AXB

D.AXBB

满分:

2分

正确答案:

D

 

18.不可以成为类的数据成员的是______

A.自身类的对象

B.另一个类的对象

C.自身类的指针或引用

D.其他基本数据类型

满分:

2分

正确答案:

A

 

29.下列描述中,()不是面向对象系统包含的要素。

A.对象

B.类

C.继承

D.函数

满分:

2分

正确答案:

D

 

6.执行下列程序后的输出结果是()。

#includeintfun1(intx){return++x;}intfun2(int&x){return++x;}intmain(){inta=0,b=0,c=0;c=fun1(a)+fun2(b);cout<

A.002

B.012

C.102

D.112

满分:

2分

正确答案:

B

 

3.在派生类中重新定义虚函数时,除了()方面,其他方面都必须与基类中相应的虚函数保持一致。

A.参数个数

B.参数类型

C.函数名称

D.函数体

满分:

2分

正确答案:

D

 

27.有如下类定义:

classMyClass{public:

intgetRef()const{return&a;}intgetValue()const{returna;}voidset(intn)const{a=n;}friendvoidshow(MyClassobj)const{cout<

A.getRef

B.getValue

C.set

D.show

满分:

2分

正确答案:

B

 

38.下列关于this指针的描述中,正确的是()。

A.任何与类相关的函数都有this指针

B.类的成员函数都有this指针

C.类的友元函数都有this指针

D.类的非静态成员函数都有this指针

满分:

2分

正确答案:

D

 

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

A.简化程序

B.消除二义性

C.提高运行效率

D.减少目标代码

满分:

2分

正确答案:

B

 

28.设置虚基类的目的是_____。

A.简化程序;

B.消除二义性;

C.提高运行效率;

D.减少目标代码;

满分:

2分

正确答案:

B

 

31.下列对引用的陈述中不正确的是()。

A.每一个引用都是其所引用对象的别名,因此必须初始化

B.形式上针对引用的操作实际上作用于它所引用的对象

C.一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行

D.不需要单独为引用分配存储空间

满分:

2分

正确答案:

C

 

32.在下列函数原型中,可以作为类A构造函数的是()。

A.voidA(int);

B.intA();

C.A(int)const;

D.A(int);

满分:

2分

正确答案:

D

 

5.下列关于运算符重载的描述中,______是正确的。

A.运算符重载可以改变运算数的个数;

B.运算符重载可以改变优先级;

C.运算符重载可以改变结合性;

D.运算符重载不可以改变语法结构。

满分:

2分

正确答案:

D

 

7.下列关于成员访问权限的描述中,错误的是()。

A.公有数据成员和公有成员函数都可以被类对象直接处理

B.类的私有数据成员只能被公有成员函数以及该类的友元访问

C.只有类或派生类的成员函数和友元可以访问保护成员

D.保护成员可以在派生类中被访问,而私有成员不可以

满分:

2分

正确答案:

B

 

23.下列关于类型转换的描述中,正确的是()。

A.由不同类型操作数组成的表达式的类型一定是最高类型double类型

B.强制类型转换都是非保值映射

C.赋值表达式的类型是左值的类型

D.类型转换是永久性的

满分:

2分

正确答案:

C

 

5.变量s的定义为“char*s=”Helloworld!

”;”,要使变量p指向s所指向的同一个字符串,则应选取()。

A.char*p=s

B.char

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

当前位置:首页 > 表格模板 > 表格类模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1