计算机二级考试习题练习

2007年9全国计算机等级考试二级笔试试卷
1题:在函数中,可以用auto,extem,register,和static这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是()
A.auto
B.extem
C.register
D.static
【单选题】:      

2题:对于一个类定义,下列叙述中错误的是()
A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数
B.如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数
C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数
D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数
【单选题】:      

3题:如果派生类以public方式继承基类,则原基类的protected成员和public成员在派生类中的访问类型分别是()
A.public和public
B.public和protected
C.protected和public
D.protected和protected
【单选题】:      

4题:下列运算符函数中肯定不属于类FunNumber的成员函数的是()
A.intoperator-(FunNumber)
B.FunNumberoperator-()
C.FunNumberoperator-(int)
D.intoperator–(FunNumber)
【单选题】:      

5题:C++中的模板包括()
A.对象模板和函数模板
B.对象模板和类模板
C.函数模板和类模板
D.变量模板和对象模板
【单选题】:      

6题:如果调用C++流进行输入输出,下面的叙述中正确的是()
A.只能借助于流对象进行输入输出
B.只能进行格式化输入输出
C.只能借助于cin和cout进行输入输出
D.只能使用运算符》和《进行输入输出
【单选题】:      

7题:下列富豪中不属于C++关键字的是()
A.friend
B.namespace
C.continue
D.byte
【单选题】:      

8题:下列各组的量申明中,含义相同的一组是()
A.unsignedlongint和long
B.signedshortint和short
C.unsignedshort和short
D.shortint和int
【单选题】:      

9题:必须用一对打括号括起来的程序段是()
A.switch语句中的case标号语句
B.if语句的分支
C.循环语句的循环体
D.函数的函数体
【单选题】:      

10题:语句的int*p=&k定义于指针P,于这个语句等效的语句序列是()
A.int*p;p=&k
B.int*p;p=k
C.int*p;*p=&k
D.int*p;*p=k
【单选题】:      

11题:关于函数重载,下列叙述中错误的是()
A.重载函数的函数名必须相同
B.重载函数必须在函数个数或类型上有所不同
C.重载函数的返回值类型必须相同
D.重载函数的函数体可以有所不同
【单选题】:      

12题: 有如下头文件
&nBsp;int F1();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
stAtiC int F2();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss mA{&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
puBliC&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
int F3();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
stAtiC int F4();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
};&nBsp;
在所描述的函数中,具有隐含的this指针的是
A F1&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B F2&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; C F3&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; D F4
&nBsp;
【单选题】:      

13题:派生类的成员函数不能访问基类的()
A.共有成员和保护成员
B.共有成员
C.私有成员
D.保护成员
【单选题】:      

14题:下列关于类模板的模板参数的叙述中,错误的是()
A.模板参数可以作为数据成员的类型
B.模板参数可以作为成员函数的返回类型
C.模板参数可以作为成员函数的参数类型
D.模板函数不能作为成员函数的局部变量的类型
【单选题】:      

15题: 已知一程序运行后执行的第一个输出操作是
Cout<<sEtw(10)<<sEtFill(*)<<1234&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
&nBsp;则此操作的输出结构是
A 1234&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B ******1234&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; C **********1234&nBsp; D 1234******
【单选题】:      

16题: 有如下程序
#inCluDE <iostrCAm>&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
using nAmEspACE stD;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss myClAss{&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; puBliC:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
myClAss(){++Count;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
~myClAss(){--Count;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
stAtiC int gEtCount(){rEturn Count;} privAtE&nBsp;&nBsp;
stAtiC int Count; };&nBsp; int myClAss::Count=0; int mAin(){&nBsp;&nBsp;&nBsp;&nBsp;
myClAss oBj;&nBsp;&nBsp;&nBsp;&nBsp;
Cout<<oBj,gEtCount();&nBsp;&nBsp;&nBsp;&nBsp;
myClAss*ptr=nEw myClAss;&nBsp;&nBsp;&nBsp;
Cout<<myClAss::gEtCount();&nBsp;
DElEtE ptr;&nBsp;&nBsp;&nBsp;&nBsp;
Cout<<myClAss::gErCount();&nBsp;&nBsp;&nBsp;
rEturn();
}&nBsp;
程序的输出结果是
&nBsp; A 121&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B 232&nBsp;&nBsp;&nBsp;&nBsp; C 221&nBsp;&nBsp;&nBsp; D 122
&nBsp;
【单选题】:      

17题: 有如下程序&nBsp;&nBsp;&nBsp;&nBsp;
#inCluDE <iostrEAm>&nBsp;&nBsp;&nBsp;
using nAmEspACE stD;&nBsp;&nBsp;&nBsp;
ClAss pArt{&nBsp;&nBsp;&nBsp; puBliC;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
pArt(int x=(\):vAl(x){Cout,,vAl;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
-pArt(){Cout<<vAl;}&nBsp;&nBsp;&nBsp;&nBsp;
privAtE;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
int vAl;&nBsp;&nBsp;&nBsp;&nBsp; };&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss wholE{&nBsp;&nBsp;&nBsp;&nBsp;
puBliC;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
wholE(int x,int y,int z=0):p2(x),p1(y),vAl(z){Cout<<vAl;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
wholE(){Count,,vAl;}&nBsp;&nBsp;&nBsp;&nBsp;
privAtE;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
pArt p1,p2;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
int vAl;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; };&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
int mAint{&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
wholE oBj(1,2,3);&nBsp;
rEsturn();&nBsp;&nBsp;&nBsp;&nBsp;
}&nBsp;
程序输出的结果是
A 123321&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B 213312&nBsp;&nBsp;&nBsp;&nBsp; C 213
&nBsp;
【单选题】:      

18题: 有如下程序:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
#inCluDE <iostrEAm>&nBsp;&nBsp;&nBsp;&nBsp;
using nAmEspACE stD;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss BAsE{&nBsp;&nBsp;&nBsp;&nBsp; puBliC:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
BAsE(int x=0){Cout<<x;}&nBsp;&nBsp;&nBsp;&nBsp;
};&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss DErivED : puBliC BAsE{&nBsp;&nBsp;&nBsp;&nBsp;
puBliC:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
DErivEDrin(x=y){Cout<<x;}&nBsp;&nBsp;&nBsp;&nBsp;
priBliC:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
BAsE vAl;&nBsp;&nBsp;&nBsp;&nBsp;
};&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; i
nt mAin(){&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
DErivED D(!);&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
rEturn();&nBsp;&nBsp;&nBsp;&nBsp;
}&nBsp;
程序的输出结果是
&nBsp;A 0&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B 1&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; C 01&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; D 001
【单选题】:      

19题: 若有如下类定义:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAsss B {&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
voiD Fun(){}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
protECtED;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
DouBlE vArl;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
puBliC:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
voiD Fun2(){}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
};&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss D:puBliC B{&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
protECtED;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
voiD Fun3(){}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
};&nBsp;
已知oBj是类D的对象,下列语句中不违反成员访问控制的权限的是
A oBj.Fun1();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B oBj.vAr1;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; C oBj.Fun2();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; D oBj.Fun3();
【单选题】:      

20题: 有如下程序:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
#inCluDE<iostrEAm>&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
using nAmEspACE siD;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss BAsE{&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
puBliC;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
voiD output(){Cout<<1;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
virtuAl voiD print() {Cout<<B;}
};&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ClAss DErivED:puBliC BAsE{&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
puBliC:&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
voiD output(){Cout<<2;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
voiD print(){Cout<<’D’;}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
};&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
int mAin()&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
BAsE * pAssnEw DErivED;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ptr->output();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
ptr->print();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
DElEtE ptr;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
rEturn();&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
}&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;
程序的输出结果是
A 1B&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; B 1D&nBsp;&nBsp;&nBsp;&nBsp; C 2B&nBsp;&nBsp;&nBsp;&nBsp; D 2D
&nBsp;
【单选题】:      

21题: 下列是重载乘法运算的函数原型声明,其中错误的是
A myClAss opErAtor*(DouBlE,DouBlE); B myClAss opErAtor*(DouBlE,myClAss);
C myClAss opErAtor*(myClAss,DouBlE); D myClAss opErAtor*( myClAss , myClAss);
【单选题】:      

 

您正在结束答题

请确认是否提交试卷?

继续做题 确认提交