2015年9月全国计算机等级考试二级《C语言》真题及详解

上传人:lqh1****020 文档编号:88763354 上传时间:2019-05-09 格式:DOC 页数:11 大小:80KB
返回 下载 相关 举报
2015年9月全国计算机等级考试二级《C语言》真题及详解_第1页
第1页 / 共11页
2015年9月全国计算机等级考试二级《C语言》真题及详解_第2页
第2页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《2015年9月全国计算机等级考试二级《C语言》真题及详解》由会员分享,可在线阅读,更多相关《2015年9月全国计算机等级考试二级《C语言》真题及详解(11页珍藏版)》请在金锄头文库上搜索。

1、2015年9月全国计算机等级考试二级C语言真题(总分100, 考试时间120分钟)一、选择题(每小题1分。共40分)1. 下列叙述中正确的是( )。A 解决同一个问题的不同算法的时间复杂度一般是不同的B 解决同一个问题的不同算法的时间复杂度必定是相同的C 对同一批数据作同一种处理,如果数据存储结构不同,不同算法的时间复杂度肯定相同D 对同一批数据作不同的处理,如果数据存储结构相同,不同算法的时间复杂度肯定相同答案:A解析算法的时间复杂度是指执行算法所需要的计算工作量,而计算下作量是用算法所执行的基本运算次数来度量的。解决同一个问题的不同算法的时间复杂度,可能相同也可能不相同。算法的时间复杂度与

2、数据存储结构无关,对同一批数据做同一种处理或者不同处理,数据存储结构相同或者不同,算法的时间复杂度都可能相同或者不同。故选A选项。2. 下列处理中与队列有关的是( )。A 操作系统中的作业调度B 执行程序中的过程调用C 执行程序中的循环控制D 二叉树的遍历答案:A解析队列是指允许在一端进行插入,而在另一端进行删除的线性表。由于最先进入队列的元素将最先出队,所以队列具有“先进先出”的特性,体现了“先来先服务”的原则。作业调度是指根据一定信息,按照一定的算法,从外存的后备队列中选取某些作业调入内存,并为它们创建进程、分配资源再将新创建的进程插入就绪队列的过程。执行程序中的过程调用一般指函数调用,需

3、要调用的时候转入被调用函数地址执行程序,与队列无关。执行程序中的循环控制是指算法的基本控制结构,包括对循环条件的判定与执行循环体,与队列无关。二叉树是一个有限的节点集合,二叉树的遍历是指不重复地访问二叉树中的所有节点,与队列无关。故本题选择A选项。3. 设栈的存储空间为S(1:m),初始状态为topm+1。经过一系列入栈与退栈操作后,top1。现又要将一个元素进栈,栈顶指针top值变为( )。A 发生栈满的错误B 2C mD 0答案:A解析栈是一种特殊的线性表,它所有的插入与删除都限定在表的同一端进行。入栈运算即在栈顶位置插入一个新元素,退栈运算即是取出栈顶元素并将其赋予指定变量。题目中初始状

4、态为topm+1,可知入栈栈顶指针toptop-1,出栈栈顶指针toptop+1,由于栈长为m,当top1时栈满,不能再进行人栈操作。故选A选项。4. 设二叉树共有150个节点,其中度为1的节点有10个,则该二叉树中的叶子节点数为( )。A 71B 70C 69D 不可能有这样的二叉树答案:D解析在树结构中,一个节点所拥有的后件个数称为该节点的度,所有节点中最大的度称为树的度。对任何一棵二叉树,度为0的节点总是比度为2的节点多一个。如果有一棵二叉树,节点总数为150,假设度为0的节点个数为n,则有n+10+n-1150,n705,由于节点个数必须是整数,所以不可能有题目中这样的二叉树。故选择D

5、选项。5. 非空循环链表所表示的数据结构( )。A 有根节点也有叶子节点B 没有根节点但有叶子节点C 有根节点但没有叶子节点D 没有根节点也没有叶子节点答案:A解析在单链表的第一个节点前增加一个表头节点,队头指针指向表头节点,最后一个节点的指针域的值由NULL改为指向表头节点,这样的链表称为循环链表。循环链表是线性结构,有且只有一个根节点,每一个节点最多有一个前件,也最多有一个后件。循环链表表头节点为根节点,链表的最后一个节点为叶子节点,虽然它含有一个指向表头节点的指针,但是表头节点并不是它的一个后件。故选择A选项。6. 设二叉树中共有31个节点,其中的节点值互不相同。如果该二叉树的后序序列与

6、中序序列相同,则该二叉树的深度为( )。A 31B 16C 17D 5答案:A解析二叉树遍历可以分为3种:前序遍历(访问根节点在访问左子树和访问右子树之前)、中序遍历(访问根节点在访问左子树和访问右子树两者之间)、后序遍历(访问根节点在访问左子树和访问右子树之后)。由节点值互不相同而后序序列与中序序列相同,可知该二叉树所有的节点都没有右子树,所以31个节点的二叉树深度为31。故选A选项。7. 在最坏情况下,堆排序的时间复杂度是( )。A O(lgo2n)B 0(nlog2n)C O(n2)D O(n15)答案:B解析若有n个元素的序列,将元素按顺序组成一棵完全二叉树,当且仅当满足下列条件时称为

7、堆,大根堆是指所有节点的值大于或等于左右子节点的值;小根堆是指所有节点的值小于或等于左右子节点的值。在调整建堆的过程中,总是将根节点值与左、右子树的根节点进行比较,若不满足堆的条件,则将左、右子树根节点值中的大者与根节点值进行交换。堆排序最坏情况下需要O(nlog2n)次比较,所以时间复杂度是0(nlog2n),B选项正确。8. 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是( )。A 学籍管理系统B ERP系统C C编译程序D CAI软件答案:C解析计算机软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。系统软件是管理计算机的资源,提高计算机的使用

8、效率,为用户提供各种服务的软件。应用软件是为了应用于特定的领域而开发的软件。支撑软件介于系统软件和应用软件之间,协助用户开发软件的工具型软件,其中包括帮助程序人员开发和维护软件产品的工具软件,也包括帮助管理人员控制开发进程和项目管理的工具软件,如Dephi、PowerBuilder等。选项C属于系统软件,A、B、D选项属于应用软件,故选C选项。9. 存储在计算机内有结构的数据集合是( )。A 数据库B 数据库系统C 数据库管理系统D 数据结构答案:A解析数据库是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库系统是由数据库及其管理软件组成的系统,是应用软件。数据库管理系统是数据库系统

9、的核心,它位于用户与操作系统之间,属于系统软件。数据结构是计算机存储、组织数据的方式。故本题选A选项。10. 在数据库技术中,为提高数据库的逻辑独立性和物理独立性,数据库的结构被划分成用户级、存储级和( )。A 概念级B 外部级C 管理员级D 内部纽答案:A解析数据库系统在其内部分为三级模式,即概念模式、内模式和外模式。概念模式是数据库系统中全局数据逻辑结构的描述,全体用户的公共数据视图。外模式也称于模式或者用户模式,是用户的数据视图,也就是用户所能够看见和使用的局部数据的逻辑结构和特征的描述,是与某一应用有关的数据的逻辑表示。内模式又称物理模式,是数据物理结构和存储方式的描述,是数据在数据库

10、内部的存储方式。所以数据库的结构被划分成用户级、存储级和概念级。故选A选项。11. 以下叙述错误的是( )。A 一个算法所包含的操作步骤应该是有限的B 任何能通过编译和运行的算法都一定能得到所期望的结果C 算法中每一条指令必须有确切的含义D 算法可以用各种描述方法来进行描述答案:B解析算法的特点:零个或多个输入,至少一个输出,可行性(能编程实现),有穷性(有限步出结果),确定性(描述不能有歧义)。可知A,C,D选项正确。C语言中,通过编译,可以运行的程序,不一定符合题目的本意,因此即使可以运行得到结果,也不一定和预期的结果一样,否则就不需要调试和修改程序了,故B选项错误。答案为B选项。12.

11、以下是正确C语言实型常量的是( )。A e-1B e-1C -1eD 1e-1答案:D解析所谓常量是指在程序运行过程中,其值不能被改变的量。在C语言中,有整型常量、实型常量、字符常量和字符串常量等类型。实型常量有两种表示形式:十进制小数形式、指数形式。指数形式中e后面的指数必须是整数,阶码标志e之前需要有数字,由此可知A,B,C选项错误。答案为D选项。13. 以下叙述正确的是( )。A 在C语言中分号是语句的组成部分B C语言程序由C语句组成,可以省略main函数C 分号是C语句之间的分隔符D 所有程序行都必须用分号结束答案:A解析C程序的入口函数是main(),C程序中有且只有一个main函

12、数,故B选项错误。分号是C语言一条语句的结束标志,不是分隔符,C语言分隔符是用来分隔多个变量、数据项、表达式等的符号,包括逗号、空白符、分号和冒号等,C选项错误。C语言的程序不是以分号结束的,因为C语言是面向过程的,从main函数开始在main函数里结束,D选项错误。故答案为A选项。14. 若有定义:double a,b,c;能正确给a,b,c输人数据的语句是( )。A scanf(lflflfa,b,c);B scanf(fff,a,b,c);C scanf(lflflf,a,b,c);D scanf(lflflf,a,b,c);答案:D解析lf,le是针对double类型的,如果仅用f,输

13、入的数据可能不完全被接收,数据的精度可能不足。f主要针对float类型的变量输入,因此B选项错误。根据题目格式可知A,C选项错误。故答案为D选项。15. 有以下程序:程序运行后的输出结果是( )。A IB JC KD H答案:B解析根据题目给出条件printf(”cn”,A+x),x0x9,将十六进制的x转为十进制得x9,即printf(”cn”,A+9),打印格式要求是c,即要求输出一个字符,因此需要从字符A,按字母顺序向后偏移9个位置,可得结果为J。故答案为B选项。16. 设有定义:double x516894;,则语句printf(lfn,(int)(x*1000+05)1000);的输

14、出结果是( )。A 516900B 516800C 000000D 输出格式说明符与输出项不匹配,产生错误信息答案:A解析(x *1000+05)表示x向右移动3位小数,加05,也就是x的小数第4位加5,若这位大于等于5,则进1到个位。因为“516894*1000516894,516894+05516944”,所以(int)(x*1000+05)强制转换为整型结果为5169。“516910000=5169”,由于分母10000为浮点型所以结果自动转换为浮点数,故printf(“lfn”,5169)结果是516900。故答案为A选项。17. 有以下程序:程序输出( )。A 编译有错B 0,0,0,3C 1,1,2,0D 0,1,2,0答案:A解析C语言规定else总是和之前与其最近的且不带else的if配对,题目中,if(a1)b1;c2;默认将与if配对的else省略了,下一句else d3;中else没有匹配的if,为非法else。另外,if的判断条件a1是赋值语句,不是判断语句,此处也会产生编译错误。因此答案为A选项。18. 有以下程序:程序运行后的输出结果是( )。A 0,1B 0,0C 1,-1D 0,2答案:A解析for(;+a-b;);for循环中第1,3表达式为缺省项,判断条件为+a-b;,a-2,b2;,第一次执行了+a和-b,得a-1,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 公务员考试

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号