国家二级(C语言)机试模拟试卷141
选择题
1.下列关于数据链表的叙述中正确的是( )。(A)
A. 只有一个根节点的数据结构不一定是线性结构
B. 有一个以上根节点的数据结构不一定是非线性结构
C. 循环链表是非线性结构
D. 双向链表是非线性结构
解析:二叉树只有一个根节点,但不是线性结构,所以A正确。有一个以上根节点的结构一定是非线性结构,链表是线性结构。
2.关于算法和程序,以下叙述中正确的是( )。(D)
A. 算法就是程序
B. 设计算法时只需要考虑数据结构的设计
C. 设计算法时只需要考虑结果的可靠性
D. 以上三种说法都不对
解析:算法是程序的一部分;设计算法时不只考虑数据结构和结果的可靠性,还应该考虑数据对象的运算和操作等其他方面,所以选D。
3.下列关于二叉树的叙述中,正确的是( )。(A)
A. 叶子节点总是比度为2的节点多1个
B. 叶子节点总是比度为2的节点多2个
C. 叶子节点数是度为2的节点数的两倍
D. 度为2的节点数是度为1的节点数的两倍
解析:二叉树中的叶子节点总比度为2的节点多1个。
4.软件生命周期中的各个阶段都不包括的活动是( )。(A)
A. 市场调研
B. 需求分析
C. 软件测试
D. 软件维护
解析:软件生命周期是指产品从提出、实现、使用、维护到停止使用退役的过程,因此,它不包括市场调研活动。
5.某系统总体结构图如下图所示:
(C)
A. 7
B. 6
C. 3
D. 2
解析:可知:该树的深度为3,例如,系统-功能2-功能2.1,就是最深的度数的一个表现。
6.程序测试的主要目的是( )。(D)
A. 设计测试程序
B. 验证程序的正确性
C. 发现程序中的错误
D. 改正程序中的错误
解析:程序测试的主要目的是改正程序中的错误。
7.下列有关数据库的描述中正确的是( )。(A)
A. 在需求分析阶段建立数据字典
B. 在概念设计阶段建立数据字典
C. 在逻辑设计阶段建立数据字典
D. 在物理设计阶段建立数据字典
解析:数据字典是在需求分析阶段建立的。
8.数据库系统的三级模式不包括( )。(A)
A. 数据模式
B. 内模式
C. 外模式
D. 概念模式
解析:数据库系统的三级模式是概念模式、内模式和外模式。
9.面向对象设计方法的主要特征是( )。(A)
A. 继承
B. 自顶向下
C. 模块化
D. 逐步求精
解析:面向对象设计方法的基本特征:封装性、继承性、多态性、抽样性。
10.关于C语言常量的叙述中错误的是( )。(A)
A. 经常被使用的变量可以定义成常量
B. 常量分为整型常量、实型常量、字符常量和字符串常量
C. 常量可分为数值型常量和非数值型常量
D. 所谓常量,是指在程序运行过程中,其值不能被改变的量
解析:常量和变量的概念不同,常量是指在程序运行中,其值不能被改变的量,变量是在程序运行过程中会发生变化的量,所以选项A不正确,常量分为整型常量、实型常量、字符常量和字符串常量,也可分为数值型常量和非数值型常量。
11.以下关于C语言的相关叙述中正确的是( )。(A)
A. 简单C语句必须以分号结束
B. C程序中的每一行只能写一条语句
C. C语言程序中的注释必须与语句写在同一行
D. C语句必须在一行内写完
解析:简单C语句必须以分号结束,多条语句可以写在同一行上,注释也可以单独成行或有多行注释,另外,C语句不一定要写在一行上,除了特别的一些地方(如字符串引用)之外,C语句可以用硬回车连接。
12.以下关于算法的叙述中错误的是( )。(B)
A. 算法正确的程序可以有零个输入
B. 算法正确的程序可以有零个输出
C. 算法正确的程序最终一定会结束
D. 算法正确的程序对于相同的输入一定有相同的结果
解析:程序可以不用输入,但一定要有输出,所以B不正确;算法正确的程序一定会结束,而且相对于相同的输入输出一定相同。
13.关于C语言的用户标识符中,不合法的是( )。(C)
A. a_1
B. Xa3c
C. A一一x
D. _1
解析:C语言的用户标识符由数字、字母和下划线构成,选项C中出现的短线不是下划线,所以不合法。
14.关于C语言的赋值语句,合法的是( )。(B)
A. a=b==1;
B. e=n%3;
C. x+y=u;
D. x=2=6+2;
解析:常量不能被赋值,所以D错,表达式不能被赋值,所以C错,赋值运算的级别高手逻辑运算符,所以A错,若写成a=(b==1)则是合法的表达式。
15.在使用scanf(’’%2d%f’’,&a,&b);语句并从键盘输入123 456后,a和b的值分别是( )。(A)
A. 12和3.0
B. 123和456.0
C. 12和456.0
D. 12和345 6.0
解析:scanf是严格执照格式输入的,2d指只输入两位数字,所以a=12,b=3,另外,题目中没有%c格式用来输入字符,所以空格将会被看作是分隔符(此处为结束符)。
16.下列C语言语句会出现错误的是( )。(A)
A. char a=’123’
B. char a=’\n’;
C. char a=’a’;
D. char =’’\x2d’’;
解析:选项A将一个字符串赋给了一个字符变量是不正确的;选项B和C是字符赋值,正确;选项D是十六进制表示法。也正确。
17.下列表达式的值当变量c的值不为2、4、6时也为“真”的是( )。(D)
A. (c>=2&&c<=6)&&(c%2!=1)
B. (c=2)‖(c==4)‖(c==6)
C. c>=2&&c<=6)&&!(c%2)
D. (c>=2&&c<=6)‖(c!=3)‖(c!=5)
解析:‖是或运算符,即只要其中有一个表达式为真,结果即为真,当c=3或c=5时,选项D最左边的表达式为真,所以整个表达式为真。
18.C语句中不能够正确计算下述公式的程序段是( )
f=(C)
A. if(x>=0) f=sqrt(x);
if(x<0) f=sqrt(-x);
B. if(x>=0) f=sqrt(x);
else f=sqrt(-x);
C. f=sqrt(x)
i
本文档预览:3600字符,共15429字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载