一、选择题
语言属于( C )。
A) 自然语言 B) 机器语言 C)面向对象语言 D) 汇编语言
2. 下面选项中不属于面向对象程序设计特征的是(C) 。
A)继承性 B)多态性 C)相似性 D)封装性 3. 可用作语言用户标识符的一组标识符是( B )。
A) B) a33 _123
C) D) 2a 4. 假定一个二维数组的定义语句为
“ a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为(A)。
A) 0 B) 4 C) 8 D) 6
5. 下列情况中,哪一种情况不会调用拷贝构造函数 ( B )
A)用派生类的对象去初始化基类对象时
B)将类的一个对象赋值给该类的另一个对象时
C)函数的形参是类的对象,调用函数进行形参和实参结合时
D)函数的返回值是类的对象,函数执行返回调用者时
6. 以下哪一关键字可用于重载函数的区分( C )
A) B) C) D)
7. 下列有关数组的叙述中,正确的是( B )
A)中数组的存储方式为列优先存储
B)数组名可以作为实参赋值给指针类型的形参 C)数组下标索引从1开始,至数组长度n结束
D)数组指针的语法形式为:类型名 *数组名[下标表达式];
1.
下列有关继承和派生的叙述中,正确的是( C )
A)派生类不能访问通过私有继承的基类的保护成员 B)多继承的虚基类不能够实例化
C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数
D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现
9. 实现运行时多态的机制是( A )
A)虚函数 B)重载函数 C)静态函数 D)模版函数
10. 若有下面的函数调用:
(, 3, (1, b));
其中实参的个数是( A ) A)3 B)4 C)5 D)6
11. 下列关于指针的说法正确的是( B )
A)指针存在于每个函数之中
B)在类的非静态函数中指针指向调用该函数的对象 C)指针是指向虚函数表的指针
D)指针是指向类的函数成员的指针
12. 在下列关于函数的叙述中,正确的是( C )
A)每个函数至少要有一个参数 B)每个函数都必须返回一个值
C)函数在被调用之前必须先声明 D)函数不能自己调用自己
13. 下列运算符中,不能重载的是 ( C )
A) B) C). D)->
14. 下面程序的输出结果是( B )
<> ;
i = 0;
8.
( n) {
a = 2; ; ; } () {
k = 5; {
i = 2; k (i); }
k (i); << k; }
A)13 B)14 C)15 下面的程序段的运行结果为( D [] = \ << *(2) << ;
A)98 B)无输出结果 CD)字符’b’
下面程序的输出结果是( C <> ; A { :
A ( i) { x = i; }
() { << x << “,”; }D)16
)
)字符’)
b’的地址15. 16. :
x ; };
B : A { :
B( i) : A(10) { x = i; } () { (); << x << ; } :
x ; }; () {
B b(2); (); }
A)10,2 B)12,10 C)12,2 下面程序的输出结果是( C )
<> ; { :
( i) { << i; } () { } };
1: { :
1( i, 0) : (j) { << i; }
D)2,2
17.