2007年9全国计算机等级考试二级笔试试卷
一、选择题(每小题2分,共70分)
(11) 在函数中,可以用auto,extern,register,和static这四个关键字中的一个来说明变量的存 储类型,
如果不说明存储类型,则默认的存储类型是A
A auto
B extern
C register
D static
(12) 对于一个类定义,下列叙述中错误的是B
A如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数 B如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数 C如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数 D如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数
(13) 如果派生类以public方式继承基类,则原基类的protected成员和public成员在派生 类中的访
问类型分别是D
A public 和 public C protected 和 public A int operator-(FunNumber) B FunNumber operator-。 C FunNumber operator-(int) D int operator - (FunNumber)
B public 和 protected D protected 和 protected
(14) 下列运算符函数中肯定不属于类FunNumber的成员函数的是D
(15) C++中的模板包括C
A对象模板和函数模板 C函数模板和类模板
B对象模板和类模板 D变量模板和对象模板
B只能进行格式化输入输出
D只能使用运算符》和《进行输入输出
D byte
(16) 如果调用C++流进行输入输出,下面的叙述中正确的是A
A只能借助于流对象进行输入输出 C只能借助于cin和cout进行输入输出
(17) 下列富豪中不属于C++关键字的是D
A friend
B namespace C continue
(18) 下列各组的ffl申明中,含义相同的一组是B
A unsigned long int 和 long B unsigned short 和 short
B signed short int 和 short D short int 和 int
(19) (20) (21)
必须用一对打括号括起来的程序段是D
A switch语句中的case标号语句 B if语句的分支 C循环语句的循环体 D函数的函数体
语句的int*p=&k定义于指针P,于这个语句等效的语句序列是A A int*p;p=&k B int*p;p=k
D int*p;*p=k
关于函数重载,下列叙述中错误的是C A重载函数的函数名必须相同 B重载函数必须在函数个数或类型上有所不同 C重载函数的返回值类型必须相同 D重载函数的函数体可以有所不同 C int*p;*p=&k
(22)
有如下头文件
IntflO; Static int f2(); Class MA{ Public
Intf3(); Static int f4();
};
在所描述的函数中,具有隐含的this指针的是C
Afl
B f2
Cf3 B共有成员 D保护成员
Df4
(23) 派生类的成员函数不能访问基类的C
A共有成员和保护成员 C私有成员
(24) 下列关于运算符重载的描述中,正确的是A
A运算符重载为成员函数时,若参数表中五参数,重载的是一元运算符 B — 7飞运算符只能作为成员函数重载 C二元运算符重载为非成员函数时,参数表中有一个参数 D C++中可以重载所有的运算符
(25) 下列关于类模板的模板参数的叙述中,错误的是D A模板参数可以作为数据成
员的类型
B模板参数可以作为成员函数的返回类型 C模板参数可以作为成员函数的参数类型 D模板函数不能作为成员函数的局部变量的类型
(26) 已知一程序运行后执行的第一个输出操作是B
Cout?setw( 10)?setfill(*)? 1234 则此操作的输出结构是 A 1234 ******1234
Q *******本**1234 D 1234******
B
(27) 有如下程序A
#include
Public:
MyClass(){ ++count;}
?MyClass() {—count;} Static int getcount() {return count;} Private Static int count; };
Int MyClass:: count=0; Int main(){
Coutccobj,getCount(); MyClass *ptr=ne w MyClass; Cout?MyClass: :getcount();
Delete ptr;
Cout?MyClass: :gercount(); RetumQ; }
程序的输出结果是 A121
B232
C221 D 122
(28) 有如下程序
^include
i:ual(x)<>
const Int ual; w Int main()< Const myclass obj1(10); Myclass obj2(20); 0bj1-| 0bj2.| Return (); > 程序的输出结果是C A val=10 const:val=20 B const:val= 10 const:val=20 val=20 C const:val= 10 val=20 D val=10 (29) 有如下程序 #include Part(int x=(\\): val(x) {cout? val;} -part(){ cout?val;} Int val; }; Class whole { Public; Whole(int x,int y,int z=0):p2(x),pl (y),val(z) {cout?val;} Whole。{count,,val;} Private; Part pi,p2; Int val; }; Int maint{
相关推荐: