【计算机类职业资格】C++语言笔试-2及答案解析.doc
《【计算机类职业资格】C++语言笔试-2及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】C++语言笔试-2及答案解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、C+语言笔试-2 及答案解析(总分:80.00,做题时间:90 分钟)一、单项选择题(总题数:40,分数:80.00)1.在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是( )。A) 逻辑设计 B) 需求分析C) 详细设计 D) 物理设计(分数:2.00)A.B.C.D.2.对序线性表(23,29,34,55,60,70,78)用二分法查找值为 60 的元素时,需要比较次数为( )。A) 1 B) 2 C) 3 D) 4(分数:2.00)A.B.C.D.3.下列描述中,正确的是( )。A) 线性链表是线性表的链式存储结构B) 栈与队列是非线性结构C) 双向链表是非线性结构D
2、) 只有根结点的二叉树是线性结构(分数:2.00)A.B.C.D.4.开发大型软件时,产生困难的根本原因是( )。A) 大型系统的复杂性 B) 人员知识不足C) 客观世界千变万化 D) 时间紧、任务重(分数:2.00)A.B.C.D.5.两个或两个以上的模块之间关联的紧密程度称为( )。A) 耦合度 B) 内聚度C) 复杂度 D) 连接度(分数:2.00)A.B.C.D.6.下列关于线性表的叙述中,不正确的是( )。A) 线性表可以是空表B) 线性表是一种线性结构C) 线性表的所有结点有且仅有一个前件和后件D) 线性表是由 n 个元素组成的一个有限序列(分数:2.00)A.B.C.D.7.设有
3、如下关系表:(分数:2.00)A.B.C.D.8.以下描述中,不是线性表顺序存储结构特征的是( )。A) 可随机访问B) 需要连续的存储空间C) 不便于插入和删除D) 逻辑相邻的数据物理位置上不相邻(分数:2.00)A.B.C.D.9.在三级模式之间引入两层映像,其主要功能之一是( )。A) 使数据与程序具有较高的独立性B) 使系统具有较高的通道能力C) 保持数据与程序的一致性D) 提高存储空间的利用率(分数:2.00)A.B.C.D.10.下列方法中,属于白盒法设计测试用例的方法的是( )。A) 错误推测 B) 因果图C) 基本路径测试 D) 边界值分析(分数:2.00)A.B.C.D.11
4、.关于虚函数,以下说法正确的是( )。A) 若在重定义虚函数时使用了 virtual,则该重定义函数还是虚函数B) 虚函数不能声明为友元C) 子类必须重定义父类的虚函数D) 虚函数不能是 static 的(分数:2.00)A.B.C.D.12.下列关于纯虚函数与抽象类的描述中,错误的是( )。A) 纯虚函数是一种特殊的虚函数,它没有具体的实现B) 抽象类是指具有纯虚函数的类C) 一个基类中说明具有纯虚函数,该基类的派生类一定不再是抽象类D) 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出(分数:2.00)A.B.C.D.13.将 x+y*z 中的“+”用成员函数重载,“*”用友元函数重
5、载应写为( )。A) operator+(operator* (y,z)B) x.operator+(operator* (y,z)C) x.operator+(x*(y,z)D) x +(operator*(y,z)(分数:2.00)A.B.C.D.14.以下程序的执行结果是( )。#includeiostream.h#includeiomanip.hvoid fun(int n)if(n!=0)fun(n-1);for(int i=1 ;i=n;i+)coutsetw(3)i;coutend1;void main()fun(3);(分数:2.00)A.B.C.D.15.有以下程序不,在横线
6、处应添加( )。#includeiostreamusing namespace std;class TestClasspublic:TestClass (int n) number=n;_/拷贝构成函数TestClass () private:int number;TestClass fun(TestClass p)TestClass temp(p);return temp;int main()TestClass obj1(10),obj2(0);TestClass obj3(obj1);obj2=fun(obj3);return 0;A) TestClass (TestClass B) Te
7、stClass (TestClass other)number=other.number;C) TestClass (TestClass D) TestClass ((分数:2.00)A.B.C.D.16.执行完成下列代码段之后:bool x=true,y=false,z=false;x=xay=x|yz=!(x!=y)|(y=z);则 x=false, y=false, z= ( )。A) true B) falseC) 不确定 D) 异常(分数:2.00)A.B.C.D.17.如果表达式-x/y 中的“-”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为( )
8、。A) operator/(x.operato-(),y);B) operator/(operator-(x),y);C) x.operator-().operator/(y);D) y.operator/(operator-(x);(分数:2.00)A.B.C.D.18.将以下程序写成三目运算表达式是( )。if(xy)min=x;else min=y;A) min=(xy)?x:y B) min=(xy)?x:yC) min=(xy) x:y D) min=(xy)?x,y(分数:2.00)A.B.C.D.19.定义如下枚举类型:enum Monday,Tuesday, Wednesday
9、,Thrusday, Friday=2;,则下列语句正确的是( )。A) 表达式 Wednesday=Friday 的值是 trueB) Day day;day=3C) Day day;day=Monday+3D) Day day;day=Tuesday+10(分数:2.00)A.B.C.D.20.函数 swap(a,n)可完成对 a 数组从第 1 个元素到第 n 个元素两两交换。其中 b0=1;b1=2;swap(b,2)。在运行调用函数中的语句后,b0和 b1的值分别为( )。A) 1,1 B) 1,2 C) 2,2 D) 2,1(分数:2.00)A.B.C.D.21.下列 for 循环的
10、循环体执行次数为( )。for(int i(0),j(10);i=j=4;i+,j-)A) 0 B) 1 C) 4 D) 无限(分数:2.00)A.B.C.D.22.下述关于开关语句的描述中,正确的是( )。A) 开关语句中 default 子句可以没有,也可以有一个B) 开关语句中每个语句序列中必须有 break 语句C) 开关语句中 default 子句只能放在最后D) 开关语句中 case 子句后面的表达式可以是整型表达式(分数:2.00)A.B.C.D.23.下列存储类标识符中,可见性与存在性不一致的是( )。A) 外部类 B) 自动类C) 内部静态类 D) 寄存器类(分数:2.00)
11、A.B.C.D.24.下述静态数据成员的特征中,错误的是( )。A) 说明静态数据成员时前面要加修饰符 staticB) 静态数据成员要在类体外进行初始化C) 引用静态数据成员时,要在静态数据成员名前加类名和作用域运算符D) 静态数据成员不是所有对象所共用的(分数:2.00)A.B.C.D.25.以下程序的执行结果是( )。#include iostream.hint a8= 1,2,3,4,5,6,7;void fun(int *pa,int n);void main( )int m=8;fun(a,m);couta7end1;void fun(int *pa,int n)for (int
12、I=0;In-1 ;I+)*(pa+7)+= *(pa+I);A) 0 B) 1 C) 4 D) 28(分数:2.00)A.B.C.D.26.以下程序段是函数返回 a 所指数组中最大的值所在的下标值,横线处的语句为( )。fun(int*a,int n)int i,j=0,k;k=j;for(i=j ;in;i+)if(aiak)remm (k);A) k=i B) k=-i C) i=i D) i=n(分数:2.00)A.B.C.D.27.在 C+程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序执行速度,则应该选用( )。A) 内联函数 B) 重载函数C) 递归调用 D)
13、 嵌套调用(分数:2.00)A.B.C.D.28.有如下类声明:class MyBASEint k;public:void set(int n) k=n;int get()const return k; ;class MyDERIVED:protected MyBASEprotected:intj;public:void set(int m,int n)MyBASE:set(m);j=n;int get0const return MyBASE:get()+j;则类 MyDERIVED 中保护的数据成员和成员函数的个数是( )。A) 4 B) 3 C) 2 D) 1(分数:2.00)A.B.C.
14、D.29.下列关于继承的描述中,错误的是( )。A) 析构函数不能被继承B) 派生类是基类的组合C) 派生类的成员除了它自己的成员外,还包含了它的基类的成员D) 派生类中继承的基类成员的访问权限到派生类保持不变(分数:2.00)A.B.C.D.30.类的析构函数的作用是( )。A) 一般成员函数B) 类的初始化C) 对象的初始化D) 释放由对象所占用的资源(分数:2.00)A.B.C.D.31.如果表达式 y*x+中,“*”是作为成员函数重载的运算符,“+”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为( )。A) x.operator+(0).operator*(y)
15、B) operator*(x.operator+(0),y)C) y.operator*(operator+(x,0)D) operator*(operator+(x,0),y)(分数:2.00)A.B.C.D.32.有如下程序:#includeiostreamusing namespace std;class XXprotected:int k;public:XX(int n=5):k(n) ;xx()cout“XX“;virtual void f()const=0;inline void XX:f()constcoutk+3;class YY:public XXpublic:YY()cou
16、t“YY“;void f()constcoutk-3;XX:f();int main()XX P.f();delete return 0;执行上面的程序将输出( )。A) 28XX B) 28YYXXC) 33XX D) -33XXYY(分数:2.00)A.B.C.D.33.有如下函数模板:templatetypename T, typename UT cast(U u) retumu;其功能是将 u 类型数据转换为 T 类型数据。已知 i 为 int 型变量,下列对模板函数 cast 的调用中正确的是( )。A) cast(i); B) cast(i);C) castchar*,int(i)
17、; D) castdouble,int(i);(分数:2.00)A.B.C.D.34.阅读下面的程序:#includeiostream.hvoid main()int x;cinx;if(x+5)coutxend1;elsecoutx-end1;如果两次执行上述程序,且键盘输入分别为 4 和 6,则输出结果分别是( )。A) 4,6 B) 3,6 C) 4,7 D) 5,7(分数:2.00)A.B.C.D.35.按照标识符的要求,下列选项中,( )符号不能组成标识符。A) 连接符 B) 下划线C) 大小写字母 D) 数字字符(分数:2.00)A.B.C.D.36.已知枚举类型定义语句为:enu
18、m TokenNAME,NUMBER,PLUS=5,MINUS,PRINT=10;则下列叙述中错误的是( )。A) 枚举常量 NAME 的值为 1B) 枚举常量 NUMBER 的值为 1C) 枚举常量 MINUS 的值为 6D) 枚举常量 PRINT 的值为 10(分数:2.00)A.B.C.D.37.类 MyClass 的定义如下:class MyClasspublic:MyClass() value=0;SetVariable(int i) value=i; private:int value;则对下列语句序列正确的描述是( )。MyClass*P, my;p=A) 语句 p=x=y;y=
19、t;int main()int a2= 23,42;fun(a1,a0);std:couta0“,“a1std:end1;return 0;A) 42, 42 B) 23, 23C) 23, 42 D) 42, 23(分数:2.00)A.B.C.D.40.有如下程序:#includeiostreamusing namespace std;class Apublic:static int a;void init() a= 1; A(int a=2) init(); a+; ;int A:a=0;A obj;int main()coutobj.a;return 0;A) 0 B) 1 C) 2 D
20、) 3(分数:2.00)A.B.C.D.C+语言笔试-2 答案解析(总分:80.00,做题时间:90 分钟)一、单项选择题(总题数:40,分数:80.00)1.在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是( )。A) 逻辑设计 B) 需求分析C) 详细设计 D) 物理设计(分数:2.00)A.B. C.D.解析:解析 软件开发阶段包括需求分析、总体设计、详细设计、编码和测试五个阶段。其中需求分析阶段常用的工具是数据流图和数据字典。2.对序线性表(23,29,34,55,60,70,78)用二分法查找值为 60 的元素时,需要比较次数为( )。A) 1 B) 2 C) 3
21、 D) 4(分数:2.00)A.B.C. D.解析:解析 根据二分法查找法需要两次:首先将 60 与表中间的元素 55 进行比较,由于 60 大于55,所以在线性表的后半部分查找。第二次比较的元素是后半部分的中间元素,将 60 与表中间的元素70 进行比较,由于 60 小于 70,所以在线性表的前半部分查找。第三次比较的元素是前半部分的中间元素,即 60,这时两者相等,即查找成功。3.下列描述中,正确的是( )。A) 线性链表是线性表的链式存储结构B) 栈与队列是非线性结构C) 双向链表是非线性结构D) 只有根结点的二叉树是线性结构(分数:2.00)A. B.C.D.解析:解析 根据数据结构中
22、各数据元素之间前后关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。如果一个非空的数据结构满足下列两个条件:有且只有一个根结点;每个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。所以线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。4.开发大型软件时,产生困难的根本原因是( )。A) 大型系统的复杂性 B) 人员知识不足C) 客观世界千变万化 D) 时间紧、任务重(分数:2.00)A. B.C.D.解析:解析 随着计算机软件规模的扩大,软件本身的复杂性不断增加,研制周期显著变长,正确性难以保证,软件开发费用上涨,生产效率急剧下降,从而出
23、现了人们难以控制软件发展的局面,即所谓的“软件危机”。5.两个或两个以上的模块之间关联的紧密程度称为( )。A) 耦合度 B) 内聚度C) 复杂度 D) 连接度(分数:2.00)A. B.C.D.解析:解析 耦合度是模块间互相连接的紧密程度的度量;内聚度是一个模块内部各个元素间彼此结合的紧密程度的度量。6.下列关于线性表的叙述中,不正确的是( )。A) 线性表可以是空表B) 线性表是一种线性结构C) 线性表的所有结点有且仅有一个前件和后件D) 线性表是由 n 个元素组成的一个有限序列(分数:2.00)A.B.C. D.解析:解析 线性表是一种线性结构,由 n(n0)个元素组成,所以线性表可以是
24、空表。但是在线性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有一个前件和后件,所以选项 C)是错误的。7.设有如下关系表:(分数:2.00)A.B.C. D.解析:解析 T 就是关系 R 中有的,同时 S 中也有的有序组(4、5、6),即交运算(n)。8.以下描述中,不是线性表顺序存储结构特征的是( )。A) 可随机访问B) 需要连续的存储空间C) 不便于插入和删除D) 逻辑相邻的数据物理位置上不相邻(分数:2.00)A.B.C.D. 解析:解析 线性表的顺序存储是用一片连续的空间来存放数据元素,其特点是逻辑上相邻的元素在物理位置上也相邻。数据元素之间逻辑上的先后关系自动隐含
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 语言 笔试 答案 解析 DOC
