无忧首页企业系统我的无忧
无忧服务:
兼职活动培训
娱乐交友:
交友社区资讯
全职实习:
实习暑假寒假
微信号:school51
扫一下,立即关注
加关注
在线支付,立省10元
下载新版APP
===大学生成长生活平台===

2013年9月全国计算机等级《二级C++》上机临考冲刺试卷(2) - 233网校计算机二级题库:在线

2013-12-20来源/作者:管理员点击次数:450

一、选择题(每小题1分,共40分)
1、 关于结构化程序设计原则和方法的描述错误的是(  )。
A.选用的结构只允许有一个入口和一个出口
B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现
C.不允许使用GOTO语句
D.语言中所没有的控制结构,应该采用前后一致的方法来模拟

2、 下列程序的运行结果为(  )。
#include(iostream.h>
template(classTT>
classFF
{TTa1,a2,a3;
public:
FF(TTb1,TTb2,TTb3){a1=b1;a2=b2.;a3=b3;)
TTSum(  ){returna1+a2+a3;}};
voidmain(  )
{FFx(int(1.1),2,3),y(int(4.2),5,6);
cout<A.6.115.2
B.615
C.615.2
D.6.115
3、 已知intm=10;在下列定义引用的语句中,正确的是(  )。
A.int&x=m;
B.inty=&m;
C.int&z;
D.int&t=&m;

4、 有以下程序:
#include(iostream)
usingnamespacestd;
intmain(  )
{
intx=15:
while(x>10&&x<50)
{
x++;
if(x/3)
{
x++;break;
}


}
cout< return0;
}
执行后的输出结果是(  )。
A.15
B.16
C.17
D.18

5、 函数定义为Fun(int&i),变量定义n=100,则下面调用正确的是(  )。
A.Fun(20);
B.Fun(20+n);
C.Fun(n);
D.Fun(&n);

6、 有如下模板声明:
templateclassA;
下列声明中,与上述声明不等价的是(  )。
A.templateclassA;
B.templateclassAt
C.templateclassA;
D.templateclassA;
7、 有如下程序:
#include
usingnamespacestd;
classMyClass{
public:
MyClass(){++count;)
~MyClass(){--count;)
staticintgetCount(){returncount;}
private:
staticintcount;
};
intMyClass::count=0;
intmain(){
MyClassobj;
cout< MyClass*ptr=newMyClass;
cout< deleteptr;
cout< return0;
}
程序的输出结果是(  )。
A.121
B.232
C.221
D.122

8、 下列符号中可以用做C++标识符的是(  )。
A._radius
B.foo~bar
C.else
D.3room

9、 有下列程序:
#include
voidfun(char*a,char*b)
{
while(*a=='*')a++;
while(*b=*a){b++;a++;}
}
voidmain(  )
{
char*s="*****a*b****",t[80];
fun(s,t);puts(t)
}
程序的运行结果是(  )。
A.*****a*b
B.a*b
C.a*b****
D.ab

10、 以下循环体的执行次数是(  )。
voidmain(  )
{inti,j;
for(i=0,j=1;i<=j+1;i+=2,j--)cout< }
A.3
B.2
C.1
D.0

11、 某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)(  )。
A.3
B.4
C.6
D.7

12、 有如下两个类定义:
ClaSSAA{};
classBB{
AAv1,*v2;
BBv3;
int*v4;
};
其中有一个成员变量的定义是错误的,这个变量是(  )。
A.v1
B.v2
C.v3
D.v4

13、 关系模型允许定义3类数据约束,下列不属于数据约束的是(  )。
A.实体完整性约束
B.参照完整性约束
C.属性完整性约束
D.用户自定义完整性约束

14、(  )既可重载为一元运算符,又可重载为二元运算符。
A.“*”
B.“=”
C.“=”和“*”
D.“*”和“*++”

15、 以下for语句中不是死循环的是(  )。
A.for(inti=0;i<1;++i);
B.for(inti=0;;++i);
C.for(inti=1;i>0;++i);
D.for(;;);

16、 已知在一个类体中包含如下函数原型:VOLUMEOPERATOR-(VOLUME)const;,下列关于这个函数的叙述中,错误的是(  )。
A.这是运算符一的重载运算符函数
B.这个函数所重载的运算符是一个一元运算符
C.这是一个成员函数
D.这个函数不改变类的任何数据成员的值

17、 下列关于线性链表的叙述中.正确的是(  )。
A.各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B.各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C.进行插入与删除时,不需要移动表中的元素
D.以上三种说法都不对

18、 下面关于C++流的叙述中,正确的是(  )。
A.cin是一个输入流对象
B.可以用ifstream定义一个输出流对象
C.执行语句序列char*y="PQMN";cout<D.执行语句序列charx[80];cin.getline(x,80);时,若输入Happynewyear,则X中的字符串是“Happy”

19、 下列关于C++流的描述中,错误的是(  )。
A.cout>>'A'表达式中输出字符A
B.eof函数可以检测是否到达文件尾
C.对磁盘文件进行流操作时,必须包含头文件fstream
D.以ios_base::Out模式打开的文件不存在时,将自动建立一个新文件

20、 下列关于完全二叉树的叙述中,错误的是(  )。
A.除了最后一层外,每一层上的结点数均达到最大值
B.可能缺少若干个左右叶子结点
C.完全二叉树一般不是满二叉树
D.具有结点的完全二叉树的深度为[log2n]+1

21、 设有两个字符串p和q,求q在p中首次出现位置的运算称为(  )。
A.连接
B.模式匹配
C.求子串
D.求串长

22、 有以下程序;
#include
usingnamespacestd;
classComplex
{
public:
Complex(doubler=0,doublei=O):re(r),im(i){}
doublereal()const{returnre;}
doubleimag()const{returnim;}
Complexoperator+(Complexc)const
{returnComplex(re+C.re,im+C.im);}
private:
doublere,im;
};
intmain()
{
Complexa=Complex(1,1)+Complex(5);
cout< return0;
}
程序执行后的输出结果是(  )。
A.6+6i
B.6+1i
C.1+6i
D.1+1i

23、 下面描述中错误的是(  )。
A.系统总体结构图支持软件系统的详细设计
B.软件设计是将软件需求转换为软件表示的过程
C.数据结构与数据库设计是软件设计的任务之一
D.PAD图是软件详细设计的表示工具

24、 若有如下程序:
#include
usingnamespaeestd;
classTestClass
{
public:
voidwho(){cout<<"TestClass"< };
classTestClassl:publicTestClass
{
public:
voidwho(){cout<<"TestClassl"< intmain()
{
TestClass*P;
TestClasslobj1;
p=&obj1;
p->who();
retum0;
}
则该程序运行后的输出结果是(  )。
A.TestClassl
B.TestClass
C.0
D.无输出

25、 下列程序段中包含4个函数,其中具有隐含this指针的是(  )。
intfunl(  );
classTest{
public:
intfun2(  );
friendintfun3(  );
staticintfun4(  );
};
A.funl
B.fun2
C.fun3
D.fun4

26、 两个或两个以上模块之间关联的紧密程度称为(  )。
A.耦合度
B.内聚度
C.复杂度
D.数据传输特性

27、有下列程序:
#include
#include”strin9.h”
typedefstruct{charname[9];charsex;floatscore
[2];}STU;
voidf(STUa)
{
STUb={"Zha0",'m',85.0,90.0);inti;
strcpy(a.name,b.name);
sex=b.sex; 
for(i=0;i<2;i++)a.score[i]=b.score[i]; 
}
voidmain(  ) 
{
STUc={"Qian",'f',95.0,92.0); 
f(c); 
printf("%s,%c,%2.Of,%2.Of\n",C.name,C.sex,
score[O],C.score[1]); 
}
程序的运行结果是(  )。
A.Qian,f,95,92
B.Qian,m,85,90
C.Zha0,f,95,92
D.Zha0,m,85,90

28、 下列选项中,不是一个算法的基本特征的是(  )。
A.完整性
B.可行性
C.有穷性
D.拥有有足够的情报

29、 下列字符串中,正确的C++标识符是(  )。
A.foo-1
B.2b
C.new
D._256

30、 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件),下面属于系统软件的是(  )。
A.编辑软件
B.操作系统
C.教务管理系统
D.浏览器

31、 软件生命周期可分为定义阶段、开发阶段和维护阶段。详细设计属于(  )。
A.定义阶段
B.开发阶段
C.维护阶段
D.上述3个阶段

32、 下列关于多态性的描述,错误的是(  )。
A.C++语言中的多态性分为编译时的多态性和运行时的多态性
B.编译时的多态性可通过函数重载实现
C.运行时的多态性可通过模板和虚函数实现
D.实现运行时多态性的机制称为动态绑定

33、 在C语言中,只有在使用时才占用内存单元的变量,其存储类型是(  )。
A.auto和register
B.extern和register
C.auto和static
D.static和register

34、 模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的(  )。
A.抽象和信息隐蔽
B.局部化和封装化
C.内聚性和耦合性
D.激活机制和控制方法

35、 将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是(  )。
A.不合法的运算符
B.一元运算符
C.无操作数的运算符
D.二元运算符

36、 要定义一个引用变量P,使之引用类MyClass的一个对象,正确的定义语句是(  )。
A.MyClassp=MyClass;
B.MyClassp=newMyClass;
C.MyClass&p=newMyClass
D.MyClassa,&p=a;

37、 有下列程序:
#include
voidmain(  )
{inta=1,b=2,c=3,d=0;
if(a==1&&b++==2)
if(b!=2‖c--!=3)
printf("%d,%d,%d\n",a,b,c);
elseprintf("%d,%d,%d\n",a,b,c);
elseprintf("%d,%d,%d,%d\n",a,b,c);
}
程序运行后的输出结果是(  )。
A.1,2,3
B.1,3,2
C.1,3,3
D.3,2,1

38、 若MyTemp是一个具有虚拟类型参数的类模板,且有如下语句序列:
MyTempp2;
MyTempp3[2];
编译系统在处理上面的话句序列时,所生成的模板MyTemp的实例的个数是(  )。
A.1
B.2
C.3
D.4

39、 C源程序中不能表示的数制是(  )。
A.二进制
B.八进制
C.十进制
D.十六进制

40、 算法的时间复杂度是指(  )。
A.算法的执行时间
B.算法所处理的数据量
C.算法程序中的语句或指令条数
D.算法在执行过程中所需要的基本运算次数

二、程序改错题(18分)
41、使用VC++6.0打开考生文件夹下的源程序文件1.cpp,但该程序运行有问题,请改正main()函数中的错误,使该程序的输出结果正确。
程序输出:
8
8
注意:错误的语句在/********error********/的下面。修改该语句即可,其他的语句不能修改。
试题程序:
#include(iostream.h>
classCO
{
public:
/********error********/
staticintn=0:
CO()
{
n++:
}
~CO()
{
n--:
}
}:
/********error********/
intCO::n;
voidmain()
{
COobj;
COobj2[7];
CO*C=NULL:
c=&obj:
/********error********/
eout< cout< }
三、简单应用题(24分)
42、使用VC++6.0打开考生文件夹下的源程序文件
2.cpp。请完成函数fun(intx),该函数的功能是将X的值转换成二进制数输出到屏幕,并且在函数中调用写函数WriteFile将结果输出到2.txt文件中。
例如x=6,6的二进制数为110,则输出到屏幕的数为110。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include(iostream)
#include(fstream)
#include(cmath)
usingnamespacestd;
voidWriteFile(char*str)
{
ofstreamout1;
out1.open("2.txt",ios—base::binary|ios_base::app);
for(inti=0;str[i]!=0;i++)
out1.put(str[i]);
out1.close();
}
voidfun(intx)
{
}
voidClearFile()
{
ofstreamout1;
out1.open("2.txt");
out1.close();
}
intmain()
{
ClearFile();
fun(13);
return0;
}
四、综合应用题(18分)
43、使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了类A、A1和A2,其中A1类由A类公有派生,A2类由A1类公有派生。
(1)定义类A的构造函数,该构造函数有一个整型的参数x,在构造函数中请将x赋值给数据成员a。请在注释“//********1********”之后添加适当的语句。
(2)定义类A1的构造函数,该构造函数有两个整型的参数x和y,在构造函数中请将x赋值给数据成员b,将y作为基类A构造函数的参数值传人。请在注释“//********2********”之后添加适当的语句。
(3)定义类A2的构造函数,该构造函数有3个整型的参数x,y和z,在构造函数中请将x赋值给数据成员C,将y和z分别赋值给基类A1构造函数的参数x和y。请在注释“//********3********”之后添加适当的语句。
(4)完成类A2的成员函数show的定义,该函数调用基类成员函数,输出基类数据成员a和b及类A2自身的数据成员C的值,上述3个值在输出时以空格隔开。请在注释“//********4********”之后添加适当的语句。
程序输出结果如下:
7
3
738
注意:除在指定的位置添加语句之外,请不要改动程序的其他部分。
试题程序:
#include
classA
{
inta;
public:
//********1********
intgeta(){returna;}
};
classA1:publicA
{
intb;
public:
//********2********
intgetb(){returnb;}
};
classA2:publicA1
{
intC;
public:
//****,****3********
voidshow()
{
//********4********
}
};
voidmain()
{
A2a(8.3.7):
cout< cout< a.show();
}

只看不练,假把式······
进入233题库【模拟考场】,在线做题测试,在线查看成绩及详细答案解析!
马上进入

题库优势

更好的做题体验
233计算机二级题库有四种做题模式,可选择自己的喜欢和当前适合的做题模式进行训练。
更多的习题、真题
233计算机二级题库题量储备百万道,包含历年真题,模拟试题等题型,题题结合考试大纲贴近考试 考点。
更专业的试题解析
233计算机二级题库结合考试大纲,将各试题划分了详细的章节知识,更全面的详细的展示答案解析。
进入计算机二级模拟考场>>




相关阅读



关于我们 | 联系我们 | 用户指南 | 网站地图 | 意见建议 | 会员注册 | 用户协议 | 隐私政策