C语言第十套题 下载本文

C语言第十套题

一、选择题

1、下列叙述中正确的是

A) 程序执行的效率与数据的存储结构密切相关

B) 程序执行的效率只取决于程序的控制结构 C) 程序执行的效率只取决于所处理的数据量 D) 以上说法均错误

参考答案:A

【解析】程序执行的效率与数据的存储结构、数据的逻辑结构、程序的控制结构、所处理的数据量等有关。

2、下列与队列结构有关联的是 A) 函数的递归调用 B) 数组元素的引用 C) 多重循环的执行 D) 先到先服务的作业调度

参考答案:D

【解析】队列的修改是依先进先出的原则进行的,D正确。

3、

A) DYBEAFCZX C) ABDYECFXZ

B) YDEBFZXCA D) ABCDEFXYZ

参考答案:C

【解析】前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且,在遍历左右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。前序遍历描述为:若二叉树为空,则执行空操作。否则:①访问根结点;②前序遍历左子树;③前序遍历右子树,C正确。

4、一个栈的初始状态为空。现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是 A) 1,2,3,A,B,C C) C,B,A,3,2,1

B) C,B,A,1,2,3 D) 1,2,3,C,B,A

1

参考答案:C

【解析】栈的修改是按后进先出的原则进行的,所以顺序应与入栈顺序相反,故选C。

5、下面属于白盒测试方法的是 A) 等价类划分法 C) 边界值分析法

B) 逻辑覆盖 D) 错误推测法

参考答案:B

【解析】白盒测试法主要有逻辑覆盖、基本路径测试等。逻辑覆盖测试包括语句覆盖、路径覆盖、判定覆盖、条件覆盖、判断-条件覆盖,选择B。其余为黑盒测试法。

6、下面对对象概念描述正确的是 A) 对象间的通信靠消息传递 C) 任何对象必须有继承性

B) 对象是名字和方法的封装体 D) 对象的多态性是指一个对象有多个操作

参考答案:A

【解析】对象之间进行通信的构造叫做消息,A正确。多态性是指同一个操作可以是不同对象的行为,D错误。对象不一定必须有继承性,C错误。封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作,B错误。

7、软件设计中模块划分应遵循的准则是 A) 低内聚低耦合 C) 高内聚低耦合

B) 高耦合高内聚 D) 以上说法均错误

参考答案:C

【解析】根据软件设计原理提出如下优化准则:① 划分模块时,尽量做到高内聚、低耦合,保持模块相对独立性,并以此原则优化初始的软件结构。② 一个模块的作用范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近。③ 软件结构的深度、宽度、扇入、扇出应适当。④ 模块的大小要适中。C正确。

8、下面描述中不属于数据库系统特点的是 A) 数据共享

B) 数据完整性 D) 数据独立性高

C) 数据冗余度高

参考答案:C

【解析】数据库系统的特点为高共享、低冗余、独立性高、具有完整性等,C错误。

9、数据库设计过程不包括 A) 概念设计

B) 逻辑设计

C) 物理设计

D) 算法设计

参考答案:D

【解析】数据库设计过程主要包括需求分析、、概念结构设计、逻辑结构分析、数据库物理设计、数据库实施、数据库运行和维护阶段。答案为D选项。

10、

A) 自然连接

B) 交

C) 投影

D) 并

2

参考答案:A

【解析】关系R和关系S有公共域,关系T是通过公共域的等值进行连接的结果,符合自然连接,选A。

11、下列叙述中正确的是

A) C程序中所有函数之间都可以相互调用 B) 在C程序中main函数的位置是固定的 C) 在C程序的函数中不能定义另一个函数

D) 每个C程序文件中都必须要有一个main函数 参考答案:C

【解析】C程序中主函数不能被其他函数调用,所以A选项错误?main函数可以放在程序开始,也可以放在中间,也可以放在最后,位置不固定,但程序执行时必须从main函数开始,所以B选项错误?在C程序的函数中不能定义另一个函数,可以声明或调用另一个函数,所以C选项正确?每个C程序中必须包含一个main函数,但不一定是每个C程序文件中必须有,用户单独编写的某个函数也可以存储为一个C程序文件,所以D选项错误? 12、以下叙述正确的是

A) C语言函数可以嵌套调用,例如:fun(fun(x)) B) C语言程序是由过程和函数组成的 C) C语言函数不可以单独编译

D) C语言中除了main函数,其他函数不可作为单独文件形式存在 参考答案:A

【解析】C语言程序是由函数组成的,所以B错误?C语言函数可以单独进行编译,所以C错误?每个C程序中必须包含一个main函数,但不一定是每个C程序文件中必须有,用户单独编写的某个函数也可以存储为一个C程序文件,所以D错误? 13、以下选项中合法的标识符是 A) 1_ _ B) 1-1 C) 1_1 D) _11 参考答案:D 【解析】C语言中的标识符由下划线、字母和数字组成,且必须以下划线或字母开始,所以只有D选项正确?

14、表达式3.6-5/2+1.2+5%2的值是 A) 4.3 B) 4.8 C) 3.3 D) 3.8 参考答案:D

【解析】计算5/2,结果取整数值2。计算3.6-2,结果与高精度数据保持一致,即为1.6。计算1.6+1.2,结果为2.8。计算5%2,结果为1。计算2.8+1结果为3.8。所以选择D选项? 15、有以下定义: int a; long b;

double x, y;

则以下选项中正确的表达式是 A) a=x<>y B) a%(int)(x-y) C) (a*y)%b D) y=x+y=x 参考答案:B

【解析】C语言中没有\运算符,所以A选项错误?\运算符的两个操作值必须为整型数据,所以B选项正确?a*y的结果为double型,所以C选项错误?不能将值赋给像x+y这样的表达式,所以D选项错误? 16、有以下程序

3