国家二级(C语言)机试模拟试卷135
选择题
1.有关线性链表的叙述中正确的是( )。(A)
A. 进行插入与删除时,不需要移动表中的元素
B. 各数据节点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C. 各数据节点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
D. 以上说法均不正确
解析:链表的特点是通过指针链接下一个元素,所以它们的存储顺序和逻辑关系也不一致,但进行插入与删除时,不需要移动表中的元素,只需要改变下一个节点的指针就可以了。
2.有关队列的叙述中正确的是( )。(B)
A. 循环队列是队列的一种链式存储结构
B. 循环队列是队列的一种顺序存储结构
C. 循环队列是非线性结构
D. 循环队列是一种逻辑结构
解析:队列是一种线性结构,所以C、D两项错误,循环队列是一种顺序存储结构。
3.一棵二叉树共有20个节点,其中5个是叶子节点,则度为1的节点数为( )。(B)
A. 15
B. 11
C. 6
D. 4
解析:二叉树中度为0的叶子节点总比度为2的节点多1个,所以度为2的节点个数是5—1=4,总节点是20,所以度为1的节点数是20—5—4=11。
4.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。(A)
A. 内模式
B. 外模式
C. 概念模式
D. 逻辑模式
解析:数据库模式分为内模式、外模式和概念模式。概念模式是指数据库中数据逻辑结构的描述,外模式是用户的数据视图,给每个用户的局部数据描述,内模式是指数据库物理存储结构与存取方法。
5.有三个关系R、S和T如下:
(C)
A. 自然连接
B. 差
C. 除
D. 交
解析:设两个关系R和S的元数分别为r和s(r>s>0),那么T=R÷S是一个(r一s)元的元组的集合,即T中的域是在R中但不在S中的域组成,所以选C项。
6.在软件设计中不使用的工具是( )。(D)
A. PAD图
B. 程序流程图
C. 系统结构图
D. 数据流图(DFD图)
解析:PAD图在软件设计的详细设计阶段用到,系统结构图在程序需求分析阶段用到,程序流程图也在软件详细设计阶段用到,均属于软件设计过程中使用的工具,唯有数据流图不是在软件设计阶段用到的工具,它是结构化分析方法中用到的工具,是在可行性分析阶段用到的工具,而非软件设计阶段。
7.关于需求分析阶段任务的叙述中不正确的是( )。(D)
A. 确定软件系统的功能需求
B. 确定软件系统的性能需求
C. 需求规格说明书评审
D. 制订软件测试计划
解析:因为是软件需求阶段,所以D选项不正确。
8.黑盒测试用例的主要根据是( )。(B)
A. 算法合理性
B. 程序外部功能
C. 相关数据结构
D. 程序流程图
解析:黑盒测试主要是对软件的功能进行测试和验证,因此不用测试软件内部的相关内容,包括算法、数据结构和流程等。
9.关于软件危机表现的叙述中不正确的是( )。(A)
A. 软件过程文件不规范
B. 软件开发生产率低
C. 软件质量难以控制
D. 软件成本不断提高
解析:软件危机主要是指软件需求无法满足,软件进度无法控制,软件不可维护,软件开发生产率低,软件质量难以控制,软件成本不断提高。所以选A项。
10.关于程序模块化的叙述中错误的是( )。(D)
A. 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
B. 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块
C. 把程序分成若干相对独立的模块,可便于编码和调试
D. 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序
解析:程序模块化设计是采用自顶向下、逐步细化的方法,不是自底向上,所以选项D不正确。
11.关于C语言程序格式的叙述中正确的是( )。(D)
A. 用C语言编写的程序只能放在一个程序文件中
B. C程序书写格式严格,要求一行内只能写一个语句
C. C程序中的注释只能出现在程序的开始位置和语句的后面
D. C程序书写格式自由,一个语句可以写在多行上
解析:因为选项B和D是互反选项,所以答案定是其中之一,C语言的一个语句可以写在多行上,所以D正确;A的错误在于C语言可以通过include语句将其他文件的内容引入当前文件,C项的错误在于C语言的注释可以出现在程序中间位置,当然也可以出现在语句前面。
12.设int m=0;与其他三个表达式的结果不同的是( )。(A)
A. m++
B. m+=1
C. ++m
D. m+1
解析:m++是先使用表达式的值再计算加1,所以表达式的值是0,++m是先计算加1再使用值,所以表达式的值为1,其他两个选项表达式的值均为1,所以选项A正确。
13.关于C语言数据类型叙述中,错误的是( )。(C)
A. 若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型
B. 若要保存带有多位小数的数据,可使用双精度类型
C. 若只处理“真”和“假”两种逻辑值,应使用逻辑类型
D. 整数类型可以用来表示自然数
解析:C语言中没有逻辑类型;多种数据类型的全集可以通过结构体来定义,双精度类型可以表示带有多位小数的数据,整数可以精确表示自然数。
14.有如下程序段:
int x=12;
double y=3.141593;
printf(’’%d%8.6f’’,x,y);
其输出结果是( )。(B)
A. 12,3.141593
B. 123.141593
C. 12 3.141593
D. 123.1415930
解析:printf的输出完全按照格式输出,格式中两个输出变量之间没有空格,因此,输出结果应该是123.141593.输出格式中的8.6f。是指总共有8位,其中小数部分占6位,所以D)错。
15.已知字符’A’的.ASCⅡ代码值是65,字符变量a的值是’A’,b的值是’D’。则执行语句orintf’(’’%d,%d’’,a,b一2);的输出结果是( )。(D)
A. A,D
B. A,B
C. 65,68
D. 65,66
解析:C语言的字符变量可以当作特殊的整数变量对待,所以以%d的格式输出字符时,输出的是其对应的ASCⅡ代码。如果其和整数做运算,也是用ASCⅡ代码进行运算,因此,结果是65,66。
16.当x为大于1的奇数时,值为0的表达式是( )。(A)
A. x%2==0
B. x/3
C. x%2!=0
D. x%2==1
解析:x=3,5,7,9…,x%2永远是大于1的奇数,所以A)项表达式为假,C项和D)项表达式为真;x/3的值是大于1的整数,所以表达式不为0。
17.有
本文档预览:3600字符,共16116字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载