国家二级C语言机试(选择题)模拟试卷588
选择题
1.分时操作系统不具备的特点是( )。(B)
A. 同时性
B. 实时性
C. 及时性
D. 交互性
解析:允许多个联机用户同时使用一台计算机进行计算的操作系统称为分时操作系统。分时操作系统具有以下特点:多路性(又称同时性,终端用户感觉上好像独占计算机)、交互性、独立性(终端用户彼此独立,互不干扰)和及时性(快速得到响应)。故本题答案为B选项。
2.下列叙述中正确的是( )。(A)
A. 在栈中,栈顶指针的动态变化决定栈中元素的个数
B. 在循环队列中,队尾指针的动态变化决定队列的长度
C. 在循环链表中,头指针和尾指针的动态变化决定链表的长度
D. 在线性链表中,头指针和尾指针的动态变化决定链表的长度
解析:在栈中,通常用指针top来指示栈顶的位置,用指针bottom来指示栈底的位置。栈顶指针top动态反映了栈中元素的变化情况。在循环队列中,队头指针和队尾指针的动态变化决定队列的长度。在链式存储结构中,各数据节点的存储序号是不连续的,并且各节点在存储空间中的位置关系与逻辑关系也不一致,故头指针、尾指针或栈顶指针无法决定链表长度。故本题答案为A选项。
3.某完全二叉树共有256个节点,则该完全二叉树的深度为( )。(C)
A. 7
B. 8
C. 9
D. 10
解析:根据完全二叉树的性质:具有n个节点的完全二又树的深度为[log2n]+1。本题中完全二叉树共有256个节点,则其深度为[log2256]+1=8+1=9。故本题答案为C选项。
4.以下属于良好程序设计风格的是( )。(A)
A. 源程序文档化
B. 程序效率第一
C. 随意使用无条件转移语句
D. 程序输入输出的随意性
解析:要形成良好的程序设计风格,主要应注意和考虑:源程序文档化;数据说明的次序规范化,说明语句中变量安排有序化,使用注释来说明复杂数据的结构;程序编写要做到清晰第一、效率第二,先保证程序正确再要求提高速度,避免不必要的转移;对所有的输入数据都要进行检验,确保输入数据的合法性。故本题答案为A选项。
5.对软件设计中应遵循的准则描述正确的是( )。(B)
A. 高耦合、低内聚
B. 高内聚、低耦合
C. 模块独立性仅与内聚度相关
D. 内聚与耦合无关
解析:软件设计应遵循的准则有抽象、逐步求精和模块化、信息隐蔽和局部化、模块独立性。
模块的独立洼程度是评价设计好坏的重要标准,有两个定性标准度量,即模块间的耦合性和模块内的内聚拦E。
耦合性是模块问互相连接的紧密程度的度量。一个模块的耦合性越高则该模块的独立性越弱。内聚性是指一个模块内部各个元素间彼此结合的紧密程度。一个模块的内聚性越高则该模块的独立性越强。好的软件设计,应尽量做到高内聚、低耦合。故本题答案为B选项。
6.下列叙述中正确的是( )。(B)
A. 数据库系统避免了一切冗余
B. 数据库系统减少了数据冗余
C. 数据库系统中数据的一致性是指数据类型一致
D. 数据库系统比文件系统能管理更多的数据
解析:数据库系统共享性大,冗余度小,但只是减少了冗余,并不是避免一切冗余。数据的一致性是指系统中同一数据在不同位置出现时应保持相同的值,而不是数据类型的一致。数据库系统比文件系统有更强的管理控制能力,而不是管理更多的数据。故本题答案为B选项。
7.有两个关系R和T如下所示:
(D)
A. 并
B. 交
C. 选择
D. 投影
解析:从关系模式中指定若干属性组成新的关系称为投影。对关系R进行投影运算的结果记为πA(R),其中,A为R中的属性列。本题中关系T中的两列与关系R中的两列相同,故为投影运算。故本题答案为D选项。
8.计算机能直接执行的程序是( )。(D)
A. 源程序
B. 目标程序
C. 汇编程序
D. 可执行程序
解析:计算机能直接执行的程序是可执行程序,其扩展名为.exe。故本题答案为D选项。
9.以下选项中,值为1的表达式是( )。(B)
A. 1—‘0’
B. 1—’\0’
C. 1’ —0
D. \0’ —‘0’
解析:字符\\
10.以下选项中是非转义字符的是( )。(A)
A. \d’
B. \t’
C. \b’
D. \r’
解析:C语言中,转义字符又称反斜线字符,这些字符常量总是以一个反斜线开头后加一个特定的字符。题干中,\\
11.C语言的逻辑表达式在特定情况下会产生\\(A)
A. 若x的值为0,则\\
B. 若x的值为1,则\\
C. 若y的值为0,则\\
D. 若y或x的值为0,则表达式值为0,\\
解析:题干中,\\
12.已知字符A的ASCⅡ值是65,字符变量c1的值是。’A’,c2的值是‘D’,则执行语句\\(D)
A. 65,68
B. A,68
C. A,B
D. 65,66
解析:输出时以%d整型格式输出,所以输出字符变量c1的值为65,c2—2的值为68—2,即66。故本题答案为D选项。
13.下列选项中,当x为大于1的奇数时,值为0的表达式是( )。(A)
A. x%2==0
B. x/2
C. x%2!=0
D. x%2==1
解析:算术运算符的优先级高于关系运算符的优先级。所以当x为大于1的奇数时,A选项的值为假,即0。B选项的值为不定值,但绝对不是0。C选项的值为真,即l。D选项的值为真,即1。故本题答案为A选项。
14.有以下程序:
#include <stdio.h>
main()
{int x=10,y=11,z=12;
if(y<z)
x=y;y=z;z=x;
printf(\\(A)
A. x=11 y=12 z=11
B. x=10 y=10 z=10
C. x=11 y=11 z=10
D. x=10 y=10 z=12
解析:if条件为真,执行\\
15.有以下程序:
#include <stdio.h>
main()
{ int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;
for(i=0;i<3;i++)
for(j=i;j<=i;j++)t+=b[i][b[j][i]];
printf(\\(B)
A. 3
B. 4
C. 1
D
本文档预览:3600字符,共7465字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载