|
《面向对象程序设计》在线作业一
试卷总分:100 测试时间:--
单选题
一、单选题(共 20 道试题,共 100 分。)V 1. C++程序的基本模块为( )。
A. 表达式
B. 标识符
C. 语句
D. 函数
满分:5 分
2. 假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为( )。
A. x.a
B. x.a()
C. x->a
D. x->a()
满分:5 分
3. 对于公有继承,基类的公有和保护成员在派生类中将( )成员。
A. 全部变成公有
B. 全部变成保护
C. 全部变成私有
D. 仍然相应保持为公有和保护
满分:5 分
4. 如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为( )。
A. a.operator++(1)
B. operator++(a)
C. operator++(a,1)
D. a.operator++()
满分:5 分
5. 程序中主函数的名字为( )。
A. main
B. MAIN
C. Main
D. 任意标识符
满分:5 分
6. 假定K是一个类名,并有定义“K k; int j;”,已知K中重载了操作符 ( ),且语句“j=k(3);”和“k(5)=99;”都能顺利执行,说明该操作符函数的原形只可能是( )。
A. K operator ( ) (int);
B. int operator ( )(int&);
C. int & operator ( )(int);
D. K &operator( )(int);
满分:5 分
7. 对于一个类的析构函数,其函数名与类名( )。
A. 完全相同
B. 完全不同
C. 只相差一个字符
D. 无关系
满分:5 分
8. 派生类的成员函数可以直接访问基类的( )成员。
A. 所有
B. 公有和保护
C. 保护和私有
D. 私有
满分:5 分
9. 在一个用数组实现的队列类中,假定数组长度为MS,队首元素位置为first,队列长度为length,则队尾的后一个位置为( )。
A. length+1
B. first+length
C. (first+length-1)%MS
D. (first+length)%MS
满分:5 分
10. 设x和y均为bool量,则x || y为假的条件是( )。
A. 它们均为真
B. 其中一个为真
C. 它们均为假
D. 其中一个为假
满分:5 分
11. 在一个类的定义中,包含有( )成员的定义。
A. 数据
B. 函数
C. 数据和函数
D. 数据或函数
满分:5 分
12. 假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为( )。
A. int AA::a()
B. int AA:a()
C. AA::a()
D. AA::int a()
满分:5 分
13. 在下面循环语句中循环体执行的次数为( )。 int i=0,s=0; while(s<20) {i++; s+=i;}
A. 4
B. 5
C. 6
D. 7
满分:5 分
14. 在类作用域中能够通过直接使用该类的( )成员名进行访问。
A. 私有
B. 公用
C. 保护
D. 任何
满分:5 分
15. 假定AA是一个类,abc是该类的一个成员函数,则参数表中隐含的第一个参数为( )。
A. abc
B. *this
C. this
D. this&
满分:5 分
16. x>0 || y==5的相反表达式为( )。
A. x<=0 || y!=5
B. x<=0 && y!=5
C. x>0 || y!=5
D. x>0 && y==5
满分:5 分
17. 双目运算符重载为普通函数时,其参数表中应带有( )个参数。
A. 0
B. 1
C. 2
D. 3
满分:5 分
18. 若需要把一个类外定义的成员函数指明为内联函数,则必须把关键字( )放在函数原型或函数头的前面。
A. in
B. inline
C. inLine
D. InLiner
满分:5 分
19. 对于公有继承,基类中的私有成员在派生类中将 ( )。
A. 能够直接使用成员名访问
B. 能够通过成员运算符访问
C. 仍然是基类的私有成员
D. 变为派生类的私有成员
满分:5 分
20. 关于封装,下列说法中不正确的是( )。
A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体
B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)
C. 通过封装,每个对象都成为相对独立的实体
D. 通过封装,对象的属性都是不可见的
满分:5 分 |
|