【计算机类职业资格】全国计算机等级考试二级C++真题2006年4月及答案解析.doc
《【计算机类职业资格】全国计算机等级考试二级C++真题2006年4月及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】全国计算机等级考试二级C++真题2006年4月及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、全国计算机等级考试二级 C+真题 2006年 4月及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列选项中不属于结构化程序设计方法的是(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用2.两个或两个以上模块之间关联的紧密程度称为(分数:2.00)A.耦合度B.内聚度C.复杂度D.数据传输特性3.下列叙述中正确的是(分数:2.00)A.软件测试应该由程序开发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对4.按照“后进先出”原则组织数据的数据结构是(分数:2.00)A.队列B
2、.栈C.双向链表D.二叉树5.下列叙述中正确的是(分数:2.00)A.线性链表是线性表的链式存储结构B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结点的二叉树是线性结构6.对如下二叉树 (分数:2.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA7.在深度为 7的满二叉树中,叶子结点的个数为(分数:2.00)A.32B.31C.64D.638.“商品”与“顾客”两个实体集之间的联系一般是(分数:2.00)A.一对一B.一对多C.多对一D.多对多9.在 E-R图中,用宋表示实体的图形是(分数:2.00)A.矩形B.椭圆形C.菱形D.三角形10.数据库 DB、数据
3、库系统 DBS、数据库管理系统 DBMS之间的关系是(分数:2.00)A.DB包含 DBS和 DBMSB.DBMS包含 DB和 DBSC.DBS包含 DB和 DBMSD.没有任何关系11.下列关于 C+函数的说明中,正确的是(分数:2.00)A.内联函数就是定义在另一个函数体内部的函数B.函数体的最后一条语句必须是 return语句C.标准 C+要求在调用一个函数之前,必须先声明其原型D.编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式12.由于常对象不能被更新,因此(分数:2.00)A.通过常对象只能调用它的常成员函数B.通过常对象只能调用静态成员函数C.常对象的成员都是常成员D
4、.通过常对象可以调用任何不改变对象值的成员函数13.下列关于虚函数的说明中,正确的是(分数:2.00)A.从虚基类继承的函数都是虚函数B.虚函数不得是静态成员函数C.只能通过指针或引用调用虚函数D.抽象类中的成员函数都是虚函数14.运算符重载是对已有的运算符赋予多重含义,因此(分数:2.00)A.可以对基本类型(如 int类型)的数据,重新定义“+”运算符的含义B.可以改变一个已有运算符的优先级和操作数个数C.只能重载 C+中已经有的运算符,不能定义新运算符D.C+中已经有的所有运算符都可以重载15.模板对类型的参数化提供了很好的支持,因此(分数:2.00)A.类模板的主要作用是生成抽象类B.
5、类模板实例化时,编译器将根据给出的模板实参生成一个类C.在类模板中的数据成员都具有同样类型D.类模板中的成员函数都没有返回值16.下列关于 C+流的说明中,正确的是(分数:2.00)A.与键盘、屏幕、打印机和通信端口的交互都可以通过流类来实现B.从流中获取数据的操作称为插入操作,向流中添加数据的操作称为提取操作C.cin是一个预定义的输入流类D.输出流有一个名为 open的成员函数,其作用是生成一个新的流对象17.下列符号中可以用作 C+标识符的是(分数:2.00)A._radiusB.foobarC.elseD.3room18.下列语句中,错误的是(分数:2.00)A.const int b
6、uffer=256;B.const int temp;C.const double *point;D.const double *rtnew double(5.5);19.有如下程序: int x3; do x2; coutx; while(!(-x); 执行这个程序的输出结果是(分数:2.00)A.1B.30C.1-2D.死循环20.有如下程序: #includeiostream using namespace std; int main() int *p; *p9; cout“The value at p:“*p; return 0; 编译运行程序将出现的情况是(分数:2.00)A.编译时
7、出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错21.有如下程序: #includeiostream using namespace std; int main() void function(double val); double val; function(val); coutval; return 0; void function(double val) val3; 编译运行这个程序将出现的情况是(分数:2.00)A.编译出错,无法运行B.输出:3C.输出:3.0D.输出一个不确
8、定的数22.有如下类定义: class AA int a; public: int getRef()constreturn 其中的四个函数定义中正确的是(分数:2.00)A.B.C.D.23.有如下程序: #includeiostream using namespace std; class Base public: void fun() cout“Base:fun“endl; ; class Derived: public Base public: void tim() _ cout“Derived: fun“endl; ; int main() Derived d; d.fun(); re
9、turn O; 已知其执行后的输出结果为: Base:fun Derived:fun 则程序中下划线处应填入的语句是(分数:2.00)A.Basfun();B.Base:fun();C.Base-fun();D.fun();24.下面是重载为非成员函数的运算符函数原型,其中错误的是(分数:2.00)A.Fraction operator+(Fraction,Fractio;B.Fraction operator-(Fractio;C.FractionD.FractionB.ifstream file(“d:/ncre/testxt“);C.ifstream file;filopen(“d:/n
10、cre/testxt“);D.ifstream* pFile=new ifstream(“d:/ncre/testxt“);27.有如下类定义: class Foo public: Foo(int v):value(v) / Foo() / private: Foo() / int value=0; / ; 其中存在语法错误的行是(分数:2.00)A.B.C.D.28.有如下类定义: class Point int x_,y_; public: Point():x_(0),y_(0) Point(int x,int y=0):x_(x),y_(y) ; 若执行语句 Point a(2),b3,
11、*c4; 则 Point类的构造函数被调用的次数是(分数:2.00)A.2次B.3次C.4次D.5次29.有如下类定义: class Test public: Test()a=0;c=0; / int f(int a)const this-a=a; / static int g()return a; / void h(int b)Test:b=b; / private: int a; static int b; const int c; ; int Test:b=0; 在标注号码的行中,能被正确编译的是(分数:2.00)A.B.C.D.30.有如下程序: #includeiostream us
12、ing namespace std; class A public: A()cout“A; A()cout“A“; ; class B:public A A*p; public: B()cout“B“;p=new A(); B()cout“B“;delete p; ; int main() B obj; return 0; 执行这个程序的输出结果是(分数:2.00)A.BAAABAB.ABABAAC.BAABAAD.ABAABA31.有如下程序: #includeiostream using namespace std; class Base private: void funl()const
13、 cout“funl“; protected: void fun2() constcout“fun2“; public; void fun3() const cout“fun3“; ; class Derived:protected Base public; void fun4() const cout“fun4“; ; int main() Derived obj; obj.funl(); / obj.fun2(); / obj.fun3(); / obj.fun4(): / return 0; 其中有语法错误的语句是(分数:2.00)A.B.C.D.32.有如下程序: #includeio
14、stream using namespace std; class Base public: void funl()cout“Basea“; virtual void fun2()tout“Base/n“; ; class Derived:public Base public: void funl() cout“Derived/n“; void fun2() cout“Derived/n“; ; void f(Base b.fun2(); int main() Derived obj; f(obj); return 0; 执行这个程序的输出结果是(分数:2.00)A.Base BaseB.Ba
15、se DerivedC.Derived BaseD.Derived Derived33.有如下程序: #includeiostream using namespace std; class Complex double re, im; public: Complex(double r, double i): re(r), im(i) double real() const return re; double image() const return im; Complex im += a.im; return *this; ; ostream int main() Complex x(1,-2
16、), y(2,3); cout(x+=y)endl; return 0; 执行这个程序的输出结果是(分数:2.00)A.(1,-2)B.(2,3)C.(3,5)D.(3,1)34.有如下程序: #include iostream #include iomanip using namespace std; int main() cout.fill(*); cout left setw(4) 123 “OK“ endl; return 0; (分数:2.00)A.123*OKB.123*OK*C.*123OKD.*123*OK35.有如下类声明: class SAMPLE int n; publi
17、c: SAMPLE(int i=0):n(i) void setValue(int nO); ; 下列关于 getValue 成员函数的实现中,正确的是(分数:2.00)A.SAMPLE:setValue(int n nnO;B.void SAMPLE:setValue(int n nnO;C.void setValue(int n nnO;D.(int n nnO;二、B填空题/B(总题数:15,分数:30.00)36.对长度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为U 【1】 /U。(分数:2.00)填空项 1:_37.在面向对象方法中,U 【2】 /U描述的是具有相似属性与
18、操作的一组对象。(分数:2.00)填空项 1:_38.在关系模型中,把数据看成是二维表,每一个二维表称为一个U 【3】 /U。(分数:2.00)填空项 1:_39.程序测试分为静态分析和动态测试。其中U 【4】 /U是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。(分数:2.00)填空项 1:_40.数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为U 【5】 /U。(分数:2.00)填空项 1:_41.有一种只在循环语句或 switch语句中使用的流程控制语句,表示该语句的关键字是 U
19、【6】 /U。(分数:2.00)填空项 1:_42.程序中有如下语句 for(int i=0;i5;1+)cout*(p+i)“,“; 能够依次输出 int型一维数组 DATA的前 5个元素。由此可知,变量 p的定义及初始化语句是U 【7】 /U。(分数:2.00)填空项 1:_43.若下面程序运行时输出结果为 1,A,10.1 2,B,3.5 #include iostream using namespace std; int main() void test(int, char, doubieU 【8】 /U); test(1, A, 10.1 ); test(2, B); return
20、0; void test(int a, char b, double c) couta,b,cendl; (分数:2.00)填空项 1:_44.有如下类声明: class MyClass int i; private: int j; protected: int k; public: int m, n; ;其中,私有成员的数量为U 【9】 /U。(分数:2.00)填空项 1:_45.有如下程序: #includeiostream using namespace std; class Con char ID; public: Con(): ID(W) coutl; Con(char ID): I
21、D(ID) cout2; Con(Conchar getlD0const return ID; ; void show(Con c) coutc.getID(); int main() Concl; show(cl); Con c2(B); show(c2); return 0; 执行上面程序的输出是U 【10】 /U。(分数:2.00)填空项 1:_46.有如下程序: #includeiostream using namespace std; class ONE public: virtual void f() cout “1“; ; class TWO: public ONE public
22、: TWO() cout “2“; ; class THREE: public TWO public: virtual void f() TWO:f(); cout “3“; ; int main() ONE aa, *p; TWO bb; THREE cc; p = P-f(); return 0; 执行上面程序的输出是U 【11】 /U(分数:2.00)填空项 1:_47.有如下程序: #include iostream using namespace std; class PARENT public: PARENT() cout “PARENT“; ; class SON: public
23、 PARENT public: SON() cout “SON“; ; int main() SON son; PARENT *p; p = return 0; 执行上面程序的输出是U 【12】 /U。(分数:2.00)填空项 1:_48.若以非成员函数形式,为类 Bounce重载“!”运算符,其操作结果为一 bool型数据,则该运算符重载函数的原型是U 【13】 /U。(分数:2.00)填空项 1:_49.下面是复数类 complex的定义,其中重载的运算符“+”的功能是返回一个新的复数对象,其实部等于两个操作对象实部之和,其虚部等于两个操作对象虚部之和;请 补充完整: class comp
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 全国 计算机等级考试 二级 2006 答案 解析 DOC
