【计算机类职业资格】二级C++笔试-265及答案解析.doc

上传人:jobexamine331 文档编号:1324505 上传时间:2019-10-17 格式:DOC 页数:23 大小:79.50KB
下载 相关 举报
【计算机类职业资格】二级C++笔试-265及答案解析.doc_第1页
第1页 / 共23页
【计算机类职业资格】二级C++笔试-265及答案解析.doc_第2页
第2页 / 共23页
【计算机类职业资格】二级C++笔试-265及答案解析.doc_第3页
第3页 / 共23页
【计算机类职业资格】二级C++笔试-265及答案解析.doc_第4页
第4页 / 共23页
【计算机类职业资格】二级C++笔试-265及答案解析.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、二级 C+笔试-265 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.若运行时给变量 x输入 12,则以下程序的运行结果是#includeiostream.hvoid main( )int x,y;cinx;y=x12? x+l0:x-12;couty;coutendl;(分数:2.00)A.0B.22C.12D.102.下列程序段的输出结果是#includeiostream.hvoid fun(int*x,int*y)cout*x*y;*x=3;*y=4;void main( )int x=1,y=2;fun(for(i=0;stri!

2、=/0;i+)switch(stri)case1:x4+;case2:x3+;case3:x2+;case4:x1+;coutx1“,“x2“,“x3“,“x4;(分数:2.00)A.8,6,4,1B.8,6,3,2C.8,8,4,1D.8,6,4,24.下列数据结构中,按先进后出原则组织数据的是(分数:2.00)A.线性链表B.栈C.循环链表D.顺序表5.以下能对二维数组 a进行正确初始化的语句是(分数:2.00)A.int a2=(1,0,1,5,2,3;B.int a3=1,2,3,4,5,6;C.int a24=1,2,3,4,5,6;D.int a3=1,0,1,,1,1;6.具有

3、3个结点的二叉树有(分数:2.00)A.2种形态B.4种形态C.7种形态D.5种形态7.设有下列二叉树: (分数:2.00)A.B.C.D.8.下列关于函数模板实参不能省略的情况说明不正确的是(分数:2.00)A.从模板函数实参表获得的信息有矛盾B.需要获得特定类型的返回值,而不管参数的类型如何C.虚拟类型参数没有出现在模板函数的形参表中D.函数模板不含有常规形参9.若有语句 int*point,a=4;和 point=b+;cout“a=“a“,“b=“b;该程序的输出结果是(分数:2.00)A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=233.在 32位的计算机中,

4、一个 char型数据所占的内存长度的字节是(分数:2.00)A.4B.1C.2D.834.下列叙述中,不属于测试的特征的是(分数:2.00)A.测试的挑剔性B.完全测试的不可能性C.测试的可靠性D.测试的经济性35.以下类定义中可能会引起错误的语句是class Apublic:A( ) /1int i; /2private:int j; /3A(int i)i+; /4;(分数:2.00)A.1B.2C.3D.4二、填空题(总题数:13,分数:30.00)36.排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、 【1】 和选择排序等。(分数:2.00)填空项 1:_37.当循环队

5、列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为 【2】 。(分数:2.00)填空项 1:_38. 【3】 是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。(分数:2.00)填空项 1:_39.为了便于对照检查,测试用例应由输入数据和预期的 【4】 两部分组成。(分数:2.00)填空项 1:_40. 【5】 是从二维表列的方向进行的运算。(分数:2.00)填空项 1:_41.内联函数是通过 【6】 来实现的,因此内联函数是真正的函数。(分数:2.00)填空项 1:_42.以下程序的输出结果是 【7】 。#includeiostream.hvoid

6、main( )int a=0;a+=(a=8) ;couta;(分数:2.00)填空项 1:_43.以下程序的执行结果为 【8】 。#includeiostreamusing namespace std;class basepublic:virtual void who( )cout“base class“endl;class derivel:public basepublic:void who( )cout“derivel class“endl;class derive2:public basepublic:void who( )cout“derive2 class“endl;void ma

7、in( )base objl,*p;derivel obj2;derive2 obj3;P=for(i=0;stri!=/0;i+)switch(stri)case1:x4+;case2:x3+;case3:x2+;case4:x1+;coutx1“,“x2“,“x3“,“x4;(分数:2.00)A.8,6,4,1B.8,6,3,2C.8,8,4,1D.8,6,4,2 解析:命题目的 for 和 switch语句的应用。解题要点 本题考查循环的嵌套。只要注意在 C+语言中,系统在字符指针的最后位置会增加一个字符串结束符/0,执行 8次 for循环,再根据 switch语句中的条件易知答案。考点

8、链接 c+中各种条件判断,循环语句的用法。4.下列数据结构中,按先进后出原则组织数据的是(分数:2.00)A.线性链表B.栈 C.循环链表D.顺序表解析:命题目的 本题主要考查对于栈的理解。解题要点 栈是限定在一端进行插入与删除的线性表。在栈中,允许插入与删除的一端称为栈顶,而不允许插入与删除的另一端称为栈底。栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素,即栈是按照“先进后出”或“后进先出”的原则组织数据的。错解分析队列组织数据的原则是“先进先出”或“后进后出”。考点链接 数据结构中,栈和队列组织数据的原则。5.以下能对二

9、维数组 a进行正确初始化的语句是(分数:2.00)A.int a2=(1,0,1,5,2,3;B.int a3=1,2,3,4,5,6; C.int a24=1,2,3,4,5,6;D.int a3=1,0,1,,1,1;解析:命题目的 本题考查对二维数组初始化知识点的掌握。解题要点 在初始化语句时,需要注意下面几点:所赋初值个数与数组元素的个数相同;每行所赋初值个数与数组元素的个数不同时,系统将自动给该行其余的元素补初值 o;所赋初值行数少于数组行数时,系统将自动给后面各行的元素补初值 o;赋初值时省略行花括号对。在给二维数组赋初值时可以不用行花括号对。错解分析 选项 A中省略了第二维的大小

10、,所以是错误的;选项 C超出了数组的定义范围,所以是错误的;选项 D在初始化赋值的时候出现了错误。考点链接 无论是几维的数组,下标都是从零开始的。6.具有 3个结点的二叉树有(分数:2.00)A.2种形态B.4种形态C.7种形态D.5种形态 解析:命题目的 考查二叉树的基础知识。解题要点 具有 3个结点的二叉树具有以下的几种形态:*考点链接 二叉树的结构及画法。7.设有下列二叉树: (分数:2.00)A.B. C.D.解析:命题目的 本题考查二叉树的遍历。解题要点 所谓二叉树的前序遍历(DLR)是指在访问根结点、遍历左子树与遍历右子树这 3者中,首先访问根结点,然后遍历左子树,最后遍历右子树,

11、并且,在遍历左右子树时,上述规则同样适用,即“根-左-右”。故该二叉树的前序遍历结果为“ATBZXCYP”。考点链接 对于本题,若使用后序遍历和中序遍历的结果分别为“ZBTYCPXA“和“TZBACYXP“。8.下列关于函数模板实参不能省略的情况说明不正确的是(分数:2.00)A.从模板函数实参表获得的信息有矛盾B.需要获得特定类型的返回值,而不管参数的类型如何C.虚拟类型参数没有出现在模板函数的形参表中D.函数模板不含有常规形参 解析:命题目的 考查 c+语言中关于函数模板实参不能省略的情况解题要点 函数模板实参不能省略的情况在 C+语言中一共有 4种:从模板函数实参表获得的信息有矛盾;需要

12、获得特定类型的返回值,而不管参数的类型如何;虚拟类型参数没有出现在模板函数的形参表中;函数模板含有常规形参。考点链接 模板形参分为两种类型;虚拟类型参数和常规参数。9.若有语句 int*point,a=4;和 point=c+语言的类是可以嵌套定义的,故选项 D错误; c+语言中成员函数的实现部分也可以写在类定义内,故选项 C错误。考点链接 函数不能嵌套定义。11.需求分析中开发入员要从用户那里了解(分数:2.00)A.软件做什么 B.用户使用界面C.输入的信息D.软件的规模解析:命题目的 考查需求分析的作用。解题要点 需求分析是软件定义时期的最后一个阶段,它的基本任务就是准确回答“系统必须做

13、什么”这个问题即软件系统功能,需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。12.若有说明 int a34;,则 a数组元素的非法引用是(分数:2.00)A.a02*1)B.a13C.a4-2OD.a04) 解析:命题目的 数组的定义范围。解题要点 本题定义 a为 3行 x4列的数组,它可用的行下标最大为 2,列下标最大为 3。 错解分析 a0)4超过了数组的范围。考点链接 数组的下标是从 0开始的。13.若调用一个函数,且此函数中没有 return语句,则正确的说法是该函数(分数:2.00)A.没有返回值B.

14、返回若干个系统默认值C.有返回值,但返回一个不确定的值 D.能返回一个用户所希望的函数值解析:命题目的 return 语句的意义和用法。解题要点 在 c+语言函数调用中,如果被调用函数中没有 return语句,并不带回一个确定的、用户所希望得到的函数值,而是带回的是一个不确定的值。考点链接 为了明确表示“不带回值”,可以用 void 定义无类型(或称空类型),这时,系统就保证不使函数带回任何值。14.表达式 105b+;cout“a=“a“,“b=“b;该程序的输出结果是(分数:2.00)A.a=2,b=1 B.a=1,b=1C.a=1,b=0D.a=2,b=2解析:命题目的 关于 switc

15、h语句的考查。解题要点 该题目的关键是要搞清楚该程序执行了哪几条语句。由于 x的值等于 1,所以 switch结构中,程序从 case1后面的语句开始执行,又因为 casel后面的语句没有以 break结束,所以程序要继续往下执行 case 2 后面的语句。所以,该程序共执行了这三条语句:a+;a+;b+;,因此,变量 a和 b最后的值应该为 2和 1。考点链接 break 语句可以结束 switch语句。33.在 32位的计算机中,一个 char型数据所占的内存长度的字节是(分数:2.00)A.4B.1 C.2D.8解析:命题目的 考查 C+语言各种数据类型所占的内存大小。解题要点 char

16、 型数据所占内存的大小为 1个字节。错解分析 int 型数据占内存的大小为 4个,cong double,double 占内存的大小为 8个字节。考点链接 求字节数用 sizeof运算符。34.下列叙述中,不属于测试的特征的是(分数:2.00)A.测试的挑剔性B.完全测试的不可能性C.测试的可靠性 D.测试的经济性解析:命题目的 本题考查了软件测试的主要特征。解题要点 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。它有 3个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。其中没有测试的可靠性这一说法。考点链接 软件测试与软件调试的概念,

17、以及相应的方法。35.以下类定义中可能会引起错误的语句是class Apublic:A( ) /1int i; /2private:int j; /3A(int i)i+; /4;(分数:2.00)A.1B.2C.3D.4 解析:命题目的 考查关于 C+语言类的定义方法。解题要点 在 c+语言中类定义中的构造函数是私有的,但是其却调用了其中的公有变量,在实例化时会出现错误。考点链接 c+语言类的定义二、填空题(总题数:13,分数:30.00)36.排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、 【1】 和选择排序等。(分数:2.00)填空项 1:_ (正确答案:交换排序)解析

18、:命题目的 需要考生记住常见的排序方法。解题要点 常见的排序方法有插入排序(包括简单插入排序法和希尔排序法等)、交换排序(包括冒泡排序和快速排序法等)和选择排序(包括简单选择排序和堆排序等)。考点链接 常见的排序方法及其作用机制和区别。37.当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为 【2】 。(分数:2.00)填空项 1:_ (正确答案:上溢)解析:命题目的 本题考查了队列的基本性质。解题要点 入队运算是指在循环队列的队尾加入一个新元素。这个运算有两个基本操作:首先将队尾指针进一(即 rear=rear+l),并当 rear=m+1时置 rear

19、 =1;然后将新元素插入队尾指针指向的位置。当循环队列非空(s=1)时且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算,这种情况称为“上溢”。38. 【3】 是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。(分数:2.00)填空项 1:_ (正确答案:封装)解析:命题目的 本题考查了面向对象技术中的一些基本概念。解题要点 面向对象技术中包括以下几个基本概念,即对象、类、方法、消息、继承和封装,其中封装是一种信息隐蔽技术,目的在于将对象的使用者对象的和设计者分开。39.为了便于对照检查,测试用例应由输入数据和预期的 【4】 两部分组成。(分数:2.00)填空项 1:_

20、(正确答案:输出结果)解析:命题目的 本题主要考查测试的步骤。考点链接 测试的基本方法和步骤。40. 【5】 是从二维表列的方向进行的运算。(分数:2.00)填空项 1:_ (正确答案:关系运算)解析:命题目的 本题考查了关系运算的基本知识。解题要点 在关系模型的数据语言中,一般除了运用常规的集合运算,(并、交、差、笛卡尔积等)外,还定义了一些专门的关系运算,如投影、选择、连接等。前者是将关系(即二维表)看成是元组的集合,这些运算主要是从二维表的行的方向来进行的;后者主要是从二维表的列的方向来进行的运算。两者统称为关系代数。41.内联函数是通过 【6】 来实现的,因此内联函数是真正的函数。(分

21、数:2.00)填空项 1:_ (正确答案:编译器)解析:命题目的 考查内联函数的基本概念解题要点 内联函数是通过编译器,只是在调用的时候,像宏一样展开。考点链接 内联函数比普通函数的效率更高。42.以下程序的输出结果是 【7】 。#includeiostream.hvoid main( )int a=0;a+=(a=8) ;couta;(分数:2.00)填空项 1:_ (正确答案:16)解析:命题目的 考查 C+赋值表达式的运用。解题要点 赋值表达式的值就是所赋值变量的值,本题中 a+=8相当于 a=a+8,对表达式逐步进行求解:a+=(a=8)此时,a 的值由于赋值为 8,而不是 oa+=8

22、a=a+8a=16考点链接 要掌握“+=”等相关运算符的用法。43.以下程序的执行结果为 【8】 。#includeiostreamusing namespace std;class basepublic:virtual void who( )cout“base class“endl;class derivel:public basepublic:void who( )cout“derivel class“endl;class derive2:public basepublic:void who( )cout“derive2 class“endl;void main( )base objl,*

23、p;derivel obj2;derive2 obj3;P=&objl;p-who( );p=&obj2;p-who( );p=&obj3;p-who( );(分数:2.00)填空项 1:_ (正确答案:base classderivel classderive2 class)解析:命题目的 考查虚函数的用法。解题要点 类 base含有虚函数 who(),该类派生出 derivel类和 derive2类,两个派生类中都有虚函数 who()的定义。在 main()函数中定义了一个指向 base类的指针,它也被允许指向其派生类。在执行过程中,不断改变它所指的对象,当 P-who()时就能调用不同的

24、版本。这是因为使用了虚函数,因而进行动态联编。考点链接 应掌握静态联编的使用方法。44.如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的 【9】 函数。(分数:2.00)填空项 1:_ (正确答案:内联)解析:命题目的 注意内联函数与宏定义的区别。解题要点 c+中的成员函数如果它的实现写在了类中,那么该函数就是一个内联函数。考点链接 c+中内联函数的相关概念。45.为解决在多重继承环境中因公共基类带来的 【10】 问题,c+语言提供了虚基类机制。(分数:2.00)填空项 1:_ (正确答案:二义性)解析:命题目的 关于 C+中虚基类的作用。解题要点 C+中产生虚基类的作用就

25、是为了解决继承中的二义性问题,通过虚基类继承可以把父基类中相同的函数只编译一次。46.operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为 【11】 的。(分数:2.00)填空项 1:_ (正确答案:public)解析:命题目的 考查 C+中运算符重载的固定格式和要求。解题要点 C+中不论用成员函数还是友元函数重载运算符都必须用关键字 operator,都必须将函数声明为公有的。考点链接 operator 是关键字。47. 【12】 是一系列相关函数的模型或样板,这些函数的 【13】 形式相同,只是所针对的 【14】 不同。(分数:6.00)填空项 1:_ (正确答案:12函数模板13源代码14数据类型)解析:命题目的 C +中函数模板的定义。解题要点 函数模板是一系列相关函数的模型或样板,这些函数的源代码形式相同,只是所针对的数据类型不同。考点链接 声明一个函数的模板格式是:template 模板形参表声明函数声明48.我们通常用到的 cin,是属于 【15】 输入。(分数:2.00)填空项 1:_ (正确答案:有格式)解析:命题目的 考查关于输入输出的概念。解题要点 C+中运算符“”和“”都是属于有格式的输入输出。考点链接 使用 cin,cout 进行输入输出时应包括头文件“iostream.h。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1