考试总分:43分
考试类型:模拟试题
作答时间:60分钟
已答人数:967
试卷答案:有
试卷介绍: 2013年9月全国计算机等级《二级C++》上机临考冲刺试卷(3)
A(1)不能删除assert()语句。
B(2)只能修改后面的数字。提示:assert函数如果为假,则会产生一个中断异常。试题程序:#include#includevoidmain(){char*s1="abc"://********error********assert(sizeof(s1)==3):cout<<"sizeof(s1)=5"<chars2[10]="ab"://********error********assert(sizeof(s2)==2);cout<<"sizeof(s2)=10"<chars3=23://********error********assert(sizeof(s3)==4);cout<<"sizeof(s3)=1"<return;}[18分]
A(1)定义私有数据成员leftPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标,它们都是double型的数据。请在注释1之后添加适当的语句。
B(2)完成默认构造函数CRect的定义,指定默认实参为0,它们都是double型的数据。请在注释2之后添加适当的语句。
C(3)定义函数体为空的析构函数。请在注释3之后添加适当的语句。
D(4)在main函数中定义GReet类的实例rect2,并把re-ct1的值赋给rect2。请在注释4之后添加适当的语句。注意:除在指定位置添加语句之外,不要改动程序中的其他内容。试题程序:#includeclassCRect{private://********1********public://********2********//********3********voidSetPoints(double,double,double,double);voidSetLeftPoint(doublem){leftPoint=m;}voidSetRightPoint(doublem){rightPoint=m;}voidSetTopPoint(doublem){topPoint=m;}voidSetBottomPoint(doublem){bottomPoint=m;}voidDisplay();};CReet::CRect(double1,doublet,doubler,doubleb){leftPoint=1;topPoint=t;rightPoint=r;bottomPoint=b;}voidCRect::Setpoints(double1,doublet,doubler,doubleb){leftPoint=1;topPoint=t;rightPoint=n;bottomPoint=b;}voidCRect::Display(){cout<<"left-toppointis("<<leftpoint<<","<<top-Point<<")"<<'\n';cout<<"right-bottompointis("<<rightpoint<<","<<bottompoint<<")"<<'\n';}voidmain(){CRectrect0;rect0.Display();rect0.SetPoints(20,20.6,30,40);rect0.Display();CRectrectl(0,0,150,150);rect1.SetTopPoint(10.5);rect1.SetLeftPoint(10.5);//********4********rect2.Display();}[18分]
A2009var
Bgoto
Ctest-2009
D123
AACBEDGFH
BABDGCEHE
CHGFEDCBA
DABCDEFGH
Aofstreammyfile;myfile.open("d:ofile.txt");
Bofstream*myfile=newofstream;myfile->open("d:ofile.txt”);
Cofstreammyfile("d:ofile.txt");
Dofstream*myfile=new("d:ofile.txt");
A冒泡排序为n/2
B冒泡排序为n
C快速排序为n
D快速排序为n(n-1)/2
A软件测试
B概要设计
C软件维护
D详细设计
A10
B16
C26
D36
A快速排序
B选择排序
C堆排序
D冒泡排序
Acout<<internal<<12345;
Bcout<<left<<12345;
Ccout<<right<<12345;
Dcout<<setw(6)<
A栈顶元素最先能被删除
B栈顶元素最后才能被删除
C栈底元素永远不能被删除
D以上三种说法都不对
A全局变量的作用域一定比局部变量的作用域范围大
B静态类别变量的生存期贯穿于整个程序的运行期间
C函数的形参都属于全局变量
D未在定义语句中赋初值的aut0变量和static变量的初值都是随机值
A设置虚基类的目的是为了消除二义性
B虚基类的构造函数在非虚基类之后调用
C若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用
D若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数
A5
B7
C9
D12
Acin.get(str,strlen(str));
Bcin.getline(str,strlen(str));
Ccin>>str;
Dcin.read(str,strlen(str));
A0
B1
C2
D3
A5
B7
C9
D12
Aenumtest{RED,YELLOW,BLUE,BLACK};
Benumtest{RED,YELLOW=4,BLUE,BLACK);
Cenumtest{RED=-1,YELLOW,BLUE,BLACK};
Denumtest{RED,YELLOW=6,BLUE,BLACK);
Afriendvoidf();
Bfriendvoidf(x);
CfriendvoidA::f();
DfriendvoidC::f(x);
Aunsignedlongint和long
Bsignedshort和short
Cunsignedshort和short
Dshortint和int
AFractionoperator+(Fraction,Fraction);
BFractionoperator-(Fraction);
CFraction&operator=(Fraction&,Fraction);
DFraction&operator+=(Fraction&,Fraction):
A函数模板是一个实例函数
B使用函数模板定义的函数没有返回类型
C函数模板的类型参数与函数的参数相同
D通过使用不同的类型参数,可以从函数模板得到不同的实例函数
Aifstreamfin;fin.open("d:\\test.txt",iso_base::in);
Bfstreamfi0;ri0.open("d:\\test.txt",is0_base::out);
Cofstream。fort;lout.open("d:\\test.txt",ios_base::out);
Dofstreamfout;fout.open("d:\\test.txt",is0_base::app);
ADB包括DBS和DBMS
BDBMS包括DB和DBS
CDBS包括DB和DBMS
D没有任务关系
A软件测试应该由程序开发者来完成
B程序经调试后一般不需要再测试
C软件维护只包括对程序代码的维护
D以上三种说法都不对
A7
B8
C9
D10
A自然连接
B交
C除
D并
AACBDFEG
BACBDFGE
CABDCGEF
DFCADBEG
Ao115
Bo118
C1.5e1.5
D115L
A运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符
B一元运算符只能作为成员函数重载
C二元运算符重载为非成员函数时,参数表中有一个参数
DC++中可以重载所有的运算符
A类Person是类Undergraduate的基类
B类Undergraduate从类Student公有继承
C类Student是类Person的派生类
D类Undergraduate是类Person的派生类
A构造函数
B抽象类
C派生类
D以上都不对
A10,10,10
B10,12,14
C8,10,12
D8,12,10
AO3
B13
C14
D24
A选择
B投影
C插入
D连接
A1
B2
C3
D4
A纯虚函数是一种特殊的虚函数,它没有具体的实现
B抽象类是指具有纯虚函数的类
C一个基类声明了纯虚函数,该基类的派生类一定不是抽象类
D抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出
Acout<<internal<<12345;
Btout<<left<<12345;
Ccout<<right<<12345;
Dtout<<setw(6)<
A1
B0
C非0的数
D-1
A①和③
B①和④
C②和③
D②和④
AMyClockoperator+(MyClock,long);
BMyClockoperator+(MyClock,MyCloek);
CMyCloekoperator+(long,long);
DMyClockoperator+(long,MyCloek):
Abreak可以用于循环体内
Bbreak语句可以在for循环语句中出现多次
Cbreak语句可以在switch语句中出现多次
Dbreak语句可用于if条件判断语句内