专升本《面向对象程序设计》考试答案.docx

上传人:b****4 文档编号:3928720 上传时间:2022-11-26 格式:DOCX 页数:18 大小:56.12KB
下载 相关 举报
专升本《面向对象程序设计》考试答案.docx_第1页
第1页 / 共18页
专升本《面向对象程序设计》考试答案.docx_第2页
第2页 / 共18页
专升本《面向对象程序设计》考试答案.docx_第3页
第3页 / 共18页
专升本《面向对象程序设计》考试答案.docx_第4页
第4页 / 共18页
专升本《面向对象程序设计》考试答案.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

专升本《面向对象程序设计》考试答案.docx

《专升本《面向对象程序设计》考试答案.docx》由会员分享,可在线阅读,更多相关《专升本《面向对象程序设计》考试答案.docx(18页珍藏版)》请在冰豆网上搜索。

专升本《面向对象程序设计》考试答案.docx

专升本《面向对象程序设计》考试答案

[试题分类]:

专升本《面向对象程序设计》_08023050

[题型]:

单选

[分数]:

2

1.

对于

如下操作合法的为()。

A.见图

B.见图

C.见图

D.见图

答案:

A

2.C++指针变量int*const&p表示()。

A.右边的引用引用左边的指针,且右边的引用不能被修改

B.左边的指针指向右边的引用,且左边的指针不能被修改

C.左边的指针指向右边的引用,且右边的引用不能被修改

D.右边的引用引用左边的指针,且左边的指针不能被修改

答案:

A

3.

对于定义

函数调用g.e.f()调用的函数为()。

A.见图

B.见图

C.见图

D.见图

答案:

C

4.

的值为()。

A.1

B.3

C.4

D.2

答案:

D

5.关于C++的位段叙述哪个正确()。

A.可以出现在struct中,但不能出现在class中

B.不能出现在struct中,但可以出现在class中

C.不能出现在struct中,也不能出现在class中

D.可以出现在struct中,也能出现在class中

答案:

D

6.如果不是释放数组指针指向的内存,delete后面使用的指针的类型为()。

A.void*

B.int*

C.char*

D.double*

答案:

A

7.对于定义

函数f的隐含参数this的类型为()。

A.volatileE*const

B.constE*const

C.constE*volatile

D.constvolatileE*const

答案:

D

8.C++的类F定义的类F的函数成员()。

A.不能定义为friend的,可以定义为static的

B.可以定义为friend的,不能定义为static的

C.可以定义为friend和static的

D.不能定义为friend和static的

答案:

A

9.运算符“.”的左部()

A.不能出现返回代表对象的函数调用,不能出现对象

B.可以出现返回代表对象的函数调用,可以出现对象

C.可以出现返回代表对象的函数调用,不能出现对象

D.不能出现返回代表对象的函数调用,可以出现对象

答案:

B

10.引用变量()。

A.逻辑上要分配内存,可以引用不分配内存的变量

B.逻辑上不分配内存,必须引用分配内存的变量

C.逻辑上不分配内存,可以引用不分配内存的变量

D.逻辑上要分配内存,必须引用分配内存的变量

答案:

B

11.C++的析构函数()。

A.不能重载,不能定义返回类型

B.可以重载,不能定义返回类型

C.可以重载,可以定义返回类型

D.不能重载,可以定义返回类型

答案:

A

12.对于

在定义时在前面()。

A.可加static,可加virtual

B.可加static,不可加virtual

C.不可加static,可加virtual

D.不可加static,不可加virtual

答案:

C

13.关于C++的位段叙述哪个正确()。

A.不能出现在struct中,也不能出现在union中

B.不能出现在struct中,但可以出现在union中

C.可以出现在struct中,也能出现在union中

D.可以出现在struct中,但不能出现在union中

答案:

C

14.

当C++的类F定义了非静态数据成员f、以及参数为f的非静态函数成员g,则在函数g中访问数据成员f使用()。

A.见图

B.见图

C.见图

D.见图

答案:

B

15.C++的非静态函数成员()。

A.不能重载,不能省略参数

B.可以重载,可以省略参数

C.不能重载,可以省略参数

D.可以重载,不能省略参数

答案:

B

16.关于表达式++(x++),如下哪个叙述正确()。

A.正确,且最终增加2

B.正确,且最终增加1

C.都不对

D.错误

答案:

D

17.

关于抽象类F的应用,下面哪个是正确的()。

A.见图

B.见图

C.见图

D.见图

答案:

B

18.C++的类的析构函数成员()。

A.不能定义为mutable和virtual的

B.可以定义为mutable和virtual的

C.可以定义为mutable的,不能定义为virtual的

D.不能定义为mutable的,可以定义为virtual的

答案:

D

19.调用C++的标准函数exit(0)退出程序,将()。

A.不析构全局对象,析构局部对象

B.不析构全局对象,不析构局部对象

C.析构全局对象,析构局部对象

D.析构全局对象,不析构局部对象

答案:

D

20.对于定义intu=3;int&w=++u;int&v=w++;正确的叙述为()。

A.w未引用u,v未引用w

B.w未引用u,v引用w

C.w引用u,v未引用u

D.w引用u,v引用w

答案:

C

21.关于C++的struct,定义的成员()。

A.缺省都是公有成员,不能定义私有成员

B.缺省都是私有成员,但可以定义公有成员

C.缺省都是私有成员,不能定义公有成员

D.缺省都是公有成员,但可以定义私有成员

答案:

D

22.对于定义

的值为()。

A.1

B.4

C.2

D.3

答案:

A

23.关于.保留字struct和class,正确的叙述为()。

A.只有class可以定义类,因此不能相互替代

B.都不对

C.都可以定义类,且可以相互替代

D.都可以定义类,且不能相互替代

答案:

C

24.在计算类的存储空间大小时,其大小等于()。

A.所有数据成员大小之和

B.所有数据成员、虚函数入口地址表指针大小之和,但不包括静态数据成员

C.所有基类、数据成员、虚函数入口地址表指针大小之和,但不包括静态数据成员

D.所有数据成员大小之和,但不包括静态数据成员

答案:

C

25.

A.见图

B.见图

C.见图

D.对于定义

使用f的正确方法为()。

见图

答案:

B

26.函数的所有缺省值参数应()。

A.出现在参数表的左部,其中可以参杂非缺省值参数

B.出现在参数表的右部,其中不能参杂非缺省值参数

C.出现在参数表的左部,其中不能参杂非缺省值参数

D.出现在参数表的右部,其中可以参杂非缺省值参数

答案:

B

27.对于

则调用f(x)的返回值为()。

A.9

B.6

C.8

D.7

答案:

C

28.关于双目运算符“/”重载为普通函数成员,下面哪个是正确的()。

A.参数表里只能有一个参数,且必须是代表对象的类型;

B.参数表里只能有一个参数,不必是代表对象的类型

C.参数表里可以有多个参数,不必是代表对象的类型

D.参数表里可以有多个参数,且必须是代表对象的类型

答案:

B

29.对于定义doublex=1;double&y=x;sizeof(y)的值为()。

A.1

B.16

C.8

D.4

答案:

C

30.关于类的静态数据成员和非静态数据成员,哪个叙述正确()。

A.它们存储在一起,而静态数据成员为所有对象共用

B.它们不存储在一起,为所有对象共用

C.它们存储在一起,为所有对象共用

D.它们不存储在一起,而非静态数据成员为所有对象共用

答案:

A

31.C++的普通函数成员()。

A.可以重载,可以省略参数

B.不能重载,不能省略参数

C.可以重载,不能省略参数

D.不能重载,可以省略参数

答案:

A

32.使用cin>>x>>y输入,正确的说法是()。

A.>>是输入函数,一次接受三个实参:

cin、x、y

B.cin是输入函数,每次接受一个实参,因此,cin函数被调用两次

C.>>是输入函数,一次接受两个实参:

cin和要输入的变量如x(或者y)

D.cin是输入函数,一次接受两个实参x和y

答案:

C

33.C++的类的析构函数成员()。

A.可以定义为mutable和virtual的

B.不能定义为mutable的,可以定义为virtual的

C.可以定义为mutable的,不能定义为virtual的

D.不能定义为mutable和virtual的

答案:

B

34.在C++的类的构造函数前()。

A.可以使用static和virtual说明

B.可以使用static说明,不能使用virtual说明

C.不能使用static和virtual说明

D.可以使用virtual说明,不能使用static说明

答案:

C

35.C++的名字空间不能包含()

A.变量定义

B.函数定义

C.数值常量

D.类型定义

答案:

C

36.

对于类F定义的

只能使用如下定义的变量q的地址初始化p()。

A.见图

B.见图

C.见图

D.见图

答案:

B

37.对于

则调用f(x)的返回值为()。

A.9

B.8

C.6

D.7

答案:

B

38.使用cout<

A.cout是输出函数,每次接受一个实参,因此,cout函数被调用两次

B.cout是输出函数,一次接受两个实参x和y

C.>>是输出函数,一次接受两个实参:

cout和要输出的变量如x(或者y)

D.>>是输出函数,一次接受三个实参:

cout、x、y

答案:

C

39.关于C++静态数据成员指针和普通非成员指针的叙述哪个正确()。

A.它们定义形式相同,都能指向类的静态数据成员

B.它们定义形式不同,都不能指向类的静态数据成员

C.它们定义形式不同,都能指向类的静态数据成员

D.它们定义形式相同,都不能指向类的静态数据成员

答案:

A

40.在C++的类的析构函数前()。

A.可以使用static说明,不能使用virtual说明

B.不能使用static和virtual说明

C.可以使用virtual说明,不能使用static说明

D.可以使用static和virtual说明

答案:

B

41.对于定义

正确的叙述为()。

A.w未引用u,v未引用w

B.w未引用u,v引用w

C.w引用u,v引用w

D.w引用u,v引用u

答案:

D

42.关于C++静态数据成员指针和普通指针的叙述哪个正确()。

A.它们定义形式相同,但指向的对象不同

B.它们定义形式不同,指向的对象也不同

C.它们定义形式相同,指向的对象也相同

D.它们定义形式不同,但指向的对象相同

答案:

C

43.关于运算符函数%的重载,正确的叙述为()。

A.可以重载为单目运算,但改变运算符的结合性

B.可以重载为单目运算,但不改变运算符的结合性

C.可以重载为双目运算,但不改变运算符的结合性

D.可以重载为双目运算,但改变运算符的结合性

答案:

C

44.运算符:

:

的左部()

A.不能出现名字空间名称,可以出现类名

B.可以出现名字空间名称,可以出现类名

C.可以出现名字空间名称,不能出现类名

D.不能出现名字空间名称,不能出现类名

答案:

B

45.

对于类F定义对象Fx=(1,2,3,4);将调用哪一个构造函数()。

A.见图

B.见图

C.见图

D.见图

答案:

B

46.强制类型转换,()。

A.可以实现任何类型之间的转换,A和B的转换除外;

B.可以将任何类型转换为普通成员指针

C.可以实现任何类型之间的转换;

D.可以将普通成员指针转换为任何类型

答案:

A

47.对于类F定义Ff[10][20],可以认为f[10]()。

A.是一个指针,指向数组的第10个元素;

B.是一个10元素数组,每个元素存放20个F类对象;

C.是一个10元素数组,每个元素存放1个F类对象;

D.是一个指针,指向数组的第20个元素

答案:

B

48.对枚举类型定义的元素()。

A.不能指定整型值,且整型值可以重复指定给不同枚举元素

B.可以指定整型值,且整型值可以重复指定给不同枚举元素

C.不能指定整型值,且整型值不得重复指定给不同枚举元素

D.可以指定整型值,且整型值不得重复指定给不同枚举元素

答案:

B

49.对于定义int*constf[10],使用f的正确方法为()。

A.f[5]++;

B.(*f)[5]=1;

C.*f[5]=1;

D.f[5]=1;

答案:

C

50.对于定义

成员b->a的类型为()。

A.constvolatileint

B.int

C.constint

D.volatileint

答案:

A

51.调用C++的函数abort()退出程序,将()。

A.不析构全局对象,不析构局部对象

B.析构全局对象,析构局部对象

C.不析构全局对象,析构局部对象

D.析构全局对象,不析构局部对象

答案:

A

52.对于类A定义的A(*p)=newA[30],只能使用如下形式释放p的内存()。

A.deletep;

B.delete*p;

C.deletep[30];

D.delete[]p;

答案:

D

53.内联函数通常()。

A.函数体较小,且应该有分支类型的语句

B.函数体较大,且不应有分支类型的语句

C.函数体较小,且不应有分支类型的语句

D.函数体较大,且应该有分支类型的语句

答案:

C

54.一个左值必然不是()。

A.一个对象

B.一个变量

C.一个函数调用

D.一个常量

答案:

D

55.对于定义类F定义对象

将调用哪一个构造函数()。

A.F:

:

F(int,int,int,int)

B.F:

:

F(int,int,int)

C.F:

:

F(int,int)

D.F:

:

F(int)

答案:

A

56.C++的数组元素不可以()。

A.是整数

B.是函数

C.是指针

D.是数组

答案:

B

57.关于++运算符函数重载,正确的叙述为()。

A.前置运算重载为双目,后置运算重载为单目

B.前置运算重载为单目,后置运算重载为双目

C.前置运算重载为单目,后置运算重载为单目

D.前置运算重载为双目,后置运算重载为双目

答案:

B

58.sizeof(printf("16"))/sizeof(int)的值为()。

A.4

B.2

C.1

D.3

答案:

C

59.对于定义

会()。

A.先调用缺省析构函数~F()一次,再释放p指向的对象内存

B.先调用缺省析构函数~F()十次,再释放p指向的对象内存

C.先调用缺省析构函数~E()十次,再释放p指向的对象内存

D.先调用缺省析构函数~E()一次,再释放p指向的对象内存

答案:

C

60.关于--运算符函数重载,正确的叙述为()。

A.前置运算重载为双目,后置运算重载为单目

B.前置运算重载为单目,后置运算重载为双目

C.前置运算重载为双目,后置运算重载为双目

D.前置运算重载为单目,后置运算重载为单目

答案:

B

[试题分类]:

专升本《面向对象程序设计》_08023050

[题型]:

多选

[分数]:

2

1.运算符:

可以做()。

A.都不对

B.单目运算符

C.三目运算符

D.双目运算符

答案:

B,D

2.C++的运算符“&”可以重载为如下哪些类型的函数()。

A.三目函数

B.四目函数

C.单目函数

D.双目函数

答案:

C,D

3.C++的union类型可以定义()。

A.保护数据成员

B.公有数据成员

C.私有数据成员

D.静态数据成员

答案:

A,B,C

4.

类F缺省的赋值运算符重载函数的原型为()。

A.见图

B.见图

C.见图

D.见图

答案:

A

5.C++具有如下特点()。

A.支持多继承

B.可自动回收内存

C.兼容C语言

D.支持运算符重载

答案:

A,C,D

6.关于定义int*p,()。

A.p++是左值

B.*p是左值

C.++p是左值

D.p是左值

答案:

B,C,D

7.C++的运算符“+”可以重载为如下哪些类型的函数()。

A.双目函数

B.四目函数

C.三目函数

D.单目函数

答案:

A,D

8.对于定义

如下那种调用是正确的()。

A.f(m)

B.f(n)

C.f(q)

D.f(p)

答案:

A,B

9.C++的union类型可以定义()。

A.静态数据成员

B.非静态函数成员

C.非静态数据成员

D.静态函数成员

答案:

B,C,D

10.若类不自定义函数成员,C++编译器会提供缺省的()。

A.赋值运算符函数

B.无参构造函数

C.析构函数

D.拷贝构造函数

答案:

A,B,C,D

11.C++的运算符“--”可以重载为如下哪些类型的函数()。

A.单目函数

B.三目函数

C.四目函数

D.双目函数

答案:

A,D

12.类F缺省的构造函数的原型为()。

A.F(constdouble&)

B.F(constF&)

C.F(intx)

D.F()

答案:

B,D

13.对于圆括号运算符“()”,可以进行哪些运算符函数的重载()。

A.一目以上的普通函数成员重载

B.一目以上的静态函数成员重载

C.强制类型转换运算符重载

D.都不对

答案:

A,C

14.static保留字可以用于()。

A.说明成员函数

B.说明成员变量

C.说明普通函数

D.说明普通变量

答案:

A,B,C,D

15.virtual保留字可以用于()。

A.说明静态成员函数

B.说明基类

C.说明普通成员函数

D.说明非成员函数

答案:

B,C

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

当前位置:首页 > PPT模板

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

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