国家二级C语言机试(选择题)模拟试卷354
选择题
1.下列叙述中正确的是(B)
A. 算法的效率只与问题的规模有关,而与数据的存储结构无关
B. 算法的时间复杂度是指执行算法所需要的计算工作量
C. 数据的逻辑结构与存储结构是一一对应的
D. 算法的时间复杂度与空间复杂度一定相关
解析:算法的时间复杂度是指执行算法所需要的计算工作量。算法的工作量用算法所执行的基本运算的次数来度量,而算法所执行的基本运算次数是问题规模的函数;算法的空间复杂度一般是指执行这个算法所需要的内存空间。算法的时间复杂度与空间复杂度并不相关。数据的逻辑结构就是数据元素之间的逻辑关系,它是从逻辑上描述数据元素之间的关系,是独立于计算机的:数据的存储结构是研究数据元素和数据元素之间的关系如何在计算机中表示,它们并非一一对应。算法的执行效率不仅与问题的规模有关,还与数据的存储结构有关。
2.磁盘处于写保护状态时其中的数据(B)
A. 不能读出,不能删改
B. 可以读出,不能删改
C. 不能读出,可以删改
D. 可以读出,可以删改
解析:磁盘处于写保护状态时其中的数据可以读出来,但是不能修改和删除。
3.以下叙述中正确的是( )。(B)
A. 函数调用时,不必区分函数名称的大小写
B. 调用函数时,函数名必须与被调用的函数名完全一致
C. 函数名允许用数字开头
D. 在函数体中只能出现一次return语句
解析:调用函数的时候只有保证调用语句的函数名和被调函数的函数名、参数列表一致才能保证调用的正确性,选项B正确。C语言对大小写敏感,选项A错。用户自定义的函数名需要遵循用户标识符的命名规则,由字母、数字、下画线组成并且第一个字符不能为数字,选项C错。一个函数每次只能使用一个return语句,但是该函数体中可以有多个返回点,也就是有多条return语句,每次只从其中一点返回,选项D错。答案选B。
4.关系表中的每一行记录称为一个( )。(B)
A. 字段
B. 元组
C. 属性
D. 关键码
解析:在关系表中,每一列称为一个属性,对应表中的一个字段;每一行称为一个元组,对应表中的一条记录。
5.以下选项中,合法的一组C语言数值常量是(A)
A. 12.0Xa23 4.5e0
B. 028.5e.3 -0xf
C. .177 4e1.5 0abc
D. 0x8A 10.000 3.e5
解析:八进制数其开头必须是数字“0”,其数字包括0~7,而在选项B)中,028是错误的。浮点数据的指数形式表示常量中,C语言规定字母e或E之前必须要有数字,且e或E之后的指数必须为整数,而选项C)中4e1.5是错误的。在选项D)中,整型数据10,000的表示形式是错误的。
6.对如下二叉树
(D)
A. ABCDEF
B. DBEAFC
C. ABDECF
D. DEBFCA
解析:所谓后序遍历是指在访问根据结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后遍历右子树,最后访问根结点,并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根点。因此,后序遍历二叉树的过程也是一个递归过程。其简单描述为:若二叉树为空,则结束返回;否则,先后序遍历左子树.然后后序遍历右子树,最后访问根结点。对于后序遍历,第一个访问的结点一定是最左下的结点,最后一个访问的结点一定是根结点,所以选项D)为正确答案。
7.下列选项中不符合良好程序设计风格的是(D)
A. 源程序要文档化
B. 数据说明的次序要规范化
C. 避免滥用goto语句
D. 模块设计要保证高耦合、高内聚
解析:一般来讲,程序设计风格是指编写程序时所表现出的特点、习惯和逻辑思路。程序设计风格总体而言应该强调简单和清晰,程序必须是可以理解的。可以认为,著名的“清晰第一、效率第二”的论点已成为当今主导的程序设计风格。良好的程序设计风格主要应注重和考虑下列几个因素:①源程序文档化,包括下列三个方面:A)符号的命名应具有一定的含义;B)正确的注释能够帮助读者理解程序;C)视觉组织,可以在程序中利用空格、空行、缩进等技巧使程序层次清晰。②数据说明的方法,包括下列三个方面:A)数据说明的次序规范化:B)说明语句中变量安排有序化;C)使用注释来说明复杂数据的结构。③语句的结构应该简单直接,不应该为提高效率而把语句复杂化。④输入和输出方式和风格应尽可能方便用户的使用。
8.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是
B
解析:UInt表示的是无符号整数类,所以它的每个实例都是一个无符号整数,所以排除选项A)和选项C),选项D)是整数集合,所以也排除。
9.下面叙述中错误的是( )。(A)
A. 软件测试的目的是发现错误并改正错误
B. 对被调试的程序进行\\
C. 程序调试通常也称为Debug
D. 软件测试应严格执行测试计划,排除测试的随意性
解析:软件测试的目的是为了发现错误而执行程序的过程,并不涉及改正错误,所以选项A)错误。程序调试的基本步骤有:错误定位、修改设计和代码,以排除错误、进行回归测试,防止引进新的错误。程序调试通常称为Debug,即排错。软件测试的基本准则有:所有测试都应追溯到需求、严格执行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能、妥善保存测试计划等文件。
10.数字字符0的ASCII值为48,若有以下程序,程序运行后的输出结果是
main()
{char a=’1’,b=’2’;
printf(\\(C)
A. 3,2
B. 50,2
C. 2,2
D. 2,50
解析:本题主要考查ASCII码和自加运算。第一个printf语句中,是以字符形式输出b++的值,++放在变量的后面是先使用然后自增,因此第一个printf输出值是2,然后b的值变成’3’。在第二个printf语句中,b的值为’3’,a的值为’1’,所以b-a的值为2。
11.在结构化程序设计中,模块划分的原则是(D)
A. 各模块应包括尽量多的功能
B. 各模块的规模应尽量大
C. 各模块之间的联系应尽量紧密
D. 模块内具有高内聚度、模块间具有低耦合度
解析:内聚性是对一个模块内部各个元素间彼此结合的紧密程度的度量。耦合性是对模块间互相连接的紧密程度的度量。在结构化程序设计中,模块划分应遵循高内聚、低耦合的原则,即减弱模块之间的耦合性和提高模块内聚性,有利于提高软件模块的独立性。
12.有以下程序
main( ){
intx=1,y=0,a=0,b=0;
switch(x){
case1:switch(y){
case0:a++:break;
case1:b++;break;)
case2:a++;b++;break;
case3:a++;b++;)
printf(’’a=%d,b=%d\\
’’,a,b);)
程序的运行结果是(D)
A. a=2,b=2
B. a=1,b=1
本文档预览:3600字符,共12638字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载