二级C语言真题2013年09月-(2) 下载本文

二级C语言真题2013年09月-(2)

(总分:100.00,做题时间:90分钟)

一、选择题(总题数:40,分数:40.00)

1.设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为______。 (分数:1.00) A.4 √ B.6 C.m-5 D.m-6

解析:[解析] 循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用排头指针指向排头元素的前一个位置,因此,从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,队列初始状态为front=rear=m,当front=15,rear=20时,队列中有5个元素,比较次数为4次,故A选项正确。 2.下列叙述中正确的是______。 (分数:1.00)

A.循环队列属于队列的链式存储结构 B.双向链表是二叉树的链式存储结构 C.非线性结构只能采用链式存储结构

D.有的非线性结构也可以采用顺序存储结构 √

解析:[解析] 循环队列是队列的一种顺序存储结构,A选项错误。双向链表为顺序存储结构,二叉树通常采用链式存储结构,B选项错误。完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式,C选项错误,故D选项正确。

3.某二叉树中有n个叶子节点,则该二叉树中度为2的节点数为______。 (分数:1.00) A.n+1 B.n-1 √ C.2n D.n/2

解析:[解析] 对任何一棵二叉树,度为0的节点(即叶子节点)总是比度为2的节点多一个。二叉树中有n个叶子节点,则度为2的节点个数为n-1,故B选项正确。 4.下列叙述中错误的是______。 (分数:1.00)

A.算法的时间复杂度与算法所处理数据的存储结构有直接关系 B.算法的空间复杂度与算法所处理数据的存储结构有直接关系 C.算法的时间复杂度与空间复杂度有直接关系 √

D.算法的时间复杂度与算法程序执行的具体时间是不一致的

解析:[解析] 算法的时间复杂度是指执行算法所需要的计算工作量。数据的存储结构直接决定数据输入,而这会影响算法所执行的基本运算次数,A选项叙述正确。算法的空间复杂度是指执行这个算法所需要的内存空间,其中包括输入数据所占的存储空间,B选项叙述正确。而算法的时间复杂度与空间复杂度没有直接关系,故选择C选项。算法程序执行的具体时间受到所使用的计算机、程序设计语言以及算法实现过程中的许多细节所影响,而算法的时间复杂度与这些因素无关,所以是不一致的,故D选项叙述正确。 5.软件工程的三要素是______。 (分数:1.00)

A.方法、工具和过程 √ B.建模、方法和工具 C.建模、方法和过程

D.定义、方法和过程

解析:[解析] 软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程包含3个要素:方法、工具和过程。故A选项正确。 6.通常软件测试实施的步骤是______。 (分数:1.00)

A.集成测试、单元测试、确认测试 B.单元测试、集成测试、确认测试 √ C.确认测试、集成测试、单元测试 D.单元测试、确认测试、集成测试

解析:[解析] 软件测试的实施过程主要有4个步骤:单元测试、集成测试、确认测试(验收测试)和系统测试。故B选项正确。

7.下面可以作为软件设计工具的是______。 (分数:1.00) A.系统结构图 √ B.数据字典(DD) C.数据流程图(DFD图) D.甘特图

解析:[解析] 结构化分析方法的常用工具:数据流图(DFD)、数据字典(DD)、判定表、判定树。常用的过程设计工具如下所述:图形工具(程序流程图、N-S图、PAD图、HIPO)、表格工具(判定表)、语言工具(PDL)。结构化设计方法使用的描述方式是系统结构图。故A选项正确。 8.在数据库设计中,将E-R图转换成关系数据模型的过程属于______。 (分数:1.00) A.逻辑设计阶段 √ B.需求分析阶段 C.概念设计阶段 D.物理设计阶段

解析:[解析] 采用E-R方法得到的全局概念模型是对信息世界的描述,并不适用于计算机处理,为了适合关系数据库系统的处理,必须将E-R图转换成关系模式。这就是逻辑设计的主内容,故A选项正确。 9.设有关系表学生表S(学号,姓名,性别,年龄,身份证号),每个学生学号唯一。除属性学号外,也可以作为键的是______。 (分数:1.00) A.姓名

B.身份证号 √ C.姓名,性别,年龄 D.学号,姓名

解析:[解析] 候选键是二维表中能唯一标识元组的最小属性集。一个二维表有多个候选码,则选定其中一个作为主键供用户使用。学生学号与身份证号均是唯一的,都可以作为主键,故B选项正确。 10.在数据库系统中,考虑数据库实现的数据模型是______。 (分数:1.00) A.概念数据模型 B.逻辑数据模型 √ C.物理数据模型 D.关系数据模型

解析:[解析] 数据模型按照不同的应用层次分为以下3种类型:概念数据模型,它是一种面向客观世界、面向用户的模型,它与具体的数据库管理系统和具体的计算机平台无关;逻辑数据模型,是面向数据库系统的模型,着重于在数据库系统一级的实现;物理数据模型,是面向计算机物理实现的模型,此模型给出了数据模型在计算机上物理结构的表示。故B选项正确。 11.以下选项中叙述正确的是______。 (分数:1.00)

A.结构化程序的三种基本结构是循环结构、选择结构、顺序结构 √ B.C语言源程序不编译也能直接运行 C.使用N-S流程图不能描述复杂算法

D.计算机能够直接运行C语言源程序,不必进行任何转换

解析:[解析] 结构化程序主要由3种基本控制结构组成,循环结构、选择结构、顺序结构,它们组成的算法结构可以解决任何复杂的问题,A选项正确。编译就是把高级语言变成计算机可以识别的二进制语言,不经过编译的源程序是不能运行的,B选项错误。算法可以用各种描述方法进行描述,N-S流程图把算法的每一步都用一个矩形框来表示,把一个个矩形框按执行的次序连接起来就是一个算法描述,无论算法复杂与否都能用N-S流程图描述,C选项错误。C语言源程序需要经过编译和连接生成目标文件和可执行文件后才能运行,故D选项错误。

12.以下选项中叙述正确的是______。 (分数:1.00)

A.使用三种基本结构就可以实现任何复杂算法 √

B.只要程序包含了三种基本结构中的任意一种,就是结构化程序 C.程序语法错误要在运行时才能发现 D.C语言程序不需要包含main()函数

解析:[解析] 结构化程序主要由3种基本控制结构组成,循环结构、选择结构、顺序结构,它们组成的算法结构可以解决任何复杂的问题,A选项正确。结构化程序设计是以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,在设计其中一个模块时,不会受到其它模块的牵连,因而可将原来较为复杂的问题化简为一系列简单模块的设计,而不是说包含了三种基本结构就是结构化程序,B选项错误。程序语法错误是在编译过程中发现的,一般来说编译器只能检查语法和最简单的语义错误,而不检查程序的逻辑错误,C选项错误。一个C程序由一个或若干个函数构成,而程序中有且只能有一个主函数,即main函数,C程序总是从main函数开始执行,其他函数由main函数直接或间接调用执行,所以C语言程序必须包含main函数,故D选项错误。

13.以下选项中,合法的C语言常量是______。 (分数:1.00) A.1.234 √ B.\ C.\ D.2Kb

解析:[解析] 整型常量:用不带小数点的数字表示。实型常量:用带小数点的数字表示。字符型常量:用带有单引号的一个字符表示。字符串常量:用一对双引号括起来的一串字符。1.234为实型常量,A选项正确。‘C++’不合法,若改成“C++”则为字符串常量,B选项错误。“/2.0不合法,不是任何类型常量,C选项错误。2Kb不合法,若加上双引号“2Kb”为字符串常量,故D选项错误。 14.以下选项中,合法的C语言实数是______。 (分数:1.00) A.3.1e0.4 B..2e0 √ C.E13 D.7.12E

解析:[解析] 实型常量:用带小数点的数字表示,其值有两种表达形式,分别为十进制小数形式和指数形式。十进制小数形式由数字和小数组成,必须有小数点,且小数点的位置不受限制。指数形式由十进制数加阶码标志“e”或“E”以及阶码(只能为整数,可以带符号)组成。.2e0为指数形式实数,B选项正确。3.1e0.4,阶数不是整数,A选项错误。E13阶码标志前缺少十进制数,C选项错误。7.12E缺少阶码,故D选项错误。

15.设a,b,c是整型变量且均已赋值,则以下选项中错误的赋值语句是______。 (分数:1.00) A.a=(b=3)=1; √ B.a=(b=2)+c;