|
《面向对象程序设计》在线作业二
试卷总分:100 测试时间:--
单选题
一、单选题(共 20 道试题,共 100 分。)V 1. 有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n);printf("%d%d\n",n++,++m);}程序运行后的输出结果是( )。
A. 12353514
B. 12353513
C. 12343514
D. 12343513
满分:5 分
2. 对于公有继承,基类的公有和保护成员在派生类中将( )成员。
A. 全部变成公有
B. 全部变成保护
C. 全部变成私有
D. 仍然相应保持为公有和保护
满分:5 分
3. 建立包含有类对象成员的派生类对象时,自动调用构造函数的执行顺序依次为( )的构造函数。
A. 自己所属类、对象成员所属类、基类
B. 对象成员所属类、基类、自己所属类
C. 基类、对象成员所属类、自己所属类
D. 基类、自己所属类、对象成员所属类
满分:5 分
4. 以下叙述中正确的是( )。
A. 预处理命令行必须位于源文件的开头
B. 在源文件的一行上可以有多条预处理命令
C. 宏名必须用大写字母表示
D. 宏替换不占用程序的运行时间
满分:5 分
5. 数字字符0的ASCII值为48,若有以下程序main(){char a='1',b='2';printf("%c,",b++);printf("%d\n",b-a);}程序运行后的输出结果是( )。
A. 3,2
B. 50,2
C. 2,2
D. 2,50
满分:5 分
6. 有定义语句:int b;char c[10]; ,则正确的输入语句是( )。
A. scanf("%d%s",&b,&c);
B. scanf("%d%s",&b,c);
C. scanf("%d%s",b,c);
D. scanf("%d%s",b,&c);
满分:5 分
7. 下列对派生类的描述中错误的说法是:( )。
A. 派生类至少有一个基类
B. 派生类可作为另一个派生类的基类
C. 派生类除了包含它直接定义的成员外,还包含其基类的成员
D. 派生类所继承的基类成员的访问权限保持不变
满分:5 分
8. 下列对派生类的描述中错误的说法是:( )。
A. 派生类至少有一个基类
B. 派生类可作为另一个派生类的基类
C. 派生类除了包含它直接定义的成员外,还包含其基类的成员
D. 派生类所继承的基类成员的访问权限保持不变
满分:5 分
9. C++中的虚基类机制可以保证:( )。
A. 限定基类只通过一条路径派生出派生类
B. 允许基类通过多条路径派生出派生类,派生类也就能多次继承该基类
C. 当一个类多次间接从基类派生以后,派生类对象能保留多份间接基类的成员
D. 当一个类多次间接从基类派生以后,其基类只被一次继承
满分:5 分
10. C++的继承性允许派生类继承基类的( )。
A. 部分特性,并允许增加新的特性或重定义基类的特性
B. 部分特性,但不允许增加新的特性或重定义基类的特性
C. 所有特性,并允许增加新的特性或重定义基类的特性
D. 所有特性,但不允许增加新的特性或重定义基类的特性
满分:5 分
11. 在定义一个派生类时,若不使用保留字显式地规定采用何种继承方式,则默认为( )方式。
A. 私有继承
B. 非私有继承
C. 保护继承
D. 公有继承
满分:5 分
12. 派生类的成员函数可以直接访问基类的( )成员。
A. 所有
B. 公有和保护
C. 保护和私有
D. 私有
满分:5 分
13. 若在一个类中至少有一个纯虚函数,则称该类为( )。
A. 纯虚类
B. 多重派生类
C. 抽象类
D. 友类
满分:5 分
14. 以下关于动态联编的叙述不正确的是( )。
A. 动态联编是以虚函数为基础的
B. 动态联编是在编译时确定操作函数的
C. 动态联编是在运行时确定所调用的函数代码的
D. 动态联编调用函数的操作是通过指针或对象的引用
满分:5 分
15. 当派生类中有和基类一样名字的成员时,一般来说,( )。
A. 将产生二义性
B. 派生类的同名成员将覆盖基类的成员
C. 是不能允许的
D. 基类的同名成员将覆盖派生类的成员
满分:5 分
16. 设置虚基类的目的是( )。
A. 简化程序
B. 消除二义性
C. 提高运行效率
D. 减少目标代码
满分:5 分
17. 建立包含有类对象成员的派生类对象时,自动调用构造函数的执行顺序依次为( )的构造函数。
A. 自己所属类、对象成员所属类、基类
B. 对象成员所属类、基类、自己所属类
C. 基类、对象成员所属类、自己所属类
D. 基类、自己所属类、对象成员所属类
满分:5 分
18. 对于公有继承,基类中的私有成员在派生类中将 ( )。
A. 能够直接使用成员名访问
B. 能够通过成员运算符访问
C. 仍然是基类的私有成员
D. 变为派生类的私有成员
满分:5 分
19. 当保护继承时,基类的( )在派生类中成为保护成员,在类作用域外不能够通过派生类的对象来直接访问该成员。
A. 任何成员
B. 公有成员和保护成员
C. 保护成员和私有成员
D. 私有成员
满分:5 分
20. C++中的虚基类机制可以保证( )。
A. 限定基类只通过一条路径派生出派生类
B. 允许基类通过多条路径派生出派生类,派生类也就能多次继承该基类
C. 当一个类多次间接从基类派生以后,派生类对象能保留多份间接基类的成员
D. 当一个类多次间接从基类派生以后,其基类只被一次继承
满分:5 分 |
|