c++测习题(带答案)

精心整理

一、选择题

1. C++语言属于(C)。

A)自然语言B)机器语言C)面向对象语言D)汇编语言 2. 下面选项中不属于面向对象程序设计特征的是(C)。

A)继承性B)多态性C)相似性D)封装性

3. 下列情况中,哪一种情况不会调用拷贝构造函数(B)

A)用派生类的对象去初始化基类对象时 B)将类的一个对象赋值给该类的另一个对象时 C)函数的形参是类的对象,调用函数进行形参和实参结合时 D)函数的返回值是类的对象,函数执行返回调用者时 4. 以下哪一关键字可用于重载函数的区分(C) A)extern B)static C)const D)virtual 5. 下列有关数组的叙述中,正确的是(B) A)C++中数组的存储方式为列优先存储 B)数组名可以作为实参赋值给指针类型的形参 C)数组下标索引从1开始,至数组长度n结束 D)数组指针的语法形式为:类型名*数组名[下标表达式]; 6. 下列有关继承和派生的叙述中,正确的是(C) A)派生类不能访问通过私有继承的基类的保护成员 B)多继承的虚基类不能够实例化 C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数 D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现 7. 若有下面的函数调用: fun(a+b,3,max(n-1,b)); 其中实参的个数是(A) A)3 B)4 C)5 D)6 8. 下列关于this指针的说法正确的是(B) A)this指针存在于每个函数之中 B)在类的非静态函数中this指针指向调用该函数的对象 C)this指针是指向虚函数表的指针 D)this指针是指向类的函数成员的指针 9. 在下列关于C++函数的叙述中,正确的是(C)

A)每个函数至少要有一个参数

B)每个函数都必须返回一个值

C)函数在被调用之前必须先声明 D)函数不能自己调用自己 10. 下列运算符中,不能重载的是(C)

A)&&

B)!=

C).

D)->

11. 下面程序的输出结果是(B)

精心整理

精心整理

#include usingnamespacestd; inti=0;

intfun(intn) {

staticinta=2; a++;

returna+n; }

voidmain() {

intk=5; { inti=2; k+=fun(i); } k+=fun(i); cout< usingnamespacestd; classBase { public: virtualvoidf(){cout<<“f0+”;} voidg(){cout<<“g0+”;} }; classDerived:publicBase { public: voidf(){cout<<“f+”;} voidg(){cout<<“g+”;} }; voidmain(){Derivedd;Base*p=&d;p->f();p->g();} A)f+g+ B)f0+g+ C)f+g0+ D)f0+g0+ 13. 以下程序的输出结果是:(D) #include usingnamespacestd; intfun(char*s) {char*p=s;

while(*p!='\\0')p++; return(p-s); }

voidmain(){

cout<

精心整理

精心整理

A.0B.1 C.2D.3 14. 有如下程序段:

inti=1; while(1) { i++;

if(i==10)break; if(i%2==0)cout<<’*’; } 执行这个程序段输出字符*的个数是(C) A.10B.3 C.4D.5 15. 下列关于虚基类的描述中,错误的是(C) A. 使用虚基类可以消除由多继承产生的二义性 B. 构造派生类对象时,虚基类的构造函数只被调用一次 C. 声明classB:virtualpublicA说明类B为虚基类 D. 建立派生类对象时,首先调用虚基类的构造函数 16. 有下类定义 ClassA{ Char*a; Public: A():a(0){} A(char*aa){//把aa所指字符串拷贝到a所指向的存储空间 A=___________________; Strcpy(a,aa); ~A(){delete[]a;} }; 正确的选择是(A) A.newchar[strlen(aa)+1]B.char[strlen(aa)+1] C.char[strlen(aa)]D.newchar[sizeof(aa)-1] 17. 有如下程序:

#include usingnamespacestd; classTest{ public: Test(){}

~Test(){cout<<'#';}

精心整理

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4