(考试时间120 分钟,满分100 分)
一、选择题(每小题1 分,共40 分)
1.下列叙述中正确的是( )。
A)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
B)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
C)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D)线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性
2.下列叙述中正确的是( )。
A)栈是一种先进后出的线性表
B)队列是一种后进先出的线性表
C)栈与队列都是非线性结构
D)以上三种说法都不对
3.程序设计各阶段中,软件测试的目的是( )。
A)评估软件功能
B)发现并改正程序中的错误
C)改正程序中的错误
D)发现程序中的错误
4.程序开发之前进行需求分析所产生的主要文档是( )。
A)软件集成测试计划 B)软件详细设计说明书
C)用户手册 D)软件需求规格说明书
5.关于计算机软件程序的生命周期,以下叙述正确的是( )。
A)软件产品从提出、实现、使用维护到停止使用退役的过程
B)软件从需求分析、设计、实现到测试完成的过程
C)软件的开发过程
D)软件的运行维护过程
6.在程序设计过程中的面向对象方法中,继承属性是指( )。
A)一组对象所具有的相似性质
B)类之间共享属性和操作的机制
C)各对象之间的共同性质
D)一个对象具有另一个对象的性质
7.数据库管理的概念中,层次型、网状型和关系型数据库划分原则是( )。
A)记录长度 B)文件的大小
C)联系的复杂程度 D)数据之间的联系方式
8.一个人可以使用多台计算机进行不同的工作,而一台计算机可被多个不同的人使用,则实体工作人员与实体计算机之间的联系是( )。
A)一对一 B)一对多
C)多对一 D)多对多
9.数据库设计中反映用户对数据要求的模式是( )。
A)外模式 B)概念模式
C)内模式 D)设计模式
10.有三个关系R、S 和T 如下:
则由关系R 和S 得到关系T 的操作是( )。
A)自然连接 B)差
C)交 D)并
11.现代计算机能直接执行的程序是( )。
A)源程序 B)汇编程序
C)目标程序 D)可执行程序
12.以下关于C 语言语法的叙述中正确的是( )。
A)C 语言规定必须用main 作为主函数名,程序将从此开始执行
B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C)C 语言程序将从源程序中第一个函数开始执行
D)main 的各种大小写拼写形式都可以作为主函数名,如MAIN,Main 等
13.C 程序合法实数是( )。
A)1.0e0.2 B).2e0
C)E8 D)3.14E
14.下列定义语句有错的是( )。
A)int _float;
B)float double_;
C)char IF;
D)float My$:
15.表达式:(int)((double)7/3)-(9)%2 的值是( )。
A)0 B)1
C)2 D)3
16.在C 语言程序运行时想通过scanf("%d%c%d%c",&x,&s,&y,&t);语句为变量x 和y赋数值10 和20,为变量s 和t 赋字符X 和Y。 以下输入形式中正确的是( )。 (注:□代表空格字符)
A)10□X<回车>20□Y<回车>
B)10□X20□Y<回车>
C)10X<回车>20Y<回车>
D)10□X□20□Y<回车>
17.不符合语法的C 语言常量是( )。
A)0.2e+2 B)'12'
C)"\s" D)'\012'
18.C 语言中分支结构中的if(表达式)语句中,关于“表达式”值的叙述中正确的是( )。
A)必须是逻辑值
B)必须是整数值
C)不能为零
D)可以是任意合法的数值
19.与以下语句等价的语句是( )。
A)k=(a<b)? ((b<c)? a:b):((b>c)? b:c);
B)k=(a<b)? ((a<c)? a:c):((b<c)? b:c);
C)k=(a<b)? a:b;k=(b<c)? b:c;
D)k=(a<b)? a:b;k=(a<c)? a:c;
20.有以下程序:
程序执行后的输出结果是( )。
A)-1 B)0
C)1 D)2
21.有以下程序:
程序运行后的输出结果是( )。
22.有以下程序:
程序运行后的输出结果是( )。(www.xing528.com)
A)235 B)2350 C)0235 D)2356
23.以下叙述中正确的是( )。
A)每自定义函数中必须有一条return 语句
B)自定义函数中可以根据不同情况设置多条return 语句
C)定义为void 类型的函数中可以有return 语句
D)没有return 语句的自定义函数在执行结束时不能返回到调用处
24.已定义以下函数:
fun 函数的返回值是( )。
A)不确定的值 B)一个整数
C)形参p 中存放的值 D)形参p 的地址值
25.以下程序段没有语法错误的是( )。
A)int *pt; scanf("%d",&pt); B)int *pt; scanf("%d",pt);
C)int i,*p=&i; scanf("%d",p); D)int k,*pt;*pt=&k;scanf("%d",pt);
26.对于float a[10],*s=a;语句,能够代表数组元素a[3]的是( )。
A)(*s)[3] B)*s+3 C)*s+[3] D)*(s+3)
27.有以下程序:
程序运行后的输出结果是( )。
A)10,1,2,3,4, B)0,1,2,3,4,
C)10,2,3,4,5, D)2,3,4,5,6,
28.有以下程序:
程序运行后的输出结果是( )。
A)16 B)15 C)14 D)13
29.以下关于字符串的定义和赋值语句,正确的是( )。
A)char *s; s={"Text!"}; B)char *s;s="Text!";
C)char s[10];s="Text!"; D)char s[];s="Text!";
30.在C 程序中已经定义了字符串,char*str1="STRING",*str2="string";以下选项中,能够输出“STRING”的语句是( )。
A)if(strcmp(s1,s2)!=0)puts(s1);
B)if(strcmp(s1,s2)!=0)puts(s2);
C)if(strcmp(s1,s2)==1)puts(s1);
D)if(strcmp(s1,s2)==0)puts(s1);
31.有以下程序:
程序运行后的输出结果是( )。
A)Monday B)onday
C)Tuesday D)uesday
32.已知库函数islower(ch)用以判断ch 中的字母是否为小写字母,则下列程序运行后的结果是( )。
A)aa bb CDE! B)Aa Bb CDe!
C)aA Bb CDE! D)aA bB CDE!
33.有以下程序:
程序运行后的输出结果是( )。
A)4 B)9 C)6 D)8
34.有以下程序:
程序执行后的输出结果是( )。
A)15 B)30
C)45 D)60
35.对于如下的C 程序语句,选项中有错误的是( )。
A)scanf("%s",ps[0].name); B)scanf("%d",&ps[0].age);
C)scanf("%c",&(pstr->sex)); D)scanf("%d",pstr->age);
36.若有以下语句:
以下叙述中正确的是( )。
A)可用PS 定义结构体变量
B)可用ST 定义结构体变量
C)ST 是struct 类型的变量
D)PS 是结构体常量
37.有以下程序:
程序运行后的输出结果是( )。
A)102,Mary,1202.0 B)102,Job,1202.0
C)101,Job,1098.0 D)101,Mary,1098.0
38.设有宏定义:
且变量m 已正确定义并赋值,则宏调用:
IsDIV(m,3)&&IsDIV(m,5)
为真时所要表达的是( )。
A)判断m 是否能被3 和5 整除
B)判断m 被3 或者5 整除是否余1
C)判断m 被3 和5 整除是否都余1
D)判断m是否能被3或者5整除
39.有以下程序:
程序运行后的输出结果是( )。
A)1 B)2 C)3 D)6
40.有以下程序:
程序运行后的输出结果是( )。
A)1 2 B)4 5 C)123 456 D)456
二、程序填空题(共18 分)
下列给定程序中,函数fun 的功能是:将s 所指字符串中的所有数字字符移到所有非数字字符之前,并保持数字字符串和非数字字符串原有的次序。
例如,s 所指的字符串为“def35adh3kjsdf7”,执行后结果为“3537defadhkjsdf”。
请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C 中。
不得增行或删行,也不得更改程序的结构!
三、程序修改题(共18 分)
下列给定程序中函数fun 的功能是:用冒泡法对6 个字符串进行升序排列。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C 中,不得增行或删行,也不得更改程序的结构!
四、程序设计题(共24 分)
编写函数fun,其功能是:求ss 所指字符串中指定字符的个数,并返回此值。
例如,若输入字符串123412132,输入字符为3,则输出2。
注意:部分源程序在文件PROG1.C 中。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干语句。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。