计算机二级c真题及复习资料Word文件下载.docx
- 文档编号:19296734
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:87
- 大小:130.96KB
计算机二级c真题及复习资料Word文件下载.docx
《计算机二级c真题及复习资料Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机二级c真题及复习资料Word文件下载.docx(87页珍藏版)》请在冰豆网上搜索。
D)ch>
&
(13)已知下列语句中的x和y都是int型变量,其中错误的语句
A)x=y++;
B)x=++y;
C)(x+y)++;
D)++x=y;
(14)执行语句序列
intn;
cin>
>
n;
switch(n)
{case1:
case2:
cout<
'
1'
;
case3:
case4:
2'
break;
default:
3'
}
时,若键盘输入1,则屏幕显示
A)1B)2C)3D)12
(15)下列程序的输出结果是
#include<
iostream>
usingnamespacestd;
intmain()
{
chara[]="
Hello,World"
char*ptr=a;
while(*ptr)
{
if(*ptr>
='
a'
*ptr<
z'
)
char(*ptr+'
-'
);
elsecout<
*ptr;
ptr++;
}
return0;
A)HELLO,WORLDB)Hello,World
C)hELLO,wORLDD)hello,world
(16)已知:
intm=10;
在下列定义引用的语句中,正确的是
A)int&
x=m;
B)inty=&
m;
C)int&
z;
D)int&
t=&
(17)下列函数原型声明中错误的是
A)voidFun(intx=0,inty=0);
B)voidFun(intx,inty);
C)voidFun(intx,inty=0);
D)voidFun(intx=0,inty);
(18)已知程序中已经定义了函数test,其原型是inttest(int,int,int);
,则下列重载形式中正确的是
A)chartest(int,int,int);
B)doubletest(int,int,double);
C)inttest(int,int,int=0);
D)floattest(int,int,float=3.5F);
(19)有以下程序
#include<
inti=0;
voidfun()
{{
staticinti=1;
std:
:
cout<
i++<
'
'
std:
i<
fun();
程序执行后的输出结果是
A)1,2,1,2,B)1,2,2,3,C)2,0,3,0,D)1,0,2,0,
(20)已知函数f的原型是:
voidf(int*a,long&
b);
变量v1、v2的定义是:
intv1;
longv2;
,正确的调用语句是
A)f(v1,&
v2);
B)f(v1,v2);
C)f(&
v1,v2);
D)f(&
v1,&
(21)有以下类定义
classMyClass
public:
MyClass(){cout<
1;
};
则执行语句MyClassa,b[2],*p[2];
后,程序的输出结果是
A)11B)111C)1111D)11111
(22)关于友元,下列说法错误的是
A)如果类A是类B的友元,那么类B也是类A的友元
B)如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员
C)友元关系不能被继承
D)如果类A是类B的友元,那么类A
(25)在公有派生的情况下,派生类中定义的成员函数只能访问原基类的
A)公有成员和私有成员B)私有成员和保护成员
C)公有成员和保护成员D)私有成员、保护成员和公有成员
(26)在C++中用来实现运行时多态性的是
A)重载函数B)析构函数
C)构造函数D)虚函数
(27)一个类可以同时继承多个类,称为多继承。
下列关于多继承和虚基类的表述中,错误的是
A)每个派生类的构造函数都要为虚基类构造函数提供实参
B)多继承时有可能出现对基类成员访问的二义性问题
C)使用虚基类可以解决二义性问题并实现运行时的多态性
D)建立最派生类对象时,虚基类的构造函数会首先被调用
(28)在一个类体的下列声明中,正确的纯虚函数声明是
A)virtualvoidvf()=0;
B)voidvf(int)=0;
C)virtualintvf(int);
D)virtualvoidvf(int){}
(29)在下面的运算符重载函数的原型中,错误的是
A)Volumeoperator-(double,double);
B)doubleVolume:
operator-(double);
C)VolumeVolume:
:
operator-(Volume);
D)Volumeoperator-(Volume,Volume);
(30)下列是模板声明的开始部分,其中正确的是
A)template<
T>
B)template<
classT1,T2>
C)template<
classT1,classT2>
D)template<
classT1;
classT2>
(31)执行语句序列
ofstreamoutfile("
DATA.DAT"
if(...)cout<
"
OK"
FAIL"
后,如果文件打开成功显示“OK”,否则就显示“F厶n。
”。
由此可知,上面if语句的...
处的表达式应是
A)out()或outfileB)out()或!
outfile
C)out()或outfileD)out()或!
(32)C++流中重载的运算符>
是一个()
A)用于输出操作的非成员函数B)用于输入操作的非成员函数
C)用于输出操作的成员函数D)用于输入操作的成员函数
(33)有以下类定义
classPoint{
Point(intx=0,inty=0){_.x=x;
_.y=y;
voidMove(intxOff,intyOff)
{_x+=xOff;
_.y+=yOff;
voidPrint()const
{cout<
('
<
_x<
_y<
)'
endl;
private:
int_x,_y;
下列语句中会发生编译错误的是
A)Pointpt;
pt.Print();
B)constPointpt;
C)Pointpt;
pt.Move(l,2);
D)constPointpt;
(34)有以下类定义
intid;
chargender,
char*phone;
MyClass():
id(0),gender('
#'
),phone(NULL){}
MyClass(intno,charge='
char*ph=NULl.)
{id=no;
gende=ge;
phone=ph;
下列类对象定义语句中错误的是
A)MyClassmyObj;
B)MyClassmyObj(11,"
"
C)MyClassmyObj(12,'
m'
D)MyClassmyObj(12);
(35)有以下程序
classComplex
Complex(doubler=0,doublei=0):
re(r),im(i){}
doublereal()const{returnre;
doubleimag()const{returnim;
Complexoperator+(Complexc)const
{returnComplex(re+c.re,im+c.im);
doublere,im;
{
Complexa=Complex(l,1)+Complex(5);
cout<
a.real()<
+'
a.imag()<
i'
return0;
A)6+6iB)6+1iC)1+6iD)1+1i
二、填空题(每空2分,共30分)
请将每一个空的正确答案写在答题卡[1]-[15]序号的横线上,答在试卷上不得分。
注意:
以命令关键字填空的必须拼写完整。
(1)算法的复杂度主要包括[1]复杂度和空间复杂度。
(2)数据的逻辑结构在计算机存储空间中的存放形式称为数据的[2]。
(3)若
classA
inta;
A(intaa=0){a=aa;
classB:
publicA{
intb;
Ac;
//用aa初始化基类A,用aa+1初始化类对象成员c
B(intaa):
[9]{b=aa+2;
(10)下列程序的输出结果是[10]。
inti=5;
int&
r=i;
r=7;
i<
(11)下列程序的输出结果是[11]。
classTest{
Test(){cnt++;
~Test(){cnt--;
staticintCount(){returncnt;
staticintcnt;
intTest:
cnt=0;
Test:
Count0<
Testtl,t2;
Test*pT3=newTest;
Test*pT4=newTest;
deletepT4;
deletepT3;
Count()<
(12)下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。
(注:
阶乘的定义是n!
=n*(n-1)*...*2*1)
unsignedfact(unsignedn)
{
if(n<
=1)
return1;
return[12];
(13)下列程序的输出结果是[13]。
template<
tytenameT>
Tfun(Ta,Tb){return(a<
=b)?
b;
fun(3,6)<
fun(3.14F,6.28F)<
(14)与成员访问表达式p->
name等价的表达式是[14]。
(15)下列程序的输出结果是[15]。
classbase{
public:
intn;
base(intx){n=x;
virtualvoidset(intm){n=m;
n<
pbase=&
dl;
pbase->
aet
(1);
d2;
set
(2);
2004年9月
公共基础知识及C++语言程序设计
答案及评分标准
选择题(
(1)—(35)每小题2分,共70分)
(1)C
(2)C(3)B(4)A(5)D
(6)B(7)D(8)B(9)C(10)A
(11)D(12)D(13)C(14)D(15)A
(16)A(17)D(18)B(19)D(20)C
(11)[11]042
(12)[12]n*fact(n-1)
(13)[13]3,3.14
(14)[14](*p).name
(15)[15]25
2010年3月计算机等级考试二级C++笔试试题
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是
A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n
B)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)
C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)
D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)
(2)算法的时间复杂度是指
A)算法的执行时间
B)算法所处理的数据量
C)算法程序中的语句或指令条数
D)算法在执行过程中所需要的基本运算次数
(3)软件按功能可以分为:
应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是
A)编辑软件
B)操作系统
C)教务管理系统
D)浏览器
A)定义阶段
B)开发阶段
C)维护阶段
D)上述三个阶段
(7)数据库管理系统中负责数据模式定义的语言是
A)数据定义语言
B)数据管理语言
C)数据操纵语言
D)数据控制语言
(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是
A)文件
B)数据库
C)字段
D)记录
(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的
A)需求分析阶段
B)逻辑设计阶段
C)概念设计阶段
D)物理设计阶段
(10)有两个关系R和T如下:
则由关系R得到关系T的操作是
A)选择
B)投影
C)交
D)并
(11)下列关于函数的描述中,错误的是
A)函数可以没有返回值
B)函数可以没有参数
C)函数可以是一个类的成员
D)函数不能被定义为模板
(12)若MyClass是一个类名,且有如下语句序列
MyClassc1,*c2;
MyClass*c3=newMyClass;
MyClass&
c4=c1;
上面的语句序列所定义的类对象的个数是
A)1
B)2
C)3
D)4
(13)下列关于继承方式的描述中,错误的是
A)如果不显式地指定继承方式,缺省的继承方式是私有(private)
B)采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员
C)采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员
D)采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员
pp3[2];
编译系统在处理上面的语句序列时,所生成的模板MyTemp的实例的个数是
D)0
(16)在C++中,cin是个
A)类
B)对象
C)模板
D)函数
(17)在下列字符中,不允许作为C++标识符的是
A)b
B)B
C)_
D)2
(18)下列叙述中,错误的是
C)setfill
D)showpoint(27)下列程序段中包含4个函数,其中具有隐含this指针的是
intfun1();
classTest{
public:
intfun2();
friendintfun3();
staticintfun4();
};
A)fun1
B)fun2
C)fun3
D)fun4
(28)有如下程序
#include
usingnamespacestd;
Test(){}
Test(constTest&
t){cout<
Testfun(Test&
u){Testt=u;
returnt;
intmain(){Testx,y;
x=fun(y);
运行这个程序的输出结果是
A)无输出
B)1
C)11
D)111
(29)有如下程序
classA{
A(inti=0):
r1(i){}
voidprint(){cout<
E’<
R1<
-'
}<
p>
voidprint()const{cout<
C'
R1*R1<
voidprint(intx){cout<
P'
R1*R1*R1<
private:
intr1;
intmain(){
Aa1;
constAa2(4);
a1.print
(2);
a1.print();
return0;
}
运行时的输出结果是
A)P8-E4
B)P8-C16-
C)P0-E4-
D)P0-C16-
(30)下列代码声明了3个类
classPerson{};
classStudent:
publicPerson{};
classUndergraduate:
Student{};
Derived(intx=0,inty=0):
Base(x),valD(y){cout<
VALD;
~Derived(){cout<
intvalD;
intmain(){
Derivedobj12(2,3);
retuen0;
A)2332
B)2323
C)3232
D)3223
(32)下面是类Shape的定义:
classShape{
virtualvoidDraw()=0;
下列关于Shape类的描述中,正确的是
A)类Shape是虚基类
B)类Shape是抽象类
C)类Shape中的Draw函数声明有误
D)语句“Shapes;
”能够建立Shape的一个对象s
(33)将运算符“+”重载为非成员函数,下列原型声明中,错误的是
A)MyClockoperator+(MyClock,long);
B)MyClockoperator+(MyClock,MyClock);
C)MyClockoperator+(long,long);
D)MyClockoperator+(long,MyClock);
(34)打
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 复习资料
![提示](https://static.bdocx.com/images/bang_tan.gif)