全国计算机等级考试二级C语言真题题库3+2015年9月
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国计算机等级考试二级C语言真题题库3 2015年9月
(总分:43.00,做题时间:120分钟)
一、选择题(每小题1分,共40分)(总题数:40,分数:40.00)
1.下列叙述中正确的是()。
(分数:1.00)
A.程序可以作为算法的一种表达方式√
B.算法的有穷性是指算法的规模不能太大
C.算法的复杂度用于衡量算法的控制结构
D.算法的效率与数据的存储结构无关
解析:[解析]算法的有穷性是指操作步骤有限且能在有限时间内完成,如果一个算法执行耗费的时间太长,即使最终得出了正确结果,也是没有意义的,故B选项错误。一个算法复杂度的高低体现在运行该算法所需要的计算机资源的多少,故C选项错误。算法的效率是指算法执行的时间,算法执行时间需通过依据该算法编制的程序在计算机上运行时所消耗的时间来度量,这就与算法本身设计的优劣以及具体的编程实现有关,数据的存储结构会极大的影响程序的执行时间,故D选项错误。算法在实现时需要用具体的程序设计语言来实现,所以程序可以作为实现算法的一种表达方式。故选A选项。
2.某循环队列的存储空间为Q(1:m),初始状态为front=rear=m。现经过一系列的入队操作和退队操作后,front=m-1,rear=m,则该循环队列中的元素个数为()。
(分数:1.00)
A.m-1
B.1 √
C.m
D.0
解析:[解析]循环队列长度为m,由初始状态为front=rear=m可知此时循环队列为空。入队运算时,首先队尾指针(rear)进1(即rear+1),然后在rear指针指向的位置插入新元素。特别的,当队尾指针rear =m+1时,置rear=1。迟队运算时,排头指针(front)进1(即front+1),然后删除front指针指向的位置上的元素,当排头指针front=m+1时,置front=1。从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,则该循环队列中的元素个数为m-(m-1)=1。故选择B 选项。
3.能从任意一个节点开始没有重复地扫描到所有节点的数据结构是()。
(分数:1.00)
A.循环链表√
B.双向链表
C.二叉链表
D.有序链表
解析:[解析]在单链表的第一个节点前增加一个表头节点,队头指针指向表头节点,最后一个节点的指针域的值由NULL改为指向表头节点,这样的链表称为循环链表。在循环链表中,只要指出表中任何一个节点的位置,就可以从它出发没有重复地扫描到表中其他所有的节点。双向链表与二叉链表都可以扫描到所有节点,但是会有重复。有序链表如果是单链表的情况下,不能扫描到所有节点。故A选项正确。
4.某棵树中共有25个节点,且只有度为3的节点和叶子节点,其中叶子节点有7个,则该树中度为3的节点数为()。
(分数:1.00)
A.不存在这样的树√
B.7
C.8
D.6
解析:[解析]树是一种简单的非线性结构,直观地来看,树是以分支关系定义的层次结构。在树结构中,一个节点所拥有的后件个数称为该节点的度,所有节点中最大的度称为树的度。首先假设这样的树是存在
的,由于只有度为3的节点和叶子节点,可知最后一层都为叶子节点,倒数第二层一部分节点的度为3,一部分节点为叶子节点。节点总数为25,叶子节点有7个,则度为3的节点有18个,由于(34-1-1)/2<18<(35-1-1)/2可知,树共有5层,前三层有度为3的节点(34-1-1)/2=13个,第四层有34-1=27个节点,其中5个是度为3的节点,22个是叶子节点,此时与题目给出的叶子节点有7个相矛盾,故不存在这样的树。故选择A选项。
5.在最坏情况下,二分查找法的时间复杂度为()。
(分数:1.00)
C.log2n√
D.n
解析:[解析]二分法查找也称拆半查找,能使用二分法查找的线性表必须满足两个条件,用顺序存储结构以及线性表有序。利用二分法查找元素X的过程如下:将X与线性表的中间项比较,如果X的值与中间项的值相等,则查找成功,结束查找;如果X小于中间项的值,则在线性表的前半部分以二分法继续查找;如果X大于中间项的值,则在线性表的后半部分以二分法继续查找。可以证明,对于长度为n的有序线性表,在最坏情况下,二分法查找需比较log2n次,故时间复杂度为log2n。故选择C选项。
6.某二叉树共有730个节点,其中度为1的节点有30个,则叶子节点个数为()。
(分数:1.00)
A.不存在这样的二叉树√
B.351
C.1
D.350
解析:[解析]在树结构中,一个节点所拥有的后件个数称为该节点的度,所有节点中最大的度称为树的度。对任何一棵二叉树,度为0的节点总是比度为2的节点多一个。如果有一棵二叉树,节点总数为730,假设度为0的节点个数为n,则有n+30+n-1=730,n=350.5,由于节点个数必须是整数,所以不可能存在题目中这样的二叉树。故选A选项。
7.软件开发中需求分析的主要任务是()。
(分数:1.00)
A.定义和描述目标系统“做什么”√
B.获取需求
C.给出软件解决方案
D.需求评审
解析:[解析]需求分析阶段的工作可以分为4个方面:需求获取、需求分析、编写需求规格说明书和需求评审。需求分析的任务是发现需求、求精、建模和定义需求的过程,是描述“做什么”的软件开发阶段。故选A选项。
8.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是()。(分数:1.00)
A.学生成绩管理系统
B.ERP系统
C.办公自动化系统
D.UNIX系统√
解析:[解析]系统软件是管理计算机的资源,提高计算机的使用效率,为用户提供各种服务的软件。应用软件是为了应用于特定的领域而开发的软件。D选项属于系统软件,A、B、C选项属于应用软件。故选D选项。
9.医生可以为病人开不同的药,而同一种药也可由不同医生开给病人,则实体医生和实体药之间的联系是()。
(分数:1.00)