(考试时间120 分钟,满分100 分)
一、选择题(每小题1 分,共40 分)
1.有关队列的叙述中正确的是( )。
A)循环队列是队列的一种链式存储结构
B)循环队列是队列的一种顺序存储结构
C)循环队列是非线性结构
D)循环队列是一种逻辑结构
2.有关线性链表的叙述中正确的是( )。
A)进行插入与删除时,不需要移动表中的元素
B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
D)以上说法均不正确
3.一棵二叉树共有20 个结点,其中5 个是叶子结点,则度为1 的结点数为( )。
A)15 B)11
C)6 D)4
4.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。
A)内模式 B)外模式
C)概念模式 D)逻辑模式
5.在满足实体完整性约束的条件下( )。
A)一个关系中可以没有任何候选关键字
B)一个关系中有且只有一个候选关键字
C)一个关系中必须有多个候选关键字
D)一个关系中应该有一个或多个候选关键字
6.有三个关系R、S 和T 如下:
则由关系R 和S 得到关系T 的操作是( )。
A)自然连接 B)差
C)除 D)交
7.关于软件危机表现的叙述中不正确的是( )。
A)软件过程文件不规范 B)软件开发生产率低
C)软件质量难以控制 D)软件成本不断提高
8.关于需求分析阶段任务的叙述中不正确的是( )。
A)确定软件系统的功能需求 B)确定软件系统的性能需求
C)需求规格说明书评审 D)制定软件测试计划
9.黑盒测试用例的主要根据是( )。
A)算法合理性 B)程序外部功能
10.在软件设计中不使用的工具是( )。
A)PAD 图 B)程序流程图
C)系统结构图 D)数据流图(DFD 图)
A)可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
B)把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块
C)把程序分成若干相对独立的模块,可便于编码和调试
D)可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序
12.关于C 语言程序格式的叙述中正确的是( )。
A)用C 语言编写的程序只能放在一个程序文件中
B)C 程序书写格式严格,要求一行内只能写一个语句
C)C 程序中的注释只能出现在程序的开始位置和语句的后面
D)C 程序书写格式自由,一个语句可以写在多行上
13.以下数值常量不符合C 语言语法的是( )。
A)3.0E0.2 B)1e3 C)012 D)0xabcd
14.关于C 语言数据类型叙述中,错误的是( )。
A)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型
B)若要保存带有多位小数的数据,可使用双精度类型
C)若只处理“真”和“假”两种逻辑值,应使用逻辑类型
D)整数类型可以用来表示自然数
15.设int m=0;与其他三个表达式的结果不同的是( )。
A)m++ B)m+=1
C)++m D)m+1
16.有如下程序段:
其输出结果是( )。
A)12,3.141593 B)123.141593
C)12 3.141593 D)123.1415930
17.已知字符'A'的ASCII 代码值是65, 字符变量a 的值是'A',b 的值是'D'。 则执行语句printf'("%d,%d",a,b-2);的输出结果是( )。
A)A,D B)A,B C)65,68 D)65,66
18.当x 为大于1 的奇数时,值为0 的表达式是( )。
A.x%2==0 B)x/3
C)x%2!=0 D)x%2==1
19.有以下程序:
程序运行时,输入的值在哪个范围才会有输出结果? ( )
A)小于4 的整数 B)不等于8 的整数
C)大于4 或等于8 的整数 D)大于4 且小于8 的整数
20.有以下程序:
程序运行后的输出结果是( )。
A)0 B)-1 C)1 D)7
21.有以下程序:
程序运行后的输出结果是( )。
A)abcDEF B)ABcDEf C)aBcDeF D)AbCdEf
22.有以下程序:
程序执行后的输出结果是( )。
A)x:4 B)x:8 C)x:6 D)x:12
23.若用变量作为实参调用函数,以下正确的是( )。
A)函数的形参和实参分别占用不同的存储单元
B)形参只是形式上的存在,不占用具体存储单元(www.xing528.com)
C)同名的实参和形参占同一存储单元
D)函数的形参会覆盖实参存储空间的值
24.设有以下函数:
A)int(*pf)(int,char); pf= &fun;
B)int*pf();pf=fun;
C)int*pf();*pf=fun;
D)int(*pf)( int, char*);pf=fun;
25.若要求定义具有10 个float 型元素的一维数组a,则以下定义语句中错误的是( )。
A)float a[5+5]; B)float n=10,a[n];
C)#define n 5 D)#define N 10
float a[2*n]; float a[N];
26.有以下程序:
程序执行后的输出结果是( )。
A)3 5 7 B)7 5 3 C)3 6 9 D)7 5 1
27.有以下程序:
程序运行后的输出结果是( )。
A)2341098765 B)0345698712
C)9876543210 D)0987651234
28.有以下程序:
程序运行后的输出结果是( )。
A)9,1,2,6, B)6,2,3,4, C)6,4,3,2, D)9,3,4,6,
29.以下关于字符串的表达式中正确的语句组是( )。
A)char *s;s={"Chinese!"}; B)char *s; s = "Chinese!";
C)char s[10];s="Chinese!"; D)char s[]; s="Chinese!";
30.若有以下定义和语句:
则输出结果是( )。
A)107 B)105 C)3 7 D)3 5
31.有以下程序:
程序执行后的输出结果是( )。
A)1235678 B)2345678 C)1245678 D)7654321
32.有以下函数:
以下关于sf 函数功能叙述正确的是( )。
A)将字符串s 复制到字符串t
B)求字符串的ASCII 码值
C)求字符串s 的长度
D)求字符串s 所占字节数
33.有以下程序:
程序运行后的输出结果是( )。
A)1 B)2 C)3 D)4
34.关于函数的叙述中错误的是( )。
A)C 程序函数中定义的自动变量,系统不自动赋确定的初值
B)在C 程序的同一函数中,可以在复合语句内定义变量
C)C 程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值
D)C 程序函数的形参不可以说明为static 型变量
35.有以下程序段:
以下选项中表达式的值为15 的是( )。
A)++ps->x B)ps->x C)*ps->y D)(ps++)->x
36.有以下程序:
程序运行后的输出结果是( )。
A)10,9,8,7,6,5,4,3,2,1,
B)2,3,4,5,6,7,8,9,10,11,
C)11,10,9,8,7,6,5,4,3,2,
D)2,3,4,5,6,7,8,9,10,10,
37.有以下程序:
程序运行后的输出结果是( )。
A)Tom,m,98,90 B)Bob,f,99,89
C)Bob,f,98,90 D)Tom,f,99,89
38.有以下程序:
程序运行后的输出结果是( )。
A)7,18 B)18,18
C)7,7 D)18,7
39.有以下程序:
程序运行后的输出结果是( )。
A)16 B)8
C)40 D)4
40.设文件指针fp= fopen("file","w"),关于此文本文件操作的叙述中正确的是( )。
A)可以随意读和写 B)写操作结束后可以从头开始读
C)可以在原有内容后追加写 D)只能写不能读
二、程序填空题(共18 分)
下列给定程序中,函数fun 的功能是:在形参ss 所指字符串数组中查找与形参t 所指字符串相同的串,找到后返回该串在字符串数组中的位置(即下标值),若未找到则返回-1。 ss 所指字符串数组中共有N 个内容不同的字符串,且串长小于M。
请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C 中。
不得增行或删行,也不得更改程序的结构!
三、程序修改题(共18 分)
下列给定程序中,函数fun 的功能是:从整数10 到55 之间,查找能被3 整除且有一位上的数值是5 的数,把这些数放在b 所指的数组中,这些数的个数作为函数值返回。 规定函数中a1 放个位数,a2 放十位数。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODIl.C 中,不得增行或删行,也不得更改程序的结构!
四、程序设计题(共24 分)
规定输入的字符串中只包含字母和#号。请编写函数fun,其功能是:将字符串尾部的#号全部删除,前面和中间的#号不动。
例如,字符串中的内容为:“#AB#CD#EF”,删除后,字符串中的内容应当是:“#AB#CD#EF”。在编写函数时,不得使用C 语言提供的字符串函数。
注意:部分源程序在文件PROC1.C 中。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。