【计算机类职业资格】二级C++笔试322及答案解析.doc
《【计算机类职业资格】二级C++笔试322及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试322及答案解析.doc(13页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 322 及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.C语言类体系中,不能被派生类继承的有(分数:2.00)A.转换函数B.构造函数C.虚函数D.静态成员函数2.在 C语言程序中,对象之间的相互通信通过(分数:2.00)A.继承实现B.调用成员函数实现C.封装实现D.函数重载实现3.对于类定义 class A public: virtual void func1( ) void func2( ) ; class B: public A public: void func1( ) cout “class B func 1
2、“ endl; virtua1 void func2( ) cout “class B func 2“ endl; ; 下面正确的叙述是(分数:2.00)A.A: :func2( ) 和 B: :func1( ) 都是虚函数B.A: :func2( ) 和 B: :func1( ) 都不是虚函数C.B: :func1( ) 是虚函数,而 A: :func2( ) 不是虚函数D.B: :func1( ) 不是虚函数,而 A: :func2( ) 是虚函数4.下面程序的运行结果是 #includeiostream.h class base protected: int a; public: bas
3、e( ) cout “0“; ; class base l: virtual base public: base l ( ) cout “1“; ; class base 2: virtual base public: base2 ( ) cout “2“; ; class derived: public base 1, public base2 public: derived( ) cout “3“; ; void main( ) derive obj; cout endl; ) 0123 ) 3120 ) 0312 ) 3012(分数:2.00)A.B.C.D.5.类的析构函数是在什么时候
4、调用的?(分数:2.00)A.类创建时B.创建对象时C.删除对象时D.不自动调用6.与语句 cout endl; 不等价的是(分数:2.00)A.cout /n;B.cout /12;C.cout /xA;D.cout /0;7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(分数:2.00)A.控制流B.加工C.数据存储D.源和潭8.继承机制的作用是(分数:2.00)A.信息隐藏B.数据封装C.定义新类D.数据抽象9.设 int a1,b2;,则(a) b 和 ab 这两个表达式的值分别为(分数:2.00)A.3,3B.3
5、,4C.4,3D.4,410.下列不是描述类的成员函数的是(分数:2.00)A.构造函数B.析构函数C.友元函数D.复制构造函数11.下面关于 C语言变量的叙述错误的是(分数:2.00)A.C语言中变量分为 auto、static、extern 和 register4 种存储类型B.自动变量和外部变量的作用域为整个程序C.内部静态变量的作用域是定义它的函数D.外部静态变量的作用域是定义它的文件12.存在定义 int a10 ,x, * pa;,若 paB.x * (a1) ;C.x * (pa1) ;D.x * 1 ;13.设有定义 int a1;float f1.2;char ca;,则下列
6、表示错误的是(分数:2.00)A.a;B.f-;C.c;D.8;14.下面程序的运行结果为 #includeiostream.h Class A static int n; public: A( ) n1; A(int num) nnum; void print( ) cout n; ; int A: :n2; void main( ) A a,b(3) ; a. print( ) ; b. print( ) ; cout endl; ) 11 ) 13 ) 23 ) 33(分数:2.00)A.B.C.D.15.为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义
7、为(分数:2.00)A.publicB.protectedC.privateD.static16.一个函数功能不太复杂但要求被频繁调用,应选用(分数:2.00)A.内联函数B.重载函数C.递归函数D.嵌套函数17.下面关于运算符重载的描述错误的是(分数:2.00)A.运算符重载不能改变操作数的个数、运算符的优先级、运算符的结合性和运算符的语法结构B.不是所有的运算符都可以进行重载C.运算符函数的调用必须使用关键字 operatorD.在 C语言中不可通过运算符重载创造出新的运算符18.算法的空间复杂度是指(分数:2.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.
8、执行过程中所需要的存储空间19.应用数据库的主要目的是(分数:2.00)A.解决数据保密问题B.解决数据完整性问题C.解决数据共享问题D.解决数据量大的问题20.在数据结构中,与所使用的计算机无关的是数据的(分数:2.00)A.存储结构B.物理结构C.逻辑结构D.物理和存储结构21.下面程序的运行结果是 #includeiostream.h int fun(int a ,int n) int result1; for(int i1;in;i) resultresult * ai ; retum result; void main( ) int a3 3,4,5; cout fun(a,3) e
9、ndl; ) 12 ) 15 ) 20 ) 60(分数:2.00)A.B.C.D.22.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是(分数:2.00)A.数据库系统B.文件系统C.人工管D.数据项管理23.检查软件产品是否符合需求定义的过程称为(分数:2.00)A.确认测试B.集成测试C.验证测试D.验收测试24.下面程序的运行结果为 #includeiostream.h void swap(int tempa; ab; btemp; void main( ) int a2,b3; swap(a, b) ; cout a “,“ b
10、endl; ) 2,3 ) 3,2 ) 2,2 ) 3,3(分数:2.00)A.B.C.D.25.有如下数组声明:int num10 ;,下标值引用错误的是(分数:2.00)A.num10B.num5C.num3D.num026.下面程序的运行结果是 #includeiostream.h void main( ) int i1; while(i 8) if(i%3!2) continue; else cout i; ) 25 ) 36 ) 258 ) 369(分数:2.00)A.B.C.D.27.下面程序的运行结果为 #includeiostream.h void main( ) char a
11、3; switch(a) case3:cout “3“; case2:cout “2“;break; default:cout “1“; ) 3 ) 321 ) 31 ) 32(分数:2.00)A.B.C.D.28.结构化程序设计主要强调的是(分数:2.00)A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性29.下面关于 C语言的描述错误的是(分数:2.00)A.C语言支持数据封装B.C语言中引入友元,没有破坏封装性C.C语言允许函数名和运算符重载D.C语言支持动态联编30.用链表表示线性表的优点是(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和
12、删除操作D.数据元素的物理顺序与逻辑顺序相同31.通常拷贝构造函数的参数是(分数:2.00)A.某个对象名B.某个对象的成员名C.某个对象的引用名D.某个对象的指针名32.下列程序的运行结果为 #includeiostream.h templateclass TT class FF TTa1,a2,a3; public: FF(TT b1,TT b2,TT b3) a1b1;a2b2;a3b3; TT Sum( ) return a1a2a3; void main( ) FF int x(int(1.1) ,2,3) ,y(int(4.2) ,5,6) ; cout x. Sum( ) y.
13、Sum( ) endl; ) 6.1 15.2 ) 6 15 ) 6 15.2 ) 6.1 15(分数:2.00)A.B.C.D.33.下列程序的运行结果为 #includeiostream.h void main( ) int a2; int ba1; cout a/b endl; ) 0.66667 ) 0 ) 0.7 ) 0.66666666(分数:2.00)A.B.C.D.34.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指(分数:2.00)A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程35.在数据库设计中,将 E-R 图转换成
14、关系数据模型的过程属于(分数:2.00)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段二、B填空题/B(总题数:14,分数:28.00)36.数据的逻辑结构有线性结构和U /U两大类。(分数:2.00)填空项 1:_37.顺序存储方法是把逻辑上相邻的节点存储在物理位置U /U的存储单元中。(分数:2.00)填空项 1:_38.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的 U /U。(分数:2.00)填空项 1:_39.软件工程研究的内容主要包括:U /U技术和软件工程管理。(分数:2.00)填空项 1:_40.关系操作的特点是U /U操作。(分数
15、:2.00)填空项 1:_41.C中封装性、继承性和U /U是面向对象思想的主要特征。(分数:2.00)填空项 1:_42.下面程序的结果为U /U。 #includeiostream.h void main( ) int a1,b2; bool c1; if(ab) | | c) cout “tree“ endl; else cout “false“ endl; (分数:2.00)填空项 1:_43.下列 for 语句的循环次数为U /U。 for(int a0,b1;ba) ;(分数:2.00)填空项 1:_44.下面程序的输出结果是U /U。 #includeiostream.h voi
16、d main( ) int a6 1,2,3,4,5,6; for(int i0;i5;i) cout ai “ “; cout endl;(分数:2.00)填空项 1:_45.C程序是从U /U函数开始执行的。(分数:2.00)填空项 1:_46.假定 A 为一个类,则语句 A(A 为该类U /U函数的原型说明。(分数:2.00)填空项 1:_47.派生类构造函数的执行顺序是先执行U 12 /U的构造函数,然后执行成员对象的构造函数,最后执行U 13 /U的构造函数。(分数:2.00)填空项 1:_48.类模板不同于函数模板,类模板只可用U /U型参数。(分数:2.00)填空项 1:_49.
17、下列程序的执行结果为U /U。 #includeiostream.h void main( ) cout.fill(*) ; cout.width(10) ; cout “hello“ endl; (分数:2.00)填空项 1:_二级 C+笔试 322 答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.C语言类体系中,不能被派生类继承的有(分数:2.00)A.转换函数B.构造函数 C.虚函数D.静态成员函数解析:解析 派生类对象的数据结构是由基类中说明的数据成员和派生类中说明的数据成员共同构成,所以不能继承基类的构造函数,必须重新定义。2.
18、在 C语言程序中,对象之间的相互通信通过(分数:2.00)A.继承实现B.调用成员函数实现 C.封装实现D.函数重载实现解析:解析 对象属于某个已知的类,是类的实例,对象之间通信实际上就是通过函数传递信息,封装是把数据和操作结合在一起,继承是对于类的方法的改变和补充,重载是多态性之一。3.对于类定义 class A public: virtual void func1( ) void func2( ) ; class B: public A public: void func1( ) cout “class B func 1“ endl; virtua1 void func2( ) cout
19、“class B func 2“ endl; ; 下面正确的叙述是(分数:2.00)A.A: :func2( ) 和 B: :func1( ) 都是虚函数B.A: :func2( ) 和 B: :func1( ) 都不是虚函数C.B: :func1( ) 是虚函数,而 A: :func2( ) 不是虚函数 D.B: :func1( ) 不是虚函数,而 A: :func2( ) 是虚函数解析:解析 基类中说明的虚函数,在派生类中自然就是虚函数,所以类 B 中 func1( ) 是虚函数;而类A 中的 func2 没有被关键字 virtual 修饰,所以不是虚函数。4.下面程序的运行结果是 #in
20、cludeiostream.h class base protected: int a; public: base( ) cout “0“; ; class base l: virtual base public: base l ( ) cout “1“; ; class base 2: virtual base public: base2 ( ) cout “2“; ; class derived: public base 1, public base2 public: derived( ) cout “3“; ; void main( ) derive obj; cout endl; )
21、0123 ) 3120 ) 0312 ) 3012(分数:2.00)A. B.C.D.解析:解析 本题考查的是含有虚基类的继承中构造函数的调用顺序,应该先调用基类的构造函数,接着是按照派生类继承列表的顺序依次调用虚基类的构造函数,最后调用派生类自己的构造函数。5.类的析构函数是在什么时候调用的?(分数:2.00)A.类创建时B.创建对象时C.删除对象时 D.不自动调用解析:解析 析构函数可以被函数调用,也可以系统调用:函数体内的对象在函数结束时调用析构函数和使用 delete 释放对象所占有用的资源。6.与语句 cout endl; 不等价的是(分数:2.00)A.cout /n;B.cout
22、 /12;C.cout /xA;D.cout /0; 解析:解析 题干表示的是回车换行,选项 A) ,选项 B) 和选项 C) 都表示回车换行。而选项 D) 是字符串的结尾标志。7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(分数:2.00)A.控制流 B.加工C.数据存储D.源和潭解析:解析 数据流图包括 4 个方面,即加工 (转换) (输入数据经加工变换产生输出) 、数据流(沿箭头方向传送数据的通道,一般在旁边标注数据流名) 、存储文件(数据源) (表示处理过程中存放各种数据的文件) 、源和潭(表示系统和环境的接口,
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 322 答案 解析 DOC
