国家二级C语言机试(选择题)模拟试卷376
选择题
1.下列关于栈的叙述中正确的是( )。(B)
A. 栈按“先进先出”组织数据
B. 栈按“先进后出”组织数据
C. 只能在栈底插入数据
D. 不能删除数据
解析:栈是只允许在栈顶进行插入和删除运算的线性表,按“先进后出”组织数据。
2.下列关于栈的叙述中正确的是( )。(B)
A. 栈按“先进先出”组织数据
B. 栈按“先进后出”组织数据
C. 只能在栈底插入数据
D. 不能删除数据
解析:栈是只允许在栈顶进行插入和删除运算的线性表,按“先进后出”组织数据。
3.有以下程序 #include
main() {
int a=0, b=0;
/*给a赋值a=10;b=20;给b赋值*/
printf(\\(D)
A. a+b=30
B. a+b=10
C. 出错
D. a+b=0
解析:C语言规定,在字符“/*”和其后紧跟的第一个字符“*/”中间的部分是注释内容,且注释部分的内容不参与程序的编译和运行,因此,本题中程序语句“a=10;b=20;”没有执行。
4.已知int a=6;,则执行a+=a-=a*a;语句后a的值为( )。(D)
A. 36
B. 0
C. -24
D. -60
解析:本题考查赋值运算符及赋值表达式的相关知识。因为赋值运算具有自右向左的结合性,所以当a=6时,执行a+=a-=a*a时自右向左运算,首先执行a*a=36,然后将运算结果36代入a=a-a*a,此时a=6-6*6=-30。最后运算最左边的a=a+(a-=a*a)=-30+-30=-60。
5.某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)(D)
A. 3
B. 6
C. 8
D. 12
解析:根据二叉树的性质,度为0的结点(即叶子结点)总是比度为2的结点多一个。题目中的二叉树的叶子结点为1,因此度为2的结点的数目为0,故该二叉树为12层,每层只有一个结点。
6.算法空间复杂度的度量方法是(D)
A. 算法程序的长度
B. 算法所处理的数据量
C. 执行算法所需要的工作单元
D. 执行算法所需要的存储空间
解析:算法空间复杂度是对一个算法在运行过程中临时占用存储空间大小的度量,因此选项D正确。
7.有以下程序,已知字母A的ASCII码为65,程序运行后的输出结果是
main(){char c1,c2;
c1=’A’+’8’-’4’:
c2=’A’+’8’-’5’:
printf(\\(B)
A. D,69
B. E,68
C. E,D
D. 输出无定值
解析:字符变量cl的ASCII值等于69,而字符变量c2的ASCII值等于68,当分别以字符和整型输出cl和c2的ASCII码值时,其结果为E,68。
8.下列选项中,不能作为合法常量的是( )。(B)
A. 1.234e04
B. 1.234e0.4
C. 1.234e+4
D. 1.234e0
解析:用指数形式表示的实型常量需注意两点:①e或E后面的指数必须是整数;②指数必须是不超过数据表示范围的正负整数,并且在e或E前必须有数字。
9.以下各项中,属于合法的转义字符是( )。(A)
A. ′\x41′
B. ′\0x41′
C. ′\X41′
D. ′\0X41′
解析:′\xhh′表示1到2位十六进制所代表的字符,故答案为A。
10.以下选项中可用作C程序合法实数的是 ( )。(A)
A. .1e0
B. 3.0e0.2
C. E9
D. 9.12E
解析:C程序的合法实数有两种表示形式,一种是小数形式,另一种是指数形式,对于用指数形式表示的实数来说,需要注意的是字母e或E之前必须要有数字,且字母e或E后面的指数必须为整数,所以选项A为正确答案。
11.若有以下定义和语句:
#include
char s1[10]=“abcd!”,* s2=\\(C)
A. 10 7
B. 10 5
C. 5 5
D. 5 8
解析:strlen函数返回字符串的长度,求字符串长度时,遇到结束标志‘\0’为止,但是长度不包括结束标识。字符数组s1的后5个元素没有赋值,都为‘\0’,即”abed!”后为‘\0’,所以strlen(s1)的值为5。字符指针s2所指向的字符串中,\n为转义字符换行符,表示1个字符,\\也为转义字符,代表\,也是1个字符.其后为字符串结束标识‘\0’,所以strlen(s2)的值也为5,因此C选项正确。
12.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和(D)
A. 编码设计
B. 测试阶段
C. 运行阶段
D. 物理设计
解析:数据库设计目前一般采用生命周期法,即把整个数据库应用系统的开发分解成目标独立的四个阶段。它们分别是需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段。
13.数据库管理系统是(B)
A. 操作系统的一部分
B. 在操作系统支持下的系统软件
C. 一种编译系统
D. 一种操作系统
解析:数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。
14.数据字典(DD)所定义的对象都包含于( )。(C)
A. 软件结构图
B. 方框图
C. 数据流图(DFD图)
D. 程序流程图
解析:数据字典(DD)是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各元素做出详细的说明。
15.有以下程序
#include
main()
{int b[3][3]={0,1,2,0,1,2,0,1,2),i,j,t=0;
for(i=0;i<3;i++)
for(j=2;j>=i;j–)t+=b[i][j];
printf(\\(C)
A. 4
B. 3
C. 8
D. 9
解析:这道题主要考查的是二维数组的有关知识。在两层for循环语句中,累加上三角元素,所以程序执行的过程为“t=b[0][0]+b[0][1]+b[0][2]+b[1][1]+b[1][2]+b[2][2]=8”。
16.在C语言中,只有在使用时才占用内存单元的变量,其存储类型是( )。(C)
A. auto和static
B. extern和register
C. auto和register
D. static和register
解析:auto:函数中的局部变量,动态地分配存储
本文档预览:3600字符,共11792字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载