计算机等级考试二级C++真题.docx
- 文档编号:6652503
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:16
- 大小:19.85KB
计算机等级考试二级C++真题.docx
《计算机等级考试二级C++真题.docx》由会员分享,可在线阅读,更多相关《计算机等级考试二级C++真题.docx(16页珍藏版)》请在冰豆网上搜索。
计算机等级考试二级C++真题
全国计算机等级考试二级
C++语言程序设计
2007年
4月笔试试卷
(考试时间
90分钟,满分
100分)
一、选择题(每小题
2分,共70分)
(1)下列叙述中正确的是
A)算法的效率只与问题的规模有关,而与数据的存储结构无关
B)算法的时间复杂度是指执行算法所需要的计算工作量
C)数据的逻辑结构与存储结构是一一对应的
D)算法的时间复杂度与空间复杂度一定相关
(2)在结构化程序设计中,模块划分的原则是
A)各模块应包括尽量多的功能
B)各模块的规模应尽量大
C)各模块之间的联系应尽量紧密
D)模块内具有高内聚度、模块间具有低耦合度
(3)下列叙述中正确的是
A)软件测试的主要目的是发现程序中的错误
B)软件测试的主要目的是确定程序中错误的位置
C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作
D)软件测试是证明软件没有错误
(4)下面选项中不属于面向对象程序设计特征的是
A)继承性B)多态性
C)类比性D)封装性
(5)下列对队列的叙述正确的是
A)队列属于非线性表
B)队列按“先进后出”原则组织数据
C)队列在队尾删除数据
D)队列按“先进先出”原则组织数据
(6)对下列二叉树
进行前序遍历的结果为
A)DYBEAFCZXB)YDEBFZXCA
C)ABDYECFXZD)ABCDEFXYZ
(7)某二叉树中有
n个度为
2的结点,则该二叉树中的叶子结点数为
A)n+lB)n-1
C)2nD)可
2
(8)在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是()
A)并B)交
C)投影D)笛卡儿乘积
(9)在
E-R图中,用来表示实体之间联系的图形是()
A)矩形B)椭圆形
C)菱形D)平行四边形
(10)下列叙述中错误的是()
A)在数据库系统中,数据的物理结构必须与逻辑结构一致
B)数据库技术的根本目标是要解决数据的共享问题
C)数据库设计是指在已有数据库管理系统的基础上建立数据库
D)数据库系统需要操作系统的支持
(11)为了取代
C中带参数的宏,在
C++中使用
A)重载函数B)内联函数
C)递归函数D)友元函数
(12)下列关于类定义的说法中,正确的是
A)类定义中包括数据成员和函数成员的声明B)类成员的缺省访问权限是保护的
C)数据成员必须被声明为私有的D)成员函数只能在类体外进行定义
(13)下列关于派生类构造函数和析构函数的说法中,错误的是
A)派生类的构造函数会隐含调用基类的构造函数
B)如果基类中没有缺省构造函数,那么派生类必须定义构造函数
C)在建立派生类对象时,先调用基类的构造函数,再调用派生类的构造函数
D)在销毁派生类对象时,先调用基类的析构函数,再调用派生类的析构函数
(14)通过运算符重载,可以改变运算符原有的
A)操作数类型
C)优先级
(15)有如下函数模板:
template
其中
T是
A)函数形参
C)模板形参
(16)使用输入输出操作符
setw,可以控制
A)输出精度
C)对齐方式
(17)下列字符串中,不可以用作
C一标识符的是
A)y_2006
C)Return
(18)字面常量
42、4.2、42L的数据类型分别是
A)long,double,int
C)
int,double,long
(19)执行下列语句段后,输出字符“
*”的个数是
for(inti=50;i>1:
--i)cout<<'*';
A)48
C)50
(20)有如下程序段:
inti=0,j=1;
int&r=i;//①
r=j;//②
int*p=&i;//③
*p=&r;//④
其中会产生编译错误的语句是
A)④
C)②
(21)有如下函数定义:
voidfunc(inta,int&b){a++;b++;}
若执行代码段:
intx=0,y=1;
func(x,y);
则变量
x和
y的值分别是
A)0和
1
C)0和
2
(22)有如下程序:
#include
usingnamespacestd;
classA{
public:
staticinta;
voidinit(){a=1;}
A(inta=2){int();a++;}
};
intA:
:
a=0;
Aobj;
intmain()
{
cout< return0; B)操作数个数 D)结合性 B)函数实参 D)模板实参 B)输出宽度 D)填充字符 B)___TEST_H D)switch B)long,float,int D) int,float,long B)49 D)51 B)③ D)① B)1和 1 D)1和 2 j } 运行时输出的结果是 A)0B)1 C)2D)3 (23)下列有关继承和派生的叙述中,正确的是 A)派生类不能访问基类的保护成员 B)作为虚基类的类不能被实例化 C)派生类应当向基类的构造函数传递参数 D)虚函数必须在派生类中重新实现 (24)下列运算符中,不能被重载的是 A)&&B)! = C).D)++ (25)下列函数模版中的定义中,合法的是 A)template –x: x;} B)templateclass –x: x;} C)templateT –x: x;} D)tempIateTabs(Tx){returnx<0? -x: x;〕 (26)在语句 cin>>data;中,cin是 A)C++的关键字B)类名 C)对象名D)函数名 (27)有如下程序: #include usingnamespacestd; classtest{ private: inta; public: test0{cout+"constructor"+endl;} test(inta){cout+a+endl;} test(consttest&test) { a=test.a; cout+,,copyconstructor"+endl; } test(){Cout+"destructor"+endl;} }; intmain() { testA(3); return0; } 运行时输出的结果是 A)3 B)constructor destructor C)copyconstructor destructor D)3 destructor (28)若有如下类声明 classMyClass{ public: MyClass(){cout<<1;} }; 执行下列语句 MyClassa,b[2],*p[2]: 以后,程序的输出结果是 A)11B)111 C)1111D)11111 (29)有如下程序: #include usingnamespacestd; classPoint{ public: staticintnumber; public: Pointo{number++;} ~Point(){number--;} }; intPoint: : number--0; voidmainO{ Point*ptr; PointA,B; { Point*ptr_point=newPoint[3]; ptx=ptr_point; } PointC; Gout+Point: : number+endl; delete[]ptr; } 运行时输出的结果是 A)3B)4 C)6D)7 (30)如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。 有如 下程序,没有使用多态机制。 #include usingnamespacestd; classBase{ inta,b; public: Base(intx,inty){a=x;b=y;}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机等级考试 二级 C+