计算机等级考试C++考试及答案Word文档格式.docx
- 文档编号:16938035
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:10
- 大小:20.34KB
计算机等级考试C++考试及答案Word文档格式.docx
《计算机等级考试C++考试及答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机等级考试C++考试及答案Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
D)数据库系统需要操作系统的支持
(11)为了取代C中带参数的宏,在C++中使用
A)重载函数B)内联函数C)递归函数D)友元函数
(12)下列关于类定义的说法中,正确的是
A)类定义中包括数据成员和函数成员的声明
B)类成员的缺省访问权限是保护的
C)数据成员必须被声明为私有的
D)成员函数只能在类体外进行定义
(13)下列关于派生类构造函数和析构函数的说法中,错误的是
A)派生类的构造函数会隐含调用基类的构造函数
B)如果基类中没有缺省构造函数,那么派生类必须定义构造函数
C)在建立派生类对象时,先调用基类的构造函数,再调用派生类的构造函数
D)在销毁派生类对象时,先调用基类的析构函数,再调用派生类的析构函数
(14)通过运算符重载,可以改变运算符原有的
A)操作数类型B)操作数个数C)优先级D)结合性
(15)有如下函数模板:
template<
classT>
Tsouare(Tx)(retumx*x;
)
基中T是
A)函数形参B)函数实参C)模板形参D)模板实参
(16)使用输入输出操作符setw,可以控制
A)输出精度B)输出宽度C)对齐方式D)填充字符
(17)下列字符串中,不可以用作C++标识符的是
A)y_2006B)____TEST__HC)RetumD)switch
(18)字面常量42、4.2、42L的数据类型分别是
A)long、doubleintB)long、float、int
C)int、double、longD)int、float、long
(19)执行下列语句段后,输出字符“*”的个数是
for(inti=50;
I>
1;
—i)cout<
<
”*”
A)48B)49C)50D)51
(20)有如下程序段
inti=0,j=1;
int&r=i;
//①
r=j;
//②
int*p=&i;
//③
*p=&r;
//④
基中会产生编译错误的语句是
A)④B)③C)②D)①
(21)有如下函数定义:
voidfunc(inta,int&b){a++;
b++;
}
若执行代码段:
intx=0,y=1
func(x,y);
则变量x和y值分别是
A)0和1B)1和1C)0和2D)1和2
(22)有如下程序:
#include<
iostream>
usingnamespacestd;
classA{
public
staticinta;
voidinit(){a=1;
A(inta=2){init();
a++;
};
intA:
;
a=0
Aobj;
Intmain()
{
cout<
obj.a;
retum0;
运行时输出的结果是
A)0B)1C)2D)3
(23)下列有关继承和派生的叙述中,正确的是
A)派生类不能访问基类的保护成员
B)作为虚基类的类不能被实例化
C)派生类应当向基类的构造函数传递参数
D)虚函数必须在派生类中重新实现
(24)下列运算符中,不能被重载的是
A)&&B)!
=C).D)++
(25)下列函数模板的定义中,合法的是
A)template<
typenameT>
Tabs(Tx){returnx<
0–x:
x;
B)templateclass<
T>
Tabs(Tx){retumx<
0-x;
x;
C)templateT<
classT.>
abs(Tx){retumx<
D)templateTabs(Tx){returmx<
(26)在语句cin>
>
data;
中,cin是
A)C++的关键字B)类名
C)对象名D)函数名
(27)有如下程序:
classtest{
private:
inta;
public:
test(){cout<
”constructor”<
endl;
test(inta){cout<
a<
test(consttest&_test)
a=_testa;
”copyconstructor”<
”destructor”<
intmain()
testA(3)
return0;
A)3
B)constructor
destruclor
C)copyconstructor
D)3
dstructordestruclor
(28)若有如下类声明
classMyClass{
MyClass(){cout<
执行下列语句
MyClassa,b[2],*P[2];
以后,程序的输出结果是
A)11B)111C)1111D11111
(29)有如下程序:
classpoint{
staticintnumber;
point(){number++;
~point(){number-;
imtpoint:
:
number=0;
voidmain(){
point*ptr;
printA,B;
point*ptr_point=newpoint{3};
ptr=ptr_point;
pointC;
point:
number<
delete[]ptr;
A)3B)4C)6D)7
(30)如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员,有如下程序,没有使用多态机制。
classBase{
inta,b;
Bace(intx,inty){a=x;
b=y;
Voidshow(){cout<
’,’<
b<
clsaaDerived:
publicBase{
intc,d;
Derived(intx,inty,intz,intm):
Base(x,y){c=z;
d=m;
c<
’,’d<
BaseB1(50,50),*pb;
DerivedDI(10,20,30,40);
Pb=&D1;
Pb->
show();
Return0;
A)10,20B)30,40C)20,30D)50,50
(31)有如下程序:
classA
public;
A(inti){x=i;
Voidsispa(){cout<
x<
’,’;
Private:
intx;
classB;
publicA
B(inti):
A(i+10){x=i;
vouddispb(){dispa();
endl;
Intx;
Bb
(2);
b.dispb()
retum0:
A)10,2B)12,10C)12,2D)2,2
(32)虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。
有如下程序:
classBase
virtualvoidf(){cout<
”f0+”;
voidg(){cout<
”g0+”;
classDerived:
publicBase
voidf(){cout<
”f+”;
”g+”;
Derivedd;
Base*p=&d;
p->
f();
p->
g();
return0:
A)f+g+B)f0+g+C)f+g0+D)f0+g0+
(33)下面程序中对一维坐标点类Point进行运算符重载
point(intvaI){x=val;
point&operator++(){x++;
retum*this;
printoperator++(int){pointold=*this,++(*this);
retumold;
intGetX()const{retumx;
intx;
pointa(10);
(++a).GetX();
a++.GetX();
retum();
编译和运行情况是
A)运行时输出1011
B)运行时输出1111
C)运行时输出1112
D)编译有错
(34)有如下程序:
charstr[100],*p;
”pleaseinputastring:
”;
cin>
str;
p=str;
for(inti=0;
*p!
=”\0”;
p++,i++);
i<
retum0;
运行这个程序时,若输入字符串为
abcdefgabcd
则输出结果是
A)7B)12C)13D)100
(35)有如下程序:
:
usingnamespacestd:
classSample
friendlongfun(Samples);
Sample(longa){x=a;
longx;
longfun(Samples)
if(s.x<
2)retum1;
retums.x*fun(Sample(s.x-a));
intsum=0
6;
i++){sum+=fun(Sample(i);
)}
sum;
A)120B)16C)154D)34
二、填空题(每空2分,共30分)
请将每一个空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
(1)在深度为7的满二叉树中,度为2的结点个数为【1】。
(2)软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于【2】测试。
(3)在数据库系统中,实现各种数据管理体制功能的核心软件称为【3】。
(4)软件生命周期可分为多个阶段,一般分为定义阶段、开发和维护阶段。
编码和测试属于【4】阶段。
(5)在结构化分析使用的数据流图(DFD)中,利用【5】对其中的图形元素进行确切解释。
(6)C++中只有两个逻辑常量:
true和【6】。
(7)若要访问指针变量p所指向的数据,应使用表达式【7】。
(8)已知一个函数的原型是:
intfn(doublex);
若要以5.27为实参调用该函数,应使用表达式【8】。
(9)有如下定义:
classMA{
intvalue;
MA(intn=0):
valut(n){}
MA*ta,tb;
其中MA类的对象名标识符是【9】。
(10)如下类定义中包含了构造函数和拷贝数的原型声明请在横线处写正确的内容,使拷贝构造函数的声明完整。
ClassmyClass{
Intdata:
Public:
MyClass(intvalue);
//构造函数
MyClass(const【10】anotherObject);
//拷贝构造函数
(11)用来派生新类的称为【11】,而派生出的新类称为它的子类或派生类。
(12)有如下程序:
clsaaCA{
CAD{cout<
A’;
classCB;
privateCA{
CB(){cout<
B’;
intmain(){cout<
intmain(){
CAa;
CBb;
这个程序的输出结果是【12】。
(13)若将一个二元运算符重载为类的成员函数,其形参个数应该是【13】个。
(14)有如下程序:
classDA{
intk;
DA(intx=1):
k(x){}
~DA(){cout<
k;
DAd[]={DA(3),DA(3),DA(3)};
DA*p=newDA[2];
delete[]p;
这个程序的输出结果是【14】。
(15)C++语言中的多态性分为编译时的多态性和【15】时的多态性。
2007年4月计算机等级考试C++考试答案
选择题:
1-5BDACD
6-10CABCA
11-15BADAC
16-20BCDBA
21-25CCCCA
26-30CDBDA
30-35CBBBC
填空:
1、63
2、黑盒
3、DBMS
4、开发
5、数据字典
6、false
7、*P
8、fn(5.27)
9、tb
10、myclass&
11、基类
12、AAB
13、1个
14、11333
15、运行
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机等级考试 C+ 考试 答案