二级C++真题及答案解析Word下载.docx
- 文档编号:16881805
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:51
- 大小:38.52KB
二级C++真题及答案解析Word下载.docx
《二级C++真题及答案解析Word下载.docx》由会员分享,可在线阅读,更多相关《二级C++真题及答案解析Word下载.docx(51页珍藏版)》请在冰豆网上搜索。
第6题
下列关于运算符函数的描述中,错误的是( )。
A.运算符函数的名称总是以operator为前缀
B.运算符函数的参数可以是对象
C.运算符函数只能定义为类的成员函数
D.在表达式中使用重载的运算符相当予调用运算符重载函数
(7/40)单项选择题
第7题
一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是( )。
A.12345ABCDE
B.EDCBA54321
C.ABCDEl2345
D.5432lEDCBA
(8/40)单项选择题
第8题
在数据管理技术发展的三个阶段中,数据共享最好的是( )。
A.人工管理阶段
B.文件系统阶段
C.数据库系统阶段
D.三个阶段相同
(9/40)单项选择题
第9题
下面程序的运行结果为( )。
#include<iostream.h>
voidmain(){
chara=’3’:
switch(8)
case'
3'
:
cout<<”3”:
2'
cout<<”2”;
break;
default:
cout<<”l”;
}
A.3
B.321
C.31
D.32
(10/40)单项选择题
第10题
数据库设计中反映用户对数据要求的模式是( )。
A.内模式
B.概念模式
C.外模式
D.设计模式
(11/40)单项选择题
第11题
一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( )。
A.16
B.10
C.6
D.4
(12/40)单项选择题
第12题
下列( )是C++语言的有效标识符。
A.No1
B.N0.1
C.12345
D.int
(13/40)单项选择题
第13题
下列关于运算符重载的叙述中,错误的是( )。
A.有的运算符可以作为非成员函数重载
B.所有的运算符都可以通过重载而被赋予新的含义
C.不得为重载的运算符函数的参数设置默认值
D.有的运算符只能作为成员函数重载
(14/40)单项选择题
第14题
下列关于栈的叙述正确的是( )。
A.栈按“先进先出”组织数据
B.栈按“先进后出”组织数据
C.只能在栈底插入数据
D.不能删除数据
(15/40)单项选择题
第15题
软件生命周期中的活动不包括( )。
A.市场调研
B.需求分析
C.软件测试
D.软件维护
(16/40)单项选择题
第16题
下面对静态数据成员的描述中,正确的是( )。
A.静态数据成员是类的所有对象共享的数据
B.类的每个对象都有自己的静态数据成员
C.类的不同对象有不同的静态数据成员值
D.静态数据成员不能通过类的对象调用
(17/40)单项选择题
第17题
软件按功能可以分为:
应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( )。
A.编译程序
B.操作系统
C.教务管理系统
D.汇编程序
(18/40)单项选择题
第18题
下面叙述中错误的是( )。
A.软件测试的目的是发现错误并改正错误
B.对被调试的程序进行“错误定位”是程序调试的必要步骤
C.程序调试通常也称为Debug
D.软件测试应严格执行测试计划,排除测试的随意性
(19/40)单项选择题
第19题
层次型、网状型和关系型数据库划分原则是( )。
A.己录长度
B.文件的大小
C.联系的复杂程度
D.数据之间的联系方式
(20/40)单项选择题
第20题
#include<iostream.h>voidswap(int&a,intB.inttemp;
temp=a++:
a=b:
b=temp;
voidmain()
{
ima=2,b=3;
swap(a,B.;
eout<<a<<”,”<<b<<endl;
A.2,3
B.3,2
C.2,2
D.3,3
(21/40)单项选择题
第21题
有如下程序:
#inClude<iostream>usingnamespaCestd;
ClassMyClass{
publiC:
MyClass(intX):
val(X){}
voidPrint()Const}tout<<”Const:
val=”<<val<<’\t’;
}voidPrint(){tout<<”val=”<<val<<’\t’;
private:
intval;
};
intmain(){
ConstMyClassobjl(10);
MyClassobj2(20);
objl.Print();
obj2.Print();
retum0;
执行这个程序的输出结果是( )。
A.val=10Const:
val=20
B.Const:
val=10Const:
C.Const:
val=10val=20
D.val=10val=20
(22/40)单项选择题
第22题
一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。
A.一对一
B.一对多
C.多对多
D.多对一
(23/40)单项选择题
第23题
下列程序的运行结果是( )。
#include<iostream.h>classLoeation{
intX,Y;
public:
voidinit(int=0,int=0);
voidvalueX(intval){X=val;
}intvalueX(){returnx;
voidvalueY(intval){Y=val;
}intvalueY(){returnY;
}};
voidLocation:
init(intinitX,intinitY){X=initX;
Y=initY4}
voidmain(X
{LocationA,B;
A.5
6
4
B.0
C.5
2
D.0
(24/40)单项选择题
第24题
#include<iostream.h>classA
staticintn;
A(){n=1;
A(intnum){n=hum;
}voidprint(){cout<<n;
}}:
intA:
n=2;
Aa,b(3);
a.print();
b.print();
cout<<endl:
A.11
B.13
C.23
D.33
(25/40)单项选择题
第25题
负责数据库中查询操作的数据库语言是( )。
A.数据定义语言
B.数据管理语言
C.数据操纵语言
D.数据控制语言
(26/40)单项选择题
第26题
已知枚举类型声明语句为:
enumCOl,OR{WHITE,YELLOW,GREEN=5,RED,BLACK=10};
则下列说法中错误的是( )。
A.枚举常量YELLOW的值为1
B.枚举常量RED的值为6
C.枚举常量BLACK的值为10
D.枚举常量WHITE的值为1
(27/40)单项选择题
第27题
#include<iostream>
usingnamespacestd;
classBase
voidfunl(){cout<<”Base\n”;
virtualvoidfun2(){eout<<”Base\n”;
};
classDerived:
publicBase{
voidfunl(){eout<<”Derived、n”;
voidfura(){eout<.<”Derived\n”;
voidf(Base&
B.}b.funl();
b.ftm2();
intmain()
Derivedobj;
f(obj);
return0;
A.Base
Base
B.Base
Derived
C.Derived
D.Derived
(28/40)单项选择题
第28题
有如下类声明:
classSAMPLE
intn:
SAMPLE(inti=0):
n(i){}
voidsetValue(intnO);
下列关于9etValue成员函数的定义中,正确的是( )。
A.SAMPLE:
setValue(intnO){n=n0;
B.voidSAMPLE:
setValue(int胡){n=n0;
C.voidsetValue(intnO){n=n0;
D.setValue(intnO){n=n0;
(29/40)单项选择题
第29题
下列关于c++函数的说明中,正确的是( )。
A.内联函数就是定义在另一个函数体内部的函数
B.函数体的最后一条语句必须是return语句
C.标准c++要求在调用一个函数之前,必须先声明其原型
D.编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式
(30/40)单项选择题
第30题
ClassMusiC{
voidsetTitle(Char*str){strCpy(title,str);
}proteCted:
Chartype[10];
private:
Chartitle[20];
ClassJazz:
publiCMusiC{publiC:
voidset(Char*str){
strCpy(type,”Jazz'
’);
//①strCpy(title,str);
//②
}};
下列叙述中正确的是( )。
A.程序编译正确
B.程序编译时语句①出错
C.程序编译时语句②出错
D.程序编译时语句①和②都出错
(31/40)单项选择题
第31题
在公有继承的情况下,允许派生类直接访问的基类成员包括( )。
A.公有成员
B.公有成员和保护成员
C.公有成员、保护成员和私有成员
D.保护成员
(32/40)单项选择题
第32题
有三个关系R、S和T如下:
图片
由关系R和S通过运算得到关系T,则所使用的运算为( )。
A.笛卡尔积
B.交
C.并
D.自然连接
(33/40)单项选择题
第33题
有如下类定义:
classMyClass
______________________________________
intdata;
若要为MyClass类重载流输入运算符“>>”,使得程序中可以“cin>>obj;
”的形式改变MyClass类的对象0bj中数据成员data的值,则横线处的声明语句应为( )。
A.friendistream&
operator>>(istream&
is,MyClass&
A.;
B.friendistream&
operator>>(istream&
is,MyClassA.;
C.istream&
D.istream&
(34/40)单项选择题
第34题
ClassSample{
friendlongfun(SampleS);
publiC:
Sample(10ngA.{x=a;
}private:
longX;
longfun(SampleS){
if(S.x<2)returnl;
returnS.X*fun(Sample(s.x-1));
}
intmain( ){
intsum=0;
for(inti=0;
i<6;
i++){sum+=fun(Sample(i));
Cout<<sum:
return0;
A.120
B.16
C.154
D.34
(35/40)单项选择题
第35题
ClassBook{
Book(Char*t=””){strCpy(title,t);
Chartitlel40];
ClassNovel:
publiCBook{publiC:
Novel(Char*t=””):
Book(t){}
Char*Category( )Const{return”文学”;
intmain( ){Book*pb;
pb=newNovel( );
Cout<<pb→Category( );
deletepb;
若程序运行时输出结果是“文学”,则横线处缺失的语句是( )。
A.Char*Category( );
B.Char*Category( )Const;
C.virtualChar*Category( )Const;
D.virtualChar*Category( )Const=0;
(36/40)单项选择题
第36题
有如下头变件:
intf1()
StatiCintf2();
ClassMA
intf3();
1statiCintf4();
在所描述的函数中,具有隐含的this指针的是( )。
A.f1
B.f2
C.B
D.f4
(37/40)单项选择题
第37题
A.静态数据成员可以在类体内进行初始化
B.静态数据成员不可以被类的对象调用
C.静态数据成员不能受private控制符的作用
D.静态数据成员可以直接用类名调用
(38/40)单项选择题
第38题
设inta=10,b=11,C=12;
,表达式(a+B.<C&
&
b==C的值是( )。
A.2
C.-2
D.1
(39/40)单项选择题
第39题
下列说法正确的是( )。
A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
C.类的内联函数必须在类体内定义
D.类的内联函数必须在类体外通过加关键字inline定义
(40/40)单项选择题
第40题
下面对于友元函数描述正确的是( )。
A.友元函数的实现必须在类的内部定义
B.友元函数是类的成员函数
C.友元函数破坏了类的封装性和隐藏性
D.友元函数不能访问类的私有成员
(1/1)基本操作题
第41题
请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程projl,此工程中含有一个源程碍文件projl.epp。
其中位于每个注释“//ERROR****found****”之后的一行语句存在错误。
请改正这些错误,使程序的输出结果为:
ConstruCtorCalled.Thevalueis10
CopyConstruCtorCalled.Thevalueis10
DestruCtorCalled.DestruCtorCalled.注意:
只修改注释“//ERROR****found****”的下一行语句,不要改动程序中的其他内容。
//pwjl.Cpp
#inClude<iostream>’usingnamespaCestd;
ClassMyClass{
//ERROR**********found**********
MyClass(inti)
{value=i;
Cout<<”ConstruCtorCalled.”<<endl;
//ERROR**********found**********MyClass(eonstMyClassP)
value=P.value;
eout<<”CopyConstruCtorCalled.”<<endl;
voidPrint()
{Cout<<”Thevalueis”<<value<<endl;
//ERROR**********found*********void-MyClass()
{Cout<<”DestruCtorCalled.”<<endl;
intvalue;
intmain()
{MyChasobjl
owl.Print();
MyClmssobj2(owl);
retum0;
(1/1)简单应用题
第42题
请使用VC6或使用【答题】菜单打开考生文件夹pr092下的工程pros2。
此工程中包含一个程序文件main.cpp,其中有“部门”类Department和“职工”类Staff的定义,还有主函数main的定义。
在主函数中定义了两个“职工”对象,他们属于同一部门。
程序展示,当该部门改换办公室后,这两个人的办公室也同时得到改变。
请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。
此程序的正确输出结果应为:
改换办公室前:
职工号:
0789姓名:
张三部门:
人事处办公室:
521
0513姓名:
李四部门:
改换办公室后:
311
注意:
只在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
classDepartment{//“部门”类
Department(constchar*name,constchar*office){
strcpy(this一>name,nanle);
//**********found**********
constchar*getName()const{returnname;
}//返回部门名称
constchar*getOffice()const{________}//返回办公室房号
voidchangeOfficeTo(constchar*office){//改换为指定房号的另一个办公室
strcpy(this一>office,office);
charname[20];
//部门名称
charoffice[20];
//部门所在办公室房号
classstaff{//“职工”类
Staff(constchar*my—id,constchar木my_name,Department&
my_dept):
——{
strcpy(this一>staffid,my_id);
strcpy(this一>name,my_name);
constchar*getlD()const{returnst
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 C+ 答案 解析