二级C语言-610
(总分100, 做题时间90分钟)
一、选择题
1. 
下列叙述中正确的是______。
A 栈与队列都只能顺序存储
B 循环队列是队列的顺序存储结构
C 循环链表是循环队列的链式存储结构
D 栈是顺序存储结构而队列是链式存储结构
    分值: 1
答案:B
[解析] 栈是所有的插入与删除都限定在表的同一端进行的线性表;队列是指允许在一端进行插入,而在另一端进行删除的线性表,二者既可以顺序存储也可以链式存储。为了充分地利用数组的存储空间,把数组的前端和后端连接起来,形成一个环形的表,称为循环队列,因此循环队列是队列的一种顺序存储结构。
2. 
算法空间复杂度的度量方法是______。
A 算法程序的长度
B 算法所处理的数据量
C 执行算法所需要的工作单元
D 执行算法所需要的存储空间
    分值: 1
答案:D
[解析] 算法的空间复杂度是指执行这个算法所需要的存储空间,包括:①输入数据所占的存储空间;②程序本身所占的存储空间;③算法执行过程中所需要的额外空间。
3. 
设有栈S和队列Q,初始状态均为空。首先依次将A,B,C,D,E,F入栈,然后从栈中退出三个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为______。
A DEFXYZABC
B FEDZYXCBA
C FEDXYZCBA
D DEFZYXABC
    分值: 1
答案:B
[解析] 栈是所有的插入与删除都在同一端进行的线性表。队列是只允许在一端进行插入,而在另一端进行删除的线性表。将A,B,C,D,E,F入栈后,栈中元素为ABCDEF,退出三个元素入队,队列元素为FED,将X,Y,Z入栈后栈中元素为ABCXYZ,全部入队后,队列元素为FEDZYXCBA,队列的出队顺序与入队顺序一致。
4. 
某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的后序序列为______。
A EFGDCBA
B DCBEFGA
C BCDGFEA
D DCBGFEA
    分值: 1
答案:D
[解析] 二叉树遍历的三种方式:①前序遍历,访问根结点在访问左子树和访问右子树之前;②中序遍历,访问根结点在访问左子树和访问右子树两者之间;③后序遍历,访问根结点在访问左子树和访问右子树之后。二叉树的前序序列为ABCDEFG,A为根结点。中序序列为DCBAEFG,可知DCB为左子树结点,EFG为右子树结点。依此类推,画出该二叉树,二叉树的后序序列为DCBGFEA。
5. 
软件生命周期是指______。
A 软件产品从提出、实现、使用、维护到停止使用、退役的过程
B 软件的需求分析、设计与实现
C 软件的开发与管理
D 软件的实现和维护
    分值: 1
答案:A
[解析] 软件生命周期是指软件产品从提出、实现、使用、维护到停止使用、退役的过程。
6. 
通常软件测试实施的步骤是______。
A 集成测试、单元测试、确认测试
B 单元测试、集成测试、确认测试
C 确认测试、集成测试、单元测试
D 单元测试、确认测试、集成测试
    分值: 1
答案:B
[解析] 软件测试的实施过程主要有4个步骤:单元测试、集成测试、确认测试(验收测试)和系统测试。
7. 
下面不属于对象的主要特征的是______。
A 惟一性
B 多态性
C 可复用性
D 封装性
    分值: 1
答案:C
[解析] 对象的基本特点主要有:①标识惟一性,一个对象通常可由对象名、属性和操作三部分组成;②分类性,指将具有相同属性和操作的对象抽象成类;③多态性,指同一个操作可以是不同对象的行为,不同对象执行同一操作产生不同的结果;④封装性,从外面看只能看到对象的外部特性,对象的内部对外是不可见的;⑤模块独立性,由于完成对象功能所需的元素都被封装在对象内部,所以模块独立性好。
8. 
数据库设计中,描述数据间内在语义联系得到E—R图的过程属于______。
A 逻辑设计阶段
B 需求分析阶段
C 概念设计阶段
D 物理设计阶段
    分值: 1
答案:C
[解析] 数据库设计主要有需求分析、概念设计、逻辑设计和物理设计四个阶段。概念设计阶段使用E-R模型,将现实世界的信息结构统一由实体、属性以及实体之间的联系来描述。
9. 
在数据库系统中,用于对客观世界中复杂事物的结构及它们之间的联系进行描述的是______。
A 概念数据模型
B 逻辑数据模型printf函数的执行顺序
C 物理数据模型
D 关系数据模型
    分值: 1
答案:A
[解析] 数据模型按照不同的应用层次分为:①概念数据模型,着重于对客观世界复杂事物的描述及对它们内在联系的刻画;②逻辑数据模型,是面向数据库系统的模型,着重于数据库
系统级的实现;③物理数据模型,是面向计算机物理实现的模型,给出了数据模型在计算机上物理结构的表示。
10. 
有三个关系R、S和T如下:

则由关系R和S得到关系T的操作是______。
A .并
B 投影
C .交
D 选择
    分值: 1
答案:A
[解析] 常用的关系运算有交、除、连接及自然连接等。其中,并运算R∪S是将S中的记录追加到R后面,与题目中结果相符。
11. 
结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是______。
A 三种基本结构不可以嵌套使用
B 顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移
C 选择结构是根据不同的条件执行不同分支中的语句
D 循环结构是根据条件决定是否重复、重复执行多少次循环体语句
    分值: 1
答案:A
[解析] 结构化程序主要由3种基本控制结构组成,顺序结构是最基本的算法结构,当执行由这些语句构成的程序时,将按这些语句在程序中的先后顺序逐条执行,没有分支,没有转移,没有步骤之间的相互约束,没有对某一步骤的多次使用,B项正确;选择结构根据不同的条件去执行不同分支中的语句,C项正确;循环结构就是根据各自的条件,使同一组语句重复执行多次,D项正确。三种结构可以嵌套使用,A项错误。
12. 
在C语言中,以下选项中不能正确表示10×1000之值的是______。
A 1.0E4.0
B 1.E4
C 10E3
D 1.0e4
    分值: 1
答案:A
[解析] 实型常量用带小数点的数字表示,其值有两种表达形式,分别为十进制小数形式和指数形式。指数形式由十进制数加阶码标志“e”或“E”以及阶码(只能为整数,可以带符号)组成。指数形式中阶码必须是整型常量,A项中4.0是浮点数,不能正确表示10×1000的值。
13. 
以下选项中,合法的C语言常量是______。
A 21.84
B "CPP"
C "\1.0
D 2MB
    分值: 1
答案:A
[解析] 21.84是浮点型常量,A项正确;字符常量是单引号括起来的一个字符,字符串常量是双引号括起来的字符序列,BC两项错误;C语言常量不能直接用未加引号的字母、数字组合,D项错误。
14. 
有以下程序:
#include<stdio.h>
main()
{
int x=010, y=10;
printf("%d,%d\n",++x,y--);
}
程序运行后的输出结果是______。
A 10,9
B 11,10
C 010,9
D 9,10
    分值: 1
答案:D
[解析] 整型常量有3种表示方法,分别是十进制数表示法、八进制数表示法和十六进制数表示法,八进制整型常量以0作为前缀。x=(010) 8 =(8) 10 ,y=10,++x先自加后取值,输出9,y--先取值输出10,再自减y=9。
15. 
若有定义:int a; float b; double c;,程序运行时输入:a=1,b=2,c=3<回车>,能把值1输入给变量a、值2输入给变量b、值3输入给变量c的输入语句是______。
A scanf("a=%d,b=%f,c=%lf",&a,&b,&c);
B scanf("%d%f%lf",&a,&b,&c);
C scanf("a=% d,b=% lf,c=%lf",&a,&b,&c);