资源描述
专升本《面向对象程序设计》
一、 (共75题,共150分)
1. 的值为()。 (2分)
A.1 B.2 C.3 D.4
.标准答案:B
2. 调用C++的标准函数exit(0)退出程序,将()。 (2分)
A.析构全局对象,不析构局部对象
B.析构全局对象,析构局部对象
C.不析构全局对象,不析构局部对象
D.不析构全局对象,析构局部对象
.标准答案:A
3. 对于定义的值为()。 (2分)
A.1 B.2 C.3 D.4
.标准答案:A
4. 对于定义使用f的对的方法为()。 (2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:C
5. 对于则调用f(x)的返回值为()。 (2分)
A.6 B.7 C.8 D.9
.标准答案:C
6. 对于定义对的的叙述为()。 (2分)
A.w引用u,v引用w B.w引用u,v引用u
C.w未引用u,v引用w D.w未引用u,v未引用w
.标准答案:B
7. C++的非静态函数成员()。 (2分)
A.可以重载,可以省略参数 B.不能重载,不能省略参数
C.可以重载,不能省略参数 D.不能重载,可以省略参数
.标准答案:A
8. 对于定义类F定义对象将调用哪一个构造函数()。 (2分)
A.F::F(int) B.F::F(int, int)
C.F::F(int, int, int) D.F::F(int, int, int, int)
.标准答案:D
9. 关于类的静态数据成员和非静态数据成员,哪个叙述对的()。 (2分)
A.它们存储在一起,为所有对象共用
B.它们不存储在一起,为所有对象共用
C.它们存储在一起,而静态数据成员为所有对象共用
D.它们不存储在一起,而非静态数据成员为所有对象共用
.标准答案:C
10. 使用cin>>x>>y输入,对的的说法是()。 (2分)
A.cin是输入函数,一次接受两个实参x和y
B.cin是输入函数,每次接受一个实参,因此,cin函数被调用两次
C.>>是输入函数,一次接受两个实参:cin和要输入的变量如x(或者y)
D.>>是输入函数,一次接受三个实参:cin、x、y
.标准答案:C
11. 关于C++静态数据成员指针和普通非成员指针的叙述哪个对的()。 (2分)
A.它们定义形式相同,都能指向类的静态数据成员
B.它们定义形式不同,都能指向类的静态数据成员
C.它们定义形式相同,都不能指向类的静态数据成员
D.它们定义形式不同,都不能指向类的静态数据成员
.标准答案:A
12. 在C++的类的构造函数前()。 (2分)
A.可以使用static和virtual说明
B.不能使用static和virtual说明
C.可以使用static说明,不能使用virtual说明
D.可以使用virtual说明,不能使用static说明
.标准答案:B
13. C++的类的析构函数成员()。 (2分)
A.可以定义为mutable和virtual的
B.不能定义为mutable和virtual的
C.可以定义为mutable的,不能定义为virtual的
D.不能定义为mutable的,可以定义为virtual的
.标准答案:D
14. 对于类F定义的只能使用如下定义的变量q的地址初始化p()。 (2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:A
15. 对于定义 函数调用g.e.f( )调用的函数为()。 (2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:B
16. 运算符::的左部() (2分)
A.可以出现名字空间名称,可以出现类名
B.不能出现名字空间名称,可以出现类名
C.可以出现名字空间名称,不能出现类名
D.不能出现名字空间名称,不能出现类名
.标准答案:A
17. 当C++的类F定义了非静态数据成员f、以及参数为f的非静态函数成员g,则在函数g中访问数据成员f使用()。 (2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:B
18. 关于C++的位段叙述哪个对的()。 (2分)
A.可以出现在struct中,但不能出现在class中
B.可以出现在struct中,也能出现在class中
C.不能出现在struct中,也不能出现在class中
D.不能出现在struct中,但可以出现在class中
.标准答案:B
19. 关于抽象类F的应用,下面哪个是对的的()。 (2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:D
20. 关于++运算符函数重载,对的的叙述为()。 (2分)
A.前置运算重载为单目,后置运算重载为双目
B.前置运算重载为单目,后置运算重载为单目
C.前置运算重载为双目,后置运算重载为双目
D.前置运算重载为双目,后置运算重载为单目
.标准答案:A
21. 类F缺省的构造函数的原型为()。 (2分)
A.F( ) B.F(const F&)
C.F(int x) D.F(const double&)
.标准答案:A,B
22. virtual保存字可以用于()。 (2分)
A.说明基类 B.说明普通成员函数
C.说明非成员函数 D.说明静态成员函数
.标准答案:A,B
23. 对于定义如下那种调用是对的的()。 (2分)
A.f(m) B.f(n) C.f(p) D.f(q)
.标准答案:A,B
24. C++的union类型可以定义()。 (2分)
A.静态数据成员 B.非静态数据成员
C.静态函数成员 D.非静态函数成员
.标准答案:B,C,D
25. C++的运算符“&”可以重载为如下哪些类型的函数()。 (2分)
A.单目函数 B.双目函数 C.三目函数 D.四目函数
.标准答案:A,B
26. sizeof(printf("16"))/sizeof(int)的值为()。 (2分)
A.1 B.2 C.3 D.4
.标准答案:A
27. 调用C++的函数abort( )退出程序,将()。 (2分)
A.析构全局对象,不析构局部对象
B.析构全局对象,析构局部对象
C.不析构全局对象,不析构局部对象
D.不析构全局对象,析构局部对象
.标准答案:C
28. 对于定义double x=1; double &y=x; sizeof(y)的值为()。 (2分)
A.1 B.4 C.8 D.16
.标准答案:C
29. 对于定义int *const f[10],使用f的对的方法为()。 (2分)
A.*f[5]=1; B.(*f)[5]=1; C.f[5]++; D.f[5]=1;
.标准答案:A
30. 对于则调用f(x)的返回值为()。 (2分)
A.6 B.7 C.8 D.9
.标准答案:C
31. 对于定义int u=3; int &w=++u; int &v=w++;对的的叙述为()。 (2分)
A.w引用u,v引用w B.w引用u,v未引用u
C.w未引用u,v引用w D.w未引用u,v未引用w
.标准答案:B
32. C++的普通函数成员()。 (2分)
A.可以重载,可以省略参数 B.不能重载,不能省略参数
C.可以重载,不能省略参数 D.不能重载,可以省略参数
.标准答案:A
33. 对于类F定义对象F x=(1,2,3,4);将调用哪一个构造函数()。 (2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:A
34. 在计算类的存储空间大小时,其大小等于()。 (2分)
A.所有数据成员大小之和
B.所有数据成员大小之和,但不涉及静态数据成员
C.所有数据成员、虚函数入口地址表指针大小之和,但不涉及静态数据成员
D.所有基类、数据成员、虚函数入口地址表指针大小之和,但不涉及静态数据成员
.标准答案:D
35. 使用coutA.cout是输出函数,一次接受两个实参x和y
B.cout是输出函数,每次接受一个实参,因此,cout函数被调用两次
C.>>是输出函数,一次接受两个实参:cout和要输出的变量如x(或者y)
D.>>是输出函数,一次接受三个实参:cout、x、y
.标准答案:C
36. 关于C++静态数据成员指针和普通指针的叙述哪个对的()。 (2分)
A.它们定义形式相同,指向的对象也相同
B.它们定义形式不同,但指向的对象相同
C.它们定义形式相同,但指向的对象不同
D.它们定义形式不同,指向的对象也不同
.标准答案:A
37. 在C++的类的析构函数前()。 (2分)
A.可以使用static和virtual说明
B.不能使用static和virtual说明
C.可以使用static说明,不能使用virtual说明
D.可以使用virtual说明,不能使用static说明
.标准答案:B
38. C++的类的析构函数成员()。 (2分)
A.可以定义为mutable和virtual的
B.不能定义为mutable和virtual的
C.可以定义为mutable的,不能定义为virtual的
D.不能定义为mutable的,可以定义为virtual的
.标准答案:D
39. 对于类A定义的A (*p) =new A [30],只能使用如下形式释放p的内存()。 (2分)
A.delete p; B.delete [ ]p;
C.delete p[30]; D.delete *p;
.标准答案:B
40. 对于在定义时在前面()。 (2分)
A.可加static,可加virtual
B.可加static,不可加virtual
C.不可加static,可加virtual
D.不可加static,不可加virtual
.标准答案:C
41. 运算符“.”的左部() (2分)
A.可以出现返回代表对象的函数调用,可以出现对象
B.不能出现返回代表对象的函数调用,可以出现对象
C.可以出现返回代表对象的函数调用,不能出现对象
D.不能出现返回代表对象的函数调用,不能出现对象
.标准答案:A
42. 强制类型转换,()。 (2分)
A.可以将任何类型转换为普通成员指针
B.可以将普通成员指针转换为任何类型
C.可以实现任何类型之间的转换;
D.可以实现任何类型之间的转换,A和B的转换除外;
.标准答案:D
43. 关于C++的位段叙述哪个对的()。 (2分)
A.可以出现在struct中,但不能出现在union中
B.可以出现在struct中,也能出现在union中
C.不能出现在struct中,也不能出现在union中
D.不能出现在struct中,但可以出现在union中
.标准答案:B
44. 关于双目运算符“/”重载为普通函数成员,下面哪个是对的的()。 (2分)
A.参数表里只能有一个参数,且必须是代表对象的类型;
B.参数表里只能有一个参数,不必是代表对象的类型
C.参数表里可以有多个参数,且必须是代表对象的类型
D.参数表里可以有多个参数,不必是代表对象的类型
.标准答案:B
45. 关于--运算符函数重载,对的的叙述为()。 (2分)
A.前置运算重载为单目,后置运算重载为双目
B.前置运算重载为单目,后置运算重载为单目
C.前置运算重载为双目,后置运算重载为双目
D.前置运算重载为双目,后置运算重载为单目
.标准答案:A
46. 类F缺省的赋值运算符重载函数的原型为()。
(2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:D
47. static保存字可以用于()。 (2分)
A.说明普通变量 B.说明成员变量
C.说明成员函数 D.说明普通函数
.标准答案:A,B,C,D
48. 对于圆括号运算符“()”,可以进行哪些运算符函数的重载()。 (2分)
A.强制类型转换运算符重载
B.一目以上的普通函数成员重载
C.一目以上的静态函数成员重载
D.都不对
.标准答案:A,B
49. C++的union类型可以定义()。 (2分)
A.私有数据成员 B.保护数据成员
C.公有数据成员 D.静态数据成员
.标准答案:A,B,C
50. C++的运算符“+”可以重载为如下哪些类型的函数()。 (2分)
A.单目函数 B.双目函数 C.三目函数 D.四目函数
.标准答案:A,B
51. 函数的所有缺省值参数应()。 (2分)
A.出现在参数表的右部,其中不能参杂非缺省值参数
B.出现在参数表的左部,其中不能参杂非缺省值参数
C.出现在参数表的右部,其中可以参杂非缺省值参数
D.出现在参数表的左部,其中可以参杂非缺省值参数
.标准答案:A
52. 内联函数通常()。 (2分)
A.函数体较小,且应当有分支类型的语句
B.函数体较大,且不应有分支类型的语句
C.函数体较小,且不应有分支类型的语句
D.函数体较大,且应当有分支类型的语句
.标准答案:C
53. 引用变量()。 (2分)
A.逻辑上不分派内存,必须引用分派内存的变量
B.逻辑上要分派内存,必须引用分派内存的变量
C.逻辑上不分派内存,可以引用不分派内存的变量
D.逻辑上要分派内存,可以引用不分派内存的变量
.标准答案:A
54. 对枚举类型定义的元素()。 (2分)
A.可以指定整型值,且整型值不得反复指定给不同枚举元素
B.可以指定整型值,且整型值可以反复指定给不同枚举元素
C.不能指定整型值,且整型值不得反复指定给不同枚举元素
D.不能指定整型值,且整型值可以反复指定给不同枚举元素
.标准答案:B
55. 5关于.保存字struct和class,对的的叙述为()。 (2分)
A.都可以定义类,且可以互相替代
B.都可以定义类,且不能互相替代
C.只有class可以定义类,因此不能互相替代
D.都不对
.标准答案:A
56. C++的数组元素不可以()。 (2分)
A.是数组 B.是整数 C.是函数 D.是指针
.标准答案:
57. C++指针变量int * const &p表达()。 (2分)
A.左边的指针指向右边的引用,且右边的引用不能被修改
B.左边的指针指向右边的引用,且左边的指针不能被修改
C.右边的引用引用左边的指针,且右边的引用不能被修改
D.右边的引用引用左边的指针,且左边的指针不能被修改
.标准答案:C
58. 关于表达式++(x++),如下哪个叙述对的()。 (2分)
A.对的,且最终增长2 B.对的,且最终增长1
C.错误 D.都不对
.标准答案:C
59. 假如不是释放数组指针指向的内存,delete后面使用的指针的类型为()。 (2分)
A.void * B.char * C.int * D.double *
.标准答案:A
60. 一个左值必然不是()。 (2分)
A.一个变量 B.一个常量
C.一个对象 D.一个函数调用
.标准答案:B
61. C++的析构函数()。 (2分)
A.可以重载,可以定义返回类型
B.可以重载,不能定义返回类型
C.不能重载,可以定义返回类型
D.不能重载,不能定义返回类型
.标准答案:D
62. 关于C++的struct,定义的成员()。 (2分)
A.缺省都是公有成员,但可以定义私有成员
B.缺省都是私有成员,但可以定义公有成员
C.缺省都是公有成员,不能定义私有成员
D.缺省都是私有成员,不能定义公有成员
.标准答案:A
63. C++的类F定义的类F的函数成员()。 (2分)
A.可以定义为friend和static的
B.不能定义为friend和static的
C.可以定义为friend的,不能定义为static的
D.不能定义为friend的,可以定义为static的
.标准答案:D
64. 对于类F定义F f[10][20],可以认为f[10]()。 (2分)
A.是一个10元素数组,每个元素存放1个F类对象;
B.是一个10元素数组,每个元素存放20个F类对象;
C.是一个指针,指向数组的第10个元素;
D.是一个指针,指向数组的第20个元素
.标准答案:B
65. 对于定义函数f的隐含参数this的类型为()。 (2分)
A.const E *volatile B.const E*const
C.volatile E*const D.const volatile E*const
.标准答案:D
66. C++的名字空间不能包含() (2分)
A.变量定义 B.函数定义 C.类型定义 D.数值常量
.标准答案:D
67. 对于如下操作合法的为()。
(2分)
A.见图 B.见图 C.见图 D.见图
.标准答案:D
68. 对于定义成员b->a的类型为()。 (2分)
A.int B.const int
C.const volatile int D.volatile int
.标准答案:C
69. 对于定义会()。 (2分)
A.先调用缺省析构函数~E( )一次,再释放p指向的对象内存
B.先调用缺省析构函数~F( )一次,再释放p指向的对象内存
C.先调用缺省析构函数~E( )十次,再释放p指向的对象内存
D.先调用缺省析构函数~F( )十次,再释放p指向的对象内存
.标准答案:C
70. 关于运算符函数%的重载,对的的叙述为()。 (2分)
A.可以重载为单目运算,但不改变运算符的结合性
B.可以重载为双目运算,但不改变运算符的结合性
C.可以重载为单目运算,但改变运算符的结合性
D.可以重载为双目运算,但改变运算符的结合性
.标准答案:B
71. C++具有如下特点()。 (2分)
A.兼容C语言 B.支持多继承
C.支持运算符重载 D.可自动回收内存
.标准答案:A,B,C
72. 若类不自定义函数成员,C++编译器会提供缺省的()。 (2分)
A.无参构造函数 B.拷贝构造函数
C.赋值运算符函数 D.析构函数
.标准答案:A,B,C,D
73. 运算符::可以做()。 (2分)
A.单目运算符 B.双目运算符 C.三目运算符 D.都不对
.标准答案:A,B
74. 关于定义int *p,()。 (2分)
A.*p是左值 B.p是左值 C.p++是左值 D.++p是左值
.标准答案:A,B,D
75. C++的运算符“--”可以重载为如下哪些类型的函数()。 (2分)
A.单目函数 B.双目函数 C.三目函数 D.四目函数
.标准答案:A,B
展开阅读全文