国家二级C语言机试(选择题)模拟试卷319
选择题
1.以下选项中不合法的标识符是(B)
A. FOR
B. &a
C. print
D. _00
解析:介法的标识符要满足组成字符为a~z以及A~z,数字字符0到9和下划线,其中数字不开头,不能是关键字。选项B)中,&不属于组成字符,是错误的。
2.若变量已正确定义并赋值,以下不能构成C语句的选项是(C)
A. A=a+b;
B. B++;
C. a=a+b
D. A?a:b;
解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。
3.以下选项中不合法的标识符是(B)
A. FOR
B. &a
C. print
D. ——00
解析:合法的标识符要满足组成字符为a~z以及A~z,数字字符0到9和下划线,其中数字不开头,不能是关键字。选项B中,&不属于组成字符,是错误的。
4.以下选项中不合法的标识符是(B)
A. .FOR
B. &a
C. print
D. 0
解析:合法的标识符要满足组成字符为a~z以及A~z,数字字符0到9和下划线,其中数字不开头,不能是关键字。选项B中,&不属于组成字符,是错误的。
5.在数据处理中,其处理的最小单位是( )。(B)
A. 数据
B. 数据项
C. 数据结构
D. 数据元素
解析:数据元素是由多个数据项组成,数据是能够被计算机识别、存储和加工处理的信息载体,数据处理的最小单位是数据项。
6.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(A)
A. 连接符
B. 大写字母
C. 数字字符
D. 下划线
解析:在C语言中,合法标识符的命令规则是:标识符可以由字母、数字或下划线组成,并且第一个字符必须为字母或下划线。在C语言的标识符中,大写字母和小写字母被认为是两个不同的字符。选项A是连字符,不在C语言规定的命名变量标识符的范围内。
7.C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是(D)
A. 关键字可用作用户标识符,但失去原有含义
B. 在标识符中大写字*和小写字*被认为是相同的字符
C. 用户标识符可以由字*和数字任意顺序组成
D. 预定义标识符可用作用户标识符,但失去原有含义
解析:预定义标识符是C语言中的标识符,在C语言中也有特定的含义,如函数printf、scanf、sin等和编译预处理命令名(如define和inc1ude)。预定义标识符可以作为用户标识符使用,只是这样会失去系统规定的原义。
8.某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)(D)
A. 3
B. 4
C. 6
D. 7
解析:根据二叉树的性质,度为0的结点(即叶子结点)总是比度为2的结点多一个。题目中的二叉树的叶子结点为1,因此度为2的结点的数目为0,故该二叉树为7层,每层只有一个结点。
9.执行以下程序段后,w的值为( )。
int w=’A’,x=14,y=15;
w=((x ‖ y)&&(w<’a’));(C)
A. -1
B. NULL
C. 1
D. 0
解析:字符变量w的初值为字符“’A’”,其ASCH码值为65,字符“’at’”的ASCII码值为97,所以关系表达式“w<’a’”的值为1:变量x=14,变量y=15,“x‖y”为或,x、y均为真,所以x‖y的结果1。因而逻辑表达式“(x‖y)&&(w<’a’)”的值为1。
10.下面函数调用语句含有实参的个数为( )。
func((exp1,exp2),(exp3,exp4,exp5));(B)
A. 1
B. 2
C. 3
D. 5
解析:本题考查函数调用时的实参形式。这里有一个逗号运算的考查,(a,b)的运算结果为b,因而只有一个值,结合func的调用形式,可以知道实参的个数只有2个。
11.某系统结构图如下图所示
(D)
A. 2
B. 3
C. 4
D. n
解析:系统结构图的宽度指的是整体控制跨度(最大模块数的层)的表示,上图中系统结构图的宽度为n,答案选D。
12.带链队列空的条件是(A)
A. front=rear=NULL
B. front=rear=-1
C. front=NULL且rear=-1
D. front=-1且rear=NULL
解析:带链队列空的条件有两个:一个是front=rear,一个是它们都等于空。
13.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是 ( )。(A)
A. 控制流
B. 加工
C. 存储文件
D. 源和潭
解析:数据流图用于抽象描述一个软件的逻辑模型,它由一些特定的图符构成,包括4个方面,即加工、数据流、存储文件、源和潭。
14.以下不构成无限循环的语句或语句组是(A)
A. n=0;do{++n;)while(n<=0);
B. n=0;while(1){n++;}
C. n=10;while(n);{n–;}
D. for(n=0,i=1;;i++)n+=i;
解析:选项B)中while(1)永远为真所以进入死循环,选项C)中while(n=10)同理,选项D)中for循环没有循环限定条件也将进入无限循环,只有选项A)中while(n<=0)循环判定成立,循环将不进入无限循环。
15.若有以下程序
#include
main(){int a=1,b=2,c=3,d=4;
if((a=2)&&(b=1))c=2;
if((c==3)Il(d=-1))a=5;
printf(\\(D)
A. 2,1,2,-1
B. 2,2,2,4
C. 1,2,3,4
D. 5,1,2,-1
解析:代码中有两条并列的if语句,第一条if语句,逻辑与表达式(a=2)&&f1)=1)中,a=2,则执行b=1,得到该逻辑与表达式值为1,执行分支语句c=2;第二条if语句(c==3)‖(d=-1),c==3不成立,执行d=-1,而后得出整个逻辑与表达式值为1,执行分支语句a=5。
16.下面描述中错误的是(A)
A. 系统总体结构图支持软件系统的详细设计
B. 软件设计是将软件需求转换为软件表示的过程
C. 数据结构与数据库设计是软件设计的任务之一
D. PAD图是软件详细设计的表示工具
解析:软件设计是将软件需求转换为软件表示的过程;数据结构与数据
本文档预览:3600字符,共11496字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载