国家二级(C语言)机试模拟试卷116
选择题
1.下面关于算法的叙述中,正确的是( )。(B)
A. 算法的执行效率与数据的存储结构无关
B. 算法的有穷性是指算法必须能在执行有限个步骤之后终止
C. 算法的空间复杂度是指算法程序中指令(或语句)的条数
D. 以上三种描述都正确
解析:算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。算法的有穷性是指一个算法必须在执行有限的步骤后结束。
2.如果进栈序列为A,B,C,D,则可能的出栈序列是( )。(B)
A. C,A,D,B
B. B,D,C,A
C. C,D,A,B
D. 任意顺序
解析:栈的操作原则为后进先出。选项B)中出栈顺序可按“A进,B进,B出,C进,D进,D出,C出,A出”实现。
3.下列各选项中,不属于序言性注释的是( )。(D)
A. 程序标题
B. 程序设计者
C. 主要算法
D. 数据状态
解析:注释一般为序言性注释和功能性注释。序言性注释常位于程序开头部分,它包括程序标题、程序功能说明、主要算法、接口说明、程序位置、开发简历、程序设计者、复审者、复审日期及修改日期等。功能性注释一般嵌在源程序体之中,用于描述其后的语句或程序的主要功能。
4.下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。(A)
A. 内模式
B. 外模式
C. 概念模式
D. 逻辑模式
解析:数据库管理系统的三级模式结构由外模式、模式和内模式组成。外模式,或子模式,或用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。模式,或逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。内模式,或存储模式,或物理模式,是指数据在数据库系统内的存储介质上的表示,即对数据的物理结构和存取方式的描述。
5.下列叙述中,不属于软件需求规格说明书的作用的是( )。(D)
A. 便于用户,开发人员进行理解和交流
B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据
C. 作为确认测试和验收的依据
D. 便于开发人员进行需求分析
解析:软件需求规格说明书有以下几个方面的作用:
①便于用户、开发人员进行理解和交流;
②反映出用户问题的结构,可以作为软件开发工作的基础和依据:
③作为确认测试和验收的依据。
6.下列不属于软件工程3个要素的是( )。(D)
A. 工具
B. 过程
C. 方法
D. 环境
解析:软件工程包括3个要素,即方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。
7.数据库系统在其内部具有3级模式,用来描述数据库中全体数据的全局逻辑结构和特性的是( )。(B)
A. 外模式
B. 概念模式
C. 内模式
D. 存储模式
解析:概念模式,也称逻辑模式,是对数据库系统中全局数据逻辑结构的描述,是全体用户应用公共数据视图。它不涉及具体的硬件环境与平台,与具体的软件环境也无关。
8.将E—R图转换到关系模式时,实体与联系都可以表示成( )。(B)
A. 属性
B. 关系
C. 记录
D. 码
解析:E—R图由实体、实体的属性和实体之间的联系3个要素组成,关系模型的逻辑结构是一组关系模式的集合,将E—R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。如表4—1所示。
9.某二叉树中度为2的结点有10个,则该二叉树中有( )个叶子结点。(C)
A. 9
B. 10
C. 11
D. 12
解析:根据二叉树的性质3:对任何一棵二叉树,度为0的结点(即叶子结点)总是比度为2的结点多一个。
10.以下叙述中正确的是( )。(A)
A. C程序中注释部分可以出现在程序中任意合适的地方
B. C程序的书写格式是固定的,每行只能写一条语句
C. 构成C程序的基本单位是函数,所有函数名都可以由用户命名
D. 在对C语言程序进行编译时,可以发现注释行中的拼写错误
解析:本题考查的是C语言程序设计的初步知识。选项A),程序中“/*……*/”表示注释部分,注释只是给人看的,对程序的编译和运行不起作用,可以在程序中的任何位置;选项B),C语言的书写格式自由,一行可以写多条语句,一条语句也可以写在不同行上;选项C),一个C程序中必须有且只能有一个由“ma1n”命名的主函数,其他函数由用户自行命名;选项D),程序的注释仅仅是提供阅读之用,并不参与程序的编译,所以编译也就不会发现注释行中的错误。
11.下面的程序在编译时产生错误,其出错原因是( )。
#inc1ude
main()
{int 1_case; float printF;
printf(\\(A)
A. 定义语句出错,1 case不能作为变量名
B. 定义语句出错,printF不能用作用户自定义标识符
C. 定义语句无错,scanf不能作为输入函数使用
D. 定义语句无错,printf不能输出1 case的值
解析:C语言变量名可由数字,字母,下划线构成,但首字符不能为数字。
12.以下不正确的转义字符是( )。(D)
A. ’\\f
B. ’\d’
C. ’\s’
D. ’088’
解析:“’\\\\\\\\’”是反斜线符,“’\\\\d’”是整型变量转义字符,“’\\\\s’’是字符串型转义字符,C语言中没有规定“’088’”为转义字符。
13.下面程序的运行结果是( )。
y=5;x=14;y=((x=3*y,x+6),x—1);
printf(\\(C)
A. x=27, y=27
B. x=12, y=13
C. x=15,y=14
D. x=y=27
解析:本题考查的是逗号表达式。逗号表达式的求解步骤是先求解表达式1,然后依次求解表达式2,直到表达式N的值。整个逗号表达式的值就是最后一个表达式N的值。表达式“(x=3*y,x+6)”中, “x=15”。表达式“y=x—1=14”
14.sizeof(char)是( )。(B)
A. 一种函数调用
B. 一个整型表达式
C. —个字符型表达式
D. 一个不合法的表达式
解析:“sizeof(char)”是一个C语言的关键字,它不是函数调用。“sizeot”的功能是计算出运算对象在计算机的内存中所占用的字节数量,该表达式的返回值是一个整数,而不是一个字符型表达式。
15.下列4个程序中,完全正确的是( )。
B
解析:选项A)中,main()函数后面的分号是错误的,C语言在函数
本文档预览:3600字符,共15197字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载