[计算机类试卷]国家二级(C++)笔试模拟试卷83及答案与解析.doc

上传人:bowdiet140 文档编号:502791 上传时间:2018-11-29 格式:DOC 页数:22 大小:60.50KB
下载 相关 举报
[计算机类试卷]国家二级(C++)笔试模拟试卷83及答案与解析.doc_第1页
第1页 / 共22页
[计算机类试卷]国家二级(C++)笔试模拟试卷83及答案与解析.doc_第2页
第2页 / 共22页
[计算机类试卷]国家二级(C++)笔试模拟试卷83及答案与解析.doc_第3页
第3页 / 共22页
[计算机类试卷]国家二级(C++)笔试模拟试卷83及答案与解析.doc_第4页
第4页 / 共22页
[计算机类试卷]国家二级(C++)笔试模拟试卷83及答案与解析.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、国家二级( C+)笔试模拟试卷 83及答案与解析 1 下列数据结构中,按先进后出原则组织数据的是 ( A)线性链表 ( B)栈 ( C)循环链表 ( D)顺序表 2 具有 3个结点的二叉树有 ( A) 2种形态 ( B) 4种形态 ( C) 7种形态 ( D) 5种形态 3 设有下列二叉树: 对此二叉树前序遍历的结果为 ( A) ZBTYCPXA ( B) ATBZXCYP ( C) ZBTACYXP ( D) ATBZXCPY 4 结构化程序设计主要强调的是 ( A)程序的规模 ( B)程序的效率 ( C)程 序设计语言的先进性 ( D)程序易读性 5 程序的 3种基本控制结构是 ( A)过

2、程、子过程和分程序 ( B)顺序、选择和重复 ( C)递归、堆栈和队列 ( D)调用、返回和转移 6 下列叙述中,不属于测试的特征的是 ( A)测试的挑剔性 ( B)完全测试的不可能性 ( C)测试的可靠性 ( D)测试的经济性 7 需求分析中开发入员要从用户那里了解 ( A)软件做什么 ( B)用户使用界面 ( C)输入的信息 ( D)软件的规模 8 下列关系模型中,能使经运算后得到的新关系中属性个数多于原来关 系中属性个数的是 ( A)选择 ( B)连接 ( C)投影 ( D)并 9 下列叙述中,正确的是 ( A)用 E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系 ( B

3、)用 E-R图只能表示实体集之间一对一的联系 ( C)用 E-R图只能表示实体集之间一对多的联系 ( D)用 E-R图表示的概念数据模型只能转换为关系数据模型 10 “年龄在 18-25之间 ”这种约束是属于数据库当中的 ( A)原子性措施 ( B)一致性措施 ( C)完整性措施 ( D)安全性措施 11 以下哪个特征不是面向对 象思想中的主要特征 ? ( A)多态 ( B)继承 ( C)封装 ( D)垃圾回收 12 以下哪个不是 C+语言中的有效标识符 ? ( A) 34a ( B) -AB ( C) A-B ( D) A25 13 C+中运算符优先级由高到低排列正确的是 ( A) :+ +

4、 | ( B) *| , ( C) sizeof %+: ( D) ,i 1;+i); ( B) for(int i=0;+i); ( C) for(int i=1; i 0; +i); ( D) for(;); 16 关于 continue语句叙述不正确的是 ( A) continue语句用于循环体中,结束循环 ( B) continue语句用于循环体中,它使执行流跳出循环体中尚未执行的语句,并进行下一循环判断 ( C) continue可以用于 if语句中 ( D) continue语句不能代替 break语句 17 以下定义数组中错误的是 ( A) int a10; ( B) int a

5、220; ( C) int a20 ; ( D) int a ; 18 下面程序的执行结果是 #include“iostream.h“ void main( ) int *p,r; p=new int; *p = 20; r=sizeof(*p); cout r endl; delete p; ( A)程序错误 ( B)内存为 20地址的大小 ( C) 20 ( D) 4 19 下面程序错误的语句是 #include“iostream.h” void main( ) int A=0; int i2=1000/f(N); cout i 1 “ “ i2; 50 【 】是实现 C+语言编译时多态性

6、的机制,【 】是实现 C+语言运行时多态性的机制。 国家二级( C+)笔试模拟试卷 83答案与解析 1 【正确答案】 B 【试题解析】 栈是限定在一端进行插入与删除的线性表。在栈中,允许插入与删除的一端称为栈顶,而不允许插入与删除的另一端称为栈底。栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素,即栈是按照 “先进后出 ”或 “后进先出 ”的原则组织数据的。注意:队列组织数据的原则是 “先进先出 ”或 “后进后出 ”。注意:数据结构中,栈和队列组织数据的原则。 2 【正确答案】 D 【试题解析】 具有 3个结点的二叉树具有以下

7、的几种形态:注意:二叉树的结构及画法。 3 【正确答案】 B 【试题解析】 所谓二叉树的前序遍历 (DLR)是指在访问根结点、遍历左子树与遍历右子树这 3者中,首先访问根结点,然后遍历左子树,最后遍历右子树,并且,在遍历左右子树时,上述规则同样适用,即 “根 -左 -右 ”。故该二叉树的前序遍历结果为 “ATBZXCYP”。注意 :对于本题,若使用后序遍历和中序遍历的结果分别为 “ZBTYCPXA“和 “TZBACYXP“。 4 【正确答案】 D 5 【正确答案】 B 【试题解析】 采用结构化程序设计方法编写程序,可使程序结构良好、易读、易理解、易维护,它包括 3种基本控制结构,分别是顺序结构

8、、选择结构和重复结构 (又称循环结构 )。注意:控制程序结构的方法和作用。 6 【正确答案】 C 【试题解析】 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。它有 3个方面的重要特征,即测试的 挑剔性、完全测试的不可能性及测试的经济性。其中没有测试的可靠性这一说法。注意:软件测试与软件调试的概念,以及相应的方法。 7 【正确答案】 A 【试题解析】 需求分析是软件定义时期的最后一个阶段,它的基本任务就是准确回答 “系统必须做什么 ”这个问题即软件系统功能,需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出

9、完整、准确、清晰、具体的要求。 8 【正确答案】 B 【试题解析】 关系代数中包括传统的集合运算和专门的关系运算。经过选择或投影运 算得到的新关系的属性个数最多不会超过原关系中的属性个数。经过连接运算得到的新关系最多不少于原关系中属性的个数。 9 【正确答案】 A 【试题解析】 两个实体之间的联系实际上是实体集间的函数关系,这种函数关系可以有下面几种,即一对一的联系、一对多 (或多对一 )的联系和多对多的联系;概念模型便于向各种模型转换。由于概念模型不依赖于具体的数据库管理系统,因此,容易向关系模型、网状模型和层次模型等各种模型转换。 10 【正确答案】 C 【试题解析】 数据库的完整性是指数

10、据的正确性和相容性 (如学生的 学号必须惟一,性别只能是女或男等 ),数据库是否具备完整性关系到数据库系统能否真实反映现实世界,因此维护数据库的完整性是非常重要的。注意:数据库的各种特性及表达形式。 11 【正确答案】 D 【试题解析】 面向对象语言的基本特性是封装,继承和多态。注意:垃圾回收是Java的主要特点。注意:要掌握面向对象的优点。 12 【正确答案】 A 【试题解析】 在 C+语言中,标识符只能由数字,字母,下划线组成,并且第一个字符不能是数字。注意:选项 A 是以数字开始的。注意:关键字不能用作标识符。 13 【正确答案】 A 【试题解析】 运算符的优先级是 :最高,其次是 ,

11、( ),等,然后是 +, -,再低还有 - *, *, +, , =。注意:逗号的优先级最低。 14 【正确答案】 C 【试题解析】 理解宏定义, sum(a, B a*b中 a为 1 +2, b为 3,故sum(1+2,3)=1+2*3,即宏定义的替换过程是原样替换。注意:选项 B 的计算方法是 (1+2)*3 =9是错误的,注意,不要随意的加括号。注意:宏定义与函数的区别。 15 【正确答案】 A 【试题解析】 for循环的一般格式为 for(初始化部分;终止条件判断部分;迭代部分 )循环体; 说明如下: for循环开始时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环

12、体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。注意:在 for语句中,如果省略了终止条件判断部分,并且在语句中没有 break,或者是终止条件判断部分始终没有终止,都将出现死循环。注意: for循环语句可由 while循环语句来代替。 16 【正确答案】 A 【试题解析】 continue是跳出了本次循环中尚未执行 的语句,重新执行循环,但没有终止循环。注意:注意 break, continue和 goto语句的用法和区别。 17 【正确答案】 C 【试题解析】 二维数面的二维不能省略。注意:数组的下标是从零开始的。 18 【正确答案】 D 【试题解析】 理解 sizeof的

13、用法,它可以运算出各种数据类型所占内存空间的多少。注意:选项 C 中是指针 p所指向的内存地址中内容是 20。注意:在用完申请后的内存应立刻释放。 19 【正确答案】 C 【试题解析】 引用必须在第一时间进行赋值, int & B没有 在第 时间赋值故错误。注意:引用的方式,引用和指针应用的比较。 20 【正确答案】 A 【试题解析】 本题函数 Max的功能是求出两个整数中的较大者,并且通 return语句返回。注意: return语句的用法,注意 return的条件。 21 【正确答案】 C 【试题解析】 如果一个函数中有多个参数,则默认参数应从右到左逐个定义。注意:选项 C 没有给 a传递

14、任何的参数,所以是错误的。注意:函数含有默认参数时的调用方式。 22 【正确答案】 C 【试题解析】 C+语言中类定义中默认的类 的访问权限是 private。注意: C+语言中没有 default权限。注意:结构体默认的访问权限是 public,注意它们之间的区别。 23 【正确答案】 C 【试题解析】 构造函数的函数名必须和类名相同;构造函数可以有一个,也可以有多个;构造函数没有返回值。注意:构造函数可以被重载。 24 【正确答案】 C 【试题解析】 固定的一种拷贝方式就是类名:类名 const类名 &引用对象名注意:如果一个类中没有声明,拷贝构造函数,编译器会自动生成一个如上述形成的仅有

15、的拷贝构造函数。 25 【正确答案】 D 【试题解析】 private继承不能调用 Display_b函数, public继承可以调用基类中非 private成员。注意:类的继承方式 public, protected和 private的区别。 26 【正确答案】 A 【试题解析】 虚函数只能是类的成员函数,不能是构造函数或析构函数。注意:虚函数可以是另一个类的友元函数。 27 【正确答案】 C 【试题解析】 多态性主要是指借助于指向对象的基类指针或引用调用一个虚函数。注意:注意多态和重载的关系和应用。 28 【正确答案】 C 【试题解析】 C+语言规定 .*运算符是不能被重载的。注意:还有

16、., - *, :, ?:这几个运算符不能重载。 29 【正确答案】 A 【试题解析】 C+语言规定 “=”运算符只能作为成员函数重载。 30 【正确答案】 B 【试题解析】 类模板可以有虚拟类型参数。注意:模板及其周边概念和模板的实现。 31 【正确答案】 D 【试题解析】 setprecision( )函数为设置小数位数。注意: C+中 I/O流各种函数的使用例如: setw( ), setfill( )。 32 【正确答案】 A 【试题解析】 两数只在函数 change内被使用,函数调用完后该内存被释放,因此没有交换两数。注意:交换两个数的方法简单说有两种一是使用指针,二是用引用。 33

17、 【正确答案】 D 【试题解析】 o输出为不显示,只代表一个字符串的结束。注意: C+语言中各种字符转义序列的意义和应用。 34 【正确答案】 C 【试题解析】 每实例化一个类就要调用其构造函数,结束运行该实例后调用析构函数。注意:类的实例化和构造函数、析构函数的调用 方式和何时调用。 35 【正确答案】 C 【试题解析】 一个类中由系统自动生成的函数有构造函数,析构函数,拷贝构造函数。注意:内联函数只能由用户自己定义。注意:类能自动生成的函数,尤其注意构造函数和析构函数,还有拷贝构造函数。 36 【正确答案】 非线性结构 【试题解析】 数据的逻辑结构有线性结构和非线性结构两大类。 37 【正

18、确答案】 相邻 【试题解析】 常用的存储表示方法有 4种,顺序存储、链式存储、索引存储、散列存储。其中,顺序存储方法是把逻辑上相邻的结点存储在物理位置也相 邻的存储单元中。 38 【正确答案】 可重用性 【试题解析】 本题考查了继承的优点:相似的对象可以共享程序代码和数据结构,从而大大减少了程序中的冗余,提高软件的可重用性。 39 【正确答案】 软件开发 【试题解析】 基于软件工程的目标,软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境,其主体内容是软件开发方法学。软件工程管理包括:软件管理学、软件工程经济

19、学,以及软件心理学等内容。 40 【正确答案 】 集合 【试题解析】 在关系操作中,所有操作对象与操作结果都是关系。而关系定义为元数相同的元组的集合。因此,关系操作的特点是集合操作。 41 【正确答案】 编译 【试题解析】 C+语言是以编译方式实现的高级语言, C+语言程序的实现,必须要使用某种 C+语言的编译器对程序进行编译。 42 【正确答案】 2 【试题解析】 因为运算符 +和 -都是右结合的且优先级高于双目运算符 +,所以上式的运算顺序为先 a+, -b,再 a+b,最后 a自加 1。 43 【正确答案】 4 【试题解析】 本题考查的是考生分析简单循环结构的能力。大体过程为第 1次进入

20、循环, i变成 7, num变为 1, i变为 6;第 2次进入循环, i变成 5, num变为2, i变为 4;第 3次进入循环, i变成 3, num变为 3, i变为 2;第 4次进入循环, i变成 1, num变为 4, i变为 0,循环结束。 44 【正确答案】 动态 【试题解析】 本题考查的是对动态分配内存的掌握,在 C+语言中,使用关键字new和 delete进行动态内存申请和释放。 45 【正确答案】 50 【试题解析】 本题考查的是函数的默认参 数,如果一个函数中有多个参数,则默认参数应从右至左逐个定义,所以题目中 x使用参数 5, y使用默认参数 0。 46 【正确答案】

21、运行时 【试题解析】 本题考查的是多态的概念,多态性主要是指发出同样的消息而被不同类型的对象接收时导致完全不同的行为,它一般分为编译时的多态性和运行时的多态性,比如函数重载和虚函数。 47 【正确答案】 操作符个数 【试题解析】 本题考查的是运算符重载的概念,用户重新定义的运算符不改变原运算符的优先性和结合性,也不改变运算符的语法结构,也就是说重载运算符不会产生新的 运算符。 48 【正确答案】 cout A; 【试题解析】 本题考查的是 C+语言的流输出操作。 cout是 C+语言定义好的输出流对象,其中包括成员函数 put(char c),其功能是输出一个字符到屏幕,实际上 C+语言中已经重载了操作符 “ ”作为流输出操作符。 49 【正确答案】 1000 10 【试题解析】 对于 define宏定义语句,系统会在编译前进行替换。本题替换过程如下: il=1000/s(N) il=1000/s(10) il=1000/10*10 il=1000 i2=1000/f(N) i2=1000/f(10) i2=1000/(10*10) i2=10 50 【正确答案】 静态联编或静态绑定 动态联编或动态绑定 【试题解析】 C+语言编译时多态性的机制是静态绑定,实现 C+语言运行时多态性的机制是动态绑定。

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

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

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