国家二级(C语言)机试历年真题试卷汇编16
选择题
1.设栈的顺序存储空间为S(0:49),栈底指针bottom=49,栈顶指针top=30(指向栈顶元素)。则栈中的元素个数为( )。(C)
A. 30
B. 29
C. 20
D. 19
解析:栈底指针bottom=49,栈顶指针top=30,则栈中的元素个数为49—30+1=20个,答案选C。
2.下列与队列结构有关联的是( )。(D)
A. 函数的递归调用
B. 数组元素的引用
C. 多重循环的执行
D. 先到先服务的作业调度
解析:队列的修改是依“先进先出”的原则进行的,故D选项正确。
3.下列叙述中正确的是( )。(B)
A. 有一个以上根结点的数据结构不一定是非线性结构
B. 只有一个根结点的数据结构不一定是线性结构
C. 循环链表是非线性结构
D. 双向链表是非线性结构
解析:线性结构应满足:①有且只有一个根结点;②每个结点最多有一个前驱,也最多有一个后继,所以B选项正确。有一个以上根结点的数据结构一定是非线性结构,所以A选项错误。循环链表和双向链表都是线性结构的数据结构,所以CD选项错误。故B选项正确。
4.面向对象方法中,继承是指( )。(D)
A. 一组对象所具有的相似性质
B. 一个对象具有另一个对象的性质
C. 各对象之间的共同性质
D. 类之间共享属性和操作的机制
解析:继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,因此继承是指类之间共享属性和操作的机制,选项D正确。
5.数据库设计中反映用户对数据要求的模式是( )。(C)
A. 内模式
B. 概念模式
C. 外模式
D. 设计模式
解析:数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户的公共数据视图。外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述,因此选择C。内模式又称物理模式,它给出了数据库物理存储结构与物理存取的方法。
6.程序测试的目的是( )。(C)
A. 为被测程序设计正确的测试用例
B. 发现并改正程序中的错误
C. 发现程序中的错误
D. 改正程序中的错误
解析:程序测试是使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别,即为发现错误而执行程序的过程,而不是改正错误。故正确答案为C。
7.在数据库中,数据模型包括数据结构、数据操作和( )。(A)
A. 数据约束
B. 数据类型
C. 关系运算
D. 查询
解析:数据模型是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架,即描述了数据结构、数据操作及数据约束。故正确答案为A。
8.以下叙述中正确的是( )。(B)
A. 程序的算法只能使用流程图来描述
B. 结构化程序的三种基本结构是循环结构、选择结构、顺序结构
C. N-S流程图只能描述简单的顺序结构的程序
D. 计算机可以直接处理C语言程序,不必进行任何转换
解析:程序的算法可以用流程图、程序语句、伪代码和流程图以及文字进行描述,选项A错误;N—S能完整描述程序的所有结构,不仅仅包括简单的顺序结构,选项C错误;C语言的源文件需要经过编译、链接生成可执行文件后才可以被计算机执行,选项D错误;循环结构、选择结构、顺序结构是结构化程序的三种基本结构,所以答案选B。
9.以下选项中不能用于描述算法的是( )。(C)
A. 伪代码和流程图
B. 程序语句
C. E—R图
D. 文字叙述
解析:E-R图即“实体一联系图”将现实世界中的要求转化成实体、联系、属性等基本概念,描述的是实体之间的联系,而不能对算法进行描述,相对而言,程序语句、伪代码和流程图以及文字都能描述算法的基本思想,所以答案选C。
10.层次型、网状型和关系型数据库的划分原则是( )。(D)
A. 记录长度
B. 文件的大小
C. 联系的复杂程度
D. 数据之间的联系方式
解析:层次模型的基本结构是树形结构,网状模型是一个不加任何条件限制的无向图,关系模型采用二维表来表示,因此三种数据库的划分原则是数据之间的联系方式,选项D正确。
11.有三个关系R、S和T加下:
(B)
A. 自然连接
B. 差
C. 交
D. 并
解析:关系T中的元组是R关系中有而S关系中没有的元组的集合,进行的是差的运算。
12.以下叙述中正确的是( )。(C)
A. 不同函数的形式参数不能使用相同名称的标识符
B. 用户自己定义的函数只能调用库函数
C. 实用的C语言源程序总是由一个或多个函数组成
D. 在C语言的函数内部,可以定义局部嵌套函数
解析:一个C程序可以有一个或多个程序文件,所以也可以有一个或多个函数,选项C正确;除了main函数不能被其他函数调用之外,用户自定义函数可以调用其他任意函数,选项B错误;函数是一个独立的模块,不同函数之间的定义相互没有影响,所以标识符可以相同,选项A错误;函数体内部只可以调用但是不可以定义其他函数,选项D错误;答案选C。
13.以下选项中叙述正确的是( )。(B)
A. C程序必须由main语句开始
B. 函数体必须由{开始
C. C程序中的注释可以嵌套
D. C程序中的注释必须在一行里完成
解析:编写函数的时候需要用“{}”将其函数体括起来,表示是该函数的一部分,所以函数体必须由“{”开始,选项B正确;C程序必须由main函数开始,而不是main语句,选项A错误;C程序中的注释有单行注释“//”和多行注释“/*…*/”,多行注释以“/*”开始,直到遇到“*/”结束,只是寻找配套,而不能嵌套,选项C、D错误;答案选B。
14.下列选项中正确的标识符是( )。(C)
A. 一a1
B. a[i]
C. a2_i
D. int
解析:本题考查标识符的命名规则。标识符只能由字母、数字、下画线组成;数字不能作为标识符的开头;关键字不能作为标识符。A选项中“一”和B选项中“[”和“]”均不满足标识符的构成条件;D选项中int是关键字,故C选项正确。
15.有以下程序(字母A的ASCII代码为65):
#include <stdio.h>
main()
{
char c1=’A’,c2=’Y’;
printf(\\(D)
A. 输出格式不合法,输出出错信息
B. A Y
C. 65 90
D. 65 89
解析:考查字符型数据。字符常量与其ASCII码值一一对
本文档预览:3600字符,共15029字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载