国家二级(C语言)笔试模拟试卷81(题后含答案及解析).doc
国家二级(C语言)笔试模拟试卷81(题后含答案及解析)
题型有:1.选择题2.填空题
选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.在深度为5的满二叉树中,结点的个数为()。
A.32
B.31
C.16
D.15
正确答案:B
解析:根据二叉树的定义,深度为m的二叉树最多有2m-1个结点。由此可知答案为B项。注意,满二叉树中叶子结点的个数为2m-1个。
2.在数据结构中,从逻辑上可以把数据结构分成()。
A.动态结构和静态结构
B.线性结构和非线性结构
C.集合结构和非集合结构
D.树形结构和图状结构,
正确答案:B
解析:逻辑结构即数据元素之间的逻辑关系,是从逻辑关系上描述数据,与数据的存储无关。因此根据数据元素与数据元素之间的关系,逻辑结构被分为两大类:线性结构和非线性结构。
3.下面这个程序段的时间复杂度是()。for(i=1;i<n;i++){y=y+3;for(j=0;j<=(2*n);j++)x++;}
A.O(log2n)
B.O(n)
C.O(nlog2n)
D.O(n2)
正确答案:D
解析:语句的频度指的是该语句重复执行的次数。一个算法中所有语句的频度之和构成了该算法的运行时间。在本例算法中,语句①的频度是n-1,语句②的频度是(n-1)(2n+1)-2n2-n-1。则该程序段的时间复杂度是T(n)=n-1+2n2-n-1=O(n2)。
4.程序流程图(PFD)中的箭头代表的是()。
A.组成关系
B.控制流
C.调用关系
D.数据流
正确答案:B
解析:在程序流程图(PFD)中,箭头代表的是控制流,用以指明程序的动态执行顺序。
5.在面向对象方法中,如果“鸡”是一类对象,“公鸡”、“母鸡”等都继承了“鸡”类的性质,因而是“鸡”的()。
A.子类
B.实例
C.对象
D.父类
正确答案:A
解析:面向对象方法中,继承是表示类之间的相似性的机制。如果类X继承类Y,则X为Y的子类,Y为X的父类(超类)。如果“鸡”是一类对象,“公鸡”、“母鸡”等都继承了“鸡”类的性质,因而是“鸡”的子类。
6.在结构化设计方法中生成的结构图(SC)中,带有圆圈的小箭头表示()。
A.模块
B.数据的流向
C.模块间的信息传递
D.模块之间的调用关系
正确答案:C
解析:在结构化设计方法中生成的结构图(SC)中,包括以下4种成分:模块(用矩形框表示)、调用(带有箭头的连线)、模块间信息传递(带有圆圈的小箭头)、辅助符号(如菱形符号表示有条件的选择,循环调用符号表示循环调用下层模块等)。
7.程序的测试方法中,使用测试用例在计算机上运行程序,使程序在运行过程中暴露错误,这种方法称为()。
A.静态分析
B.动态分析
C.代码检查
D.代码质量度量
正确答案:B
解析:从是否需要执行被测软件的角度,测试方法可以分为静态测试和动态测试方法。静态测试包括代码检查、静态结构分析、代码质量度量等,动态测试是为了发现错误而执行程序的过程,是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例去运行程序,以发现程序错误的过程。如果将程序的测试方法分为静态分析和动态分析,则使用测试用例在计算机上运行程序,使程序在运行过程中暴露错误,这是动态分析。
8.关系表中的每一横行称为一个()。
A.元组
B.码
C.属性
D.字段
正确答案:A
解析:在关系模型中,把数据看成一个二维表,每一个二维表称为一个关系。关系表中的每一横行称为一个元组。
9.下列关系运算中,能使经运算后得到的新关系中元组个数少于原来关系中元组个数的是()。
A.选择
B.投影
C.连接
D.并
正确答案:A
解析:选择运算是在指定的关系中选取所有满足给定条件的元组,构成一个新的关系,而这个新的关系是原关系的一个子集。因此,一个关系经选择运算后得到的新关系中,元组个数少于原来关系中元组个数。
10.利用E-R模型进行数据库的概念设计,可以分成3步:首先设计局部E-R模型,然后把各个局部E-R模型综合成一个全局的模型,最后对全局E-R模型进行(),得到最终的E-R模型。
A.简化
B.结构化
C.最小化
D.优化
正确答案:D
解析:在概念设计中按照模块的划分画出每个模块的E-R图,然后把这些图合成一张E-R图作为全局模型,最后应该对全局E-R图进行优化,看看是否有重复和不合理的地方。不能只是进行简单的合并。
11.能将高级语言程序转换成目标语言程序的是___