C++程序设计试题 
一、单项选择题
1.对C++语言和C语言的兼容性,描述正确的选项是〔  A  〕
A.C++兼容C    B.C++局部兼容C   
C.C++不兼容C    D.C兼容C++指向类成员函数的指针
2.在C++中使用流进展输入输出,其中用于屏幕输出的对象是〔  C    〕
A.cerr    B.cin    C.cout    D.cfile
      cerr:标准错误输出;cin:标准输入
3.对使用关键字new所开辟的动态存储空间,释放时必须使用〔  C  〕
A.free  B.create    C.delete  D.release
4.如没有使用private关键字定义类的数据成员,则默认为〔  A  〕
A.Private  B.public    C.protected    D.friend
5.使用值传递方式将实参传给形参,以下说确的是〔  A    〕
A.形参是实参的备份      B.实参是形参的备份   
C.形参和实参是同一对象  D.形参和实参无联系
6.在函数调用时,如*一默认参数要指明一个特定值,则有〔  A    〕
A.其之前所有参数都必须赋值  B.其之后所有参数都必须赋值
C.其前、后所有参数都必须赋值  D.其前、后所有参数都不必赋值
7.设存在函数int ma*(int,int)返回两参数中较大值,假设求22,59,70三者中最大值,以下表达式不正确的选项是〔  C    〕
A.int m = ma*(22,ma*(59,70)); B.int m = ma*(ma*(22,59),70);
C.int m = ma*(22,59,70); D.int m = ma*(59,ma*(22,70));
8.以下哪个类型函数不适合声明为联函数〔    A  〕
A.函数体语句较多 B.函数体语句较少
C.函数执行时间较短 D.函数执行时间过长
9.int Func(int,int);不可与以下哪个函数构成重载〔  B  〕
A.int Func(int,int,int); B.double Func(int,int);
C.double Func(double,double); D.double Func(int,double);
说明:不能以形参名来区分函数;不能以函数返回值来区分函数。必须是形参的个数或者类型不同才能构成函数重载。
10.对类中声明的变量,以下描述中正确的选项是〔  C  〕
A.属于全局变量    B.只属于该类   
C.属于该类,*些情况下也可被该类不同实例所共享
D.任何情况下都可被该类所有实例共享
11.类的私有成员可在何处访问〔  D  〕
A.通过子类的对象访问 B.本类及子类的成员函数中 
C.通过该类对象访问  D.本类的成员函数中
12.如果没有为一个类定义任何构造函数的情况下,以下描述正确的选项是〔  A  〕
A.编译器总是自动创立一个不带参数的构造函数
B.这个类没有构造函数
C.这个类不需要构造函数
D.该类不能通过编译
13.一个类可包含析构函数的个数是〔  B  〕
A.0个      B.1个    C.至少一个      D.0个或多个
只有一个,多了编译器都不知道调用哪个好。而构造函数可以有多个,因为构造函数调用时编译器可以根据变量的类型和数量来确定调用哪个构造函数 ,而析构函数是系统调用的,不能做到这种效果。
14.this指针存在的目的是〔  B  〕
A.保证基类公有成员在子类中可以被访问
B.保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码
C.保证基类保护成员在子类中可以被访问
D.保证基类私有成员在子类中可以被访问
15.以下关于类的权限的描述错误的选项是〔  A    〕
A.类本身的成员函数只能访问自身的私有成员
B.类的对象只能访问该类的公有成员