|
面向对象程序设计课程作业_B
一、单选题 ( 每题5分, 共15道小题, 总分值75分 )
1.有以下程序 main() { int i,t[][3]={9,8,7,6,5,4,3,2,1}; for(i=0;i<3;i++) printf(“%d”,t[2-i][i]); } 程序的执行后的输出结果是()(5分)
A. 7 5 3
B. 3 5 7
C. 3 6 9
D. 7 5 1
是否存疑
2.静态数据成员的初始化是在( )中进行的(5分)
A. 构造函数
B. 任何成员函数
C. 所属类
D. 全局区
是否存疑
3.有以下程序 int fun(int n) { if(n==1) return 1; else return (n+fun(n-1)); } main() { int x; scanf('%d',&x); x=fun(x); printf('%d ',x); } 程序执行时,给变量x输入10,程序的输出结果是()(5分)
A. 55
B. 54
C. 65
D. 45
是否存疑
4.类中定义的成员默认为( )访问属性(5分)
A. public
B. private
C. protected
D. friend
是否存疑
5.下列有关类继承的叙述中,错误的是()(5分)
A. 继承可以实现软件复用
B. 虚基类可以解决由多继承产生的二义性问题
C. 派生类构造函数要负责调用基类的构造函数
D. 派生类没有继承基类的私有成员
是否存疑
6.用来组织C++程序文件的基本单位是(5分)
A. 字符
B. 语句
C. 函数
D. 源程序文件
是否存疑
7.已知枚举类型声明语句为: enum COLOR{ WHITE,YELLOW,GREEN=5,RED,BLACK=10 }; 则下列说法中错误的是()(5分)
A. 枚举常量 YELLOW 的值为 1
B. 枚举常量 RED 的值为 6
C. 枚举常量 BLACK 的值为 10
D. 枚举常量 WHITE 的值为 1
是否存疑
8.()不是面向对象系统包含的要素(5分)
A. 多态
B. 对象
C. 类
D. 继承
是否存疑
9.下面程序的运行结果是() #include void main() { int num=1; int &ref=num: ref=ref+2; cout<(5分)
A. 13
B. 16
C. 36
D. 33
是否存疑
10.在下列关键字中,不能用来表示继承方式的是()(5分)
A. private
B. static
C. public
D. protected
是否存疑
11.当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时,它最多能够存储 ( )个整数(5分)
A. n
B. n+1
C. n-1
D. 1
是否存疑
12.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()。(5分)
A. main
B. MAIN
C. name
D. function
是否存疑
13.可以用p.a的形式访问派生类对象P的基类成员a,其中a是()(5分)
A. 私有继承的公有成员
B. 公有继承的私有成员
C. 公有继承的保护成员
D. 公有继承的公有成员
是否存疑
14.通过()调用虚函数时,采用动态束定(5分)
A. 对象指针
B. 对象名
C. 成员限定
D. 派生类名
是否存疑
15.下列有关运算符重载的叙述中,正确的是()(5分)
A. 运算符重载是多态性的一种表现
B. C++中可以通过运算符重载创造新的运算符
C. C++中所有运算符都可以作为非成员函数重载
D. 重载运算符时可以改变其结合性
是否存疑
二、判断 ( 每题5分, 共5道小题, 总分值25分 )
1.没有返回值或者返回值为空是一回事。(5分)
是否存疑
2.用struct定义类的时候,如果没有指明成员的访问权限,则默认为公有类型。(5分)
是否存疑
3.若要保证一个公共的基类在在派生类中只产生一个基类子对象,则必须都以虚基类的方式继承它(5分)
是否存疑
4.类对象的类型转换是由强制转换和构造函数完成。(5分)
是否存疑
5.在C++中虚函数帮助实现了类的多态性(5分)
|
|