国家二级C语言机试(选择题)模拟试卷274
选择题
1.在数据库系统的内部结构体系中,索引属于 ( )。(B)
A. 模式
B. 内模式
C. 外模式
D. 概念模式
解析:内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径,内模式的物理性主要体现在操作系统及文件级上,它还未深入到设备级上(如磁盘及磁盘操作)。
2.一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为( )。(B)
A. 219
B. 229
C. 230
D. 231
解析:二叉树中,度为0的结点数等于度为2的结点数加1,即n2=n0—1,叶子结点即为0,则n2=79,总结点数为n0+n1+n2=80+70+79=229。故B选项正确。
3.一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为(B)
A. 219
B. 229
C. 230
D. 231
解析:根据二叉树的性质,在任意二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个,故总结点数=叶子节点数+度为2的节点数+度为1的节点数=80+79+70=229。
4.设二叉树共有500个结点,其中叶子结点有250个。则度为2的结点个数是(C)
A. 0
B. 1
C. 249
D. 不可能有这样的二叉树
解析:二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。二叉树的第i层至多有2i-1个结点;深度为k的二叉树至多有2k-1个结点;对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1。本题中,叶子结点有250个,度为2的结点数为n2=n0-1=250-1=249。
5.以下各项中,不是C语言字符型或字符串常量的是( )。(C)
A. ″It′S″
B. ″0″
C. ′a=0′
D. ′\010′
解析:C选项是一个赋值表达式。A、B两项是字符串常量,D选项是字符型常量。
6.关系的实体完整性要求关系中不能为空的属性是( )。(A)
A. 主键属性
B. 外键属性
C. 全部属性
D. 候选键属性
解析:关系模型中可以有3类完整性约束:实体完整性约束、参照完整性约束和用户定义的完整性约束。实体完整性约束是指若属性M是关系的主键,则属性M中的属性值不能为空值。
7.下列叙述中,不属于软件需求规格说明书的作用的是( )。(D)
A. 便于用户,开发人员进行理解和交流
B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据
C. 作为确认测试和验收的依据
D. 便于开发人员进行需求分析
解析:软件需求规格说明书有以下几个方面的作用:
①便于用户、开发人员进行理解和交流;
②反映出用户问题的结构,可以作为软件开发工作的基础和依据;
③作为确认测试和验收的依据。
8.下面叙述中错误的是(A)
A. 软件测试的目的是发现错误并改正错误
B. 对被调试的程序进行“错误定位”是程序调试的必要步骤
C. 程序调试通常也称为Debug
D. 软件测试应严格执行测试计划,排除测试的随意性
解析:软件测试是为了发现错误而执行程序的过程。软件测试要严格执行测试计划,排除测试的随意性。程序调试通常也称Debug,对被调试的程序进行“错误”定位是程序调试的必要步骤。
9.下列描述中错误的是( )。(A)
A. 在数据库系统中,数据的物理结构必须与逻辑结构一致
B. 数据库技术的根本目标是要解决数据的共享问题
C. 数据库设计是指在已有数据库管理系统的基础上建立数据库
D. 数据库系统需要操作系统的支持
解析:在数据库系统中,物理独立性是指数据的物理结构(包括存储结构、存取方式等)的改变。如存储设备的更换、物理存储的更换、存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化。
10.以下程序段完全正确的是(A)
A. intk,*p=&k;scanf(’’%d’’,p);
B. int*p;scanf(’’%d’’,p);
C. int*p;scanf(’’%d’’,&p);
D. intk,*p;*p=&k;scanf(’’%d’’,p);
解析:选项B没有对指针进行初始化,无效指针。选项C错在没有对指针进行初始化,无效指针,并且在scanf(“%d”,&p)中无需再进行取地址操作。选项D,语句*p=&k;的左端*p是指针所指内存空间的值,&k是地址,应为p=&k。
11.软件测试的目的是(A)
A. 发现程序中的错误
B. 修改程序中的错误
C. 避免程序中的错误
D. 发现和修改程序中的错误
解析:软件测试的目的是:发现一些可以通过测试避免的开发风险:实施测试来降低所发现的风险:确定测试何时可以结束;在开发项目的过程中将测试看作是一个标准项目。
12.有以下程序:
#include
main()
{
FILE*fp;
int i,a E 6]={1,2,3,4,5,6};
fp=fopen(“d2.dat”,“W+”);
for(i=0;i<6;i++)
fprintf(fp,“%d\n”,a[i]);
rewind(fp);
for(i=0;i<6;i++)
fscanf(fp,“%d”,&aE 5一i]);
fclose(fp);
for(i=0;i<6;i++)
{
prinff(“%d,”,a[i]);
}
prinff(“\n”);
}
程序运行后的输出结果是( )。(D)
A. 4,5,6,1,2,3,
B. 1,2,3,3,2,1,
C. 1,2,3,4,5,6,
D. 6,5,4,3,2,1,
解析:这是对文件的操作,把数组的数写到文件里,然后再从文件里倒序读出。所以输出结果为6,5,4,3,2,1,。
13.以下叙述中正确的是(B)
A. 程序的主函数名除main外,也可以使用Main或main
B. 在C程序中,模块化主要是通过函数来实现的
C. 程序可以包含多个主函数,但总是从第一个主函数处开始执行
D. 书写源程序时,必须注意缩进格式,否则程序会有编译错误
解析:C语言中任何一个有效的程序都有且只能有一个main()函数,不能写成其他形式,一个C程序总是从主函数开始执行,到main函数体执行完后结束,而不论main函数在整个程序中的位置
本文档预览:3600字符,共6986字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载