fseek(fp,0L,SEEK_SET); /* 文件位置指针移到文件开头 */ fwrite(s2,5,1,fb); fclose(fb); }
A)Basican B)BasicFortran C)Basic D)FortranBasic 答案:A
44) 以下叙述中错误的是
A)C语言源程序经编译后生成后缀为.obj的目标程序
B)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件 C)C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中 D)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令 答案:D
45) 以下叙述中错误的是
A)算法正确的程序最终一定会结束 B)算法正确的程序可以有零个输出
C)算法正确的程序可以有零个输入 D)算法正确的程序对于相同的输入一定有相同的结果 答案:B
46) 以下叙述中错误的是
A)C程序必须由一个或一个以上的函数组成 B)函数调用可以作为一个独立的语句存在 C)若函数有返回值,必须通过return语句返回 D)函数形参的值也可以传回给对应的实参 答案:D
47) 设有以下定义和语句
char str[20]=\ p=str;
则以下叙述中正确的是
A)*p与str[0]中的值相等 B)str与p的类型完全相同 C)str数组长度和p所指向的字符串长度相等
D)数组str位中存放的内容和指针变量p中存放的内容相同 答案:A
48) 以下叙述中错误的是
A)C程序中的#include和#define行均不是C语句 B)除逗号运算符外,赋值运算符的优先级最低 C)C程序中,j++;是赋值语句 D)C程序中,+、-、*、/、%号是算术运算符,可用于整型和实型数的运算
答案:D
49) 以下叙述中正确的是
A)预处理命令行必须位于C源程序的起始位置 B)在C语言中,预处理命令行都以\开头
C)每个C程序必须在开头包含预处理命令行:#include
50) 以下叙述中错误的是
A)可以通过typedef增加新的类型 B)可以用typedef将己存在的类型用一个新的名字来代表 C)用typedef定义新的类型名后,原有类型名仍有效
D)用typedef可以为各种类型起别名,但不能为变量起别名 答案:A
二、填空题 (每空 2 分, 共 40 分)
请将每一个空的正确答案写在答题处【1】至【20】。
1) 对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为【1】。
本小题第1空答案:45
2) 在面向对象方法中,【2】描述的是具有相似属性与操作的一组对象。 本小题第1空答案:类
3) 在关系模型中,把数据看成是二维表,每一个二维表称为一个【3】。 本小题第1空答案:关系 或 关系表
4) 程序测试分为静态分析和动态测试。其中【4】是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。 本小题第1空答案:静态分析
5) 数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为【5】。 本小题第1空答案:物理独立性
6) 若变量a,b已定义为int类型并赋值21和55,要求用printf函数以a=21,b=55的形式输出,请写出完整的的输出语句【6】。
本小题第1空答案:printf(\或 printf(\
7) 以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否则输出NO。当给a、b、c输入三角形三条边长时,确定a、b、C能构成三角形的条件是需同时满足三个条件:a+b>c,a+c>b,b+c>a 。请填空。 main()
{ float a,b,c;
scanf(\
if(【7】) printf(\、b、c 能构成三角形 */ else printf(\、b、c 不能构成三角形 */ }
本小题第1空答案:a+b>c&&a+c>b&&b+c>a 或 a+b>c&&b+c>a&&a+c>b 或 (a+b>c&&a+c>b&&b+c>a) 或 (a+b>c&&b+c>a&&a+c>b)
8) 以下程序的输出结果是【8】。 main()
{ int a[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,s=0; for(i=0;i<3;i++) s+=a[i][i]+a[i][3-i-1]; printf(\ }
本小题第1空答案:30
9) 当运行以下程序时,输入abed,程序的输出结果是:【9】。 insert(char str[]) { int i;
i=strlen(str); while(i>0)
{ str[2*i]=str[i];str[2*i-1]='*';i--;} printf(\ }
main()
{ char str[40];
scanf(\ }
本小题第1空答案:a*b*c*d*
10) 下面程序的运行结果是:【10】。 fun(int t[],int n)
{ int i,m;
if(n==1)return t[0]; else
if(n>=2){m=fun(t,n-1); return m;} }
main()
{ int a[]={11,4,6,3,8,2,3,5,9,2}; printf(\ }
本小题第1空答案:11
11) 现有两个C程序文件T18.c和myfun.c同在TC系统目录(文件夹)下,其中T18.c文件如下: #include
{ fun(); printf(\ myfun.c文件如下: void fun()
{ char s[80],c; int n=0;
while((c=getchar())!='\\n') s[n++]=c; n--;
while(n>=0) printf(\ }
当编译连接通过后,运行程序T18时,输入Thank!则输出结果是:【11】。 本小题第1空答案:!knahT
12) 以下函数fun的功能是返回str所指字符串中以形参c中字符开头的后续字符串的首地址,例如:由所指字符串为:Hello!,c中的字符为e,则函数返回字符串:ello!的首地址。若str所指字符串为空串或不包含c中的字符,则函数返回NULL。请填空。 char *fun(char *str,char c) { int n=0; char *p=str; if(p!=NULL)
while(p[n]!=c&&p[n]!='\\0')n++; if(p[n]=='\\0') return NULL; return(【12】); }
本小题第1空答案:&p[n] 或 p+n
13) 以下程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。 main() {int i,j;
for(i=0;【13】;i++) { j=i*10+6;
if(【14】) continue; printf(\ }
本小题第1空答案:i<10 或 i<=9
本小题第2空答案:j%3 或 j%3!=0 或 !(j%3==0)
14) 以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空 int isprime(int a )
{ int ;
for(i=2;i<=a/2;i++) if(a%i==0)【15】; 【16】; }
本小题第1空答案:return 0 或 return(0) 或 return 0; 或 return(0); 本小题第2空答案:return 1 或 return(1) 或 return 1; 或 return(1);
15) 以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数5时(注意:n不得大于10),程序运行结果如下: A B C D E F G H I J K L M N O
请填空完成该程序。 main()
{ int i,j,n; char ch='A'; scanf(\ if{n<11)
{ for(i=1;i<=n;i++)
{ for(j=1;j<=n-i+1;j++) { printf(\ 【17】; }
【18】; } }
else printf(\ printf(\ }
本小题第1空答案:ch++ 或 ++ch 或 ch=ch+1 或 ch=1+ch 或 ch+=1 或 ch++; 或 ++ch; 或 ch=ch+1; 或 ch=1+ch; 或 ch+=1;
本小题第2空答案:printf(\或 putchar('\\n') 或 printf(\或 putchar('\\n'); 16)
本小题第1空答案:p 或 p!=0 或 p!=NULL 或 p!='\\0' 或 p!=0 本小题第2空答案:p->next
C语言06年9月试题
一、选择题 ((1)~(10)每小题 2 分 ,(11)~(50)每小题 1 分 , 共 60 分) 下列各题 A)、B)、C)、D)四个选项中, 只有一个选项是正确的。 01) 下列选项中不符合良好程序设计风格的是 A)源程序要文档化 B)数据说明的次序要规范化
C)避免滥用goto语句 D)模块设计要保证高耦合、高内聚 答案:D
02) 从工程管理角度,软件设计一般分为两步完成,它们是 A)概要设计与详细设计 B)数据设计与接口设计
C)软件结构设计与数据设计 D)过程设计与数据设计 答案:A
03) 下列选项中不属于软件生命周期开发阶段任务的是 A)软件测试 B)概要设计 C)软件维护 D)详细设计 答案:C
04) 在数据库系统中,用户所见的数据模式为 A)概念模式 B)外模式 C)内模式 D)物理模式 答案:B
05) 数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和 A)编码设计 B)测试阶段 C)运行阶段 D)物理设计 答案:D 06)
A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S 答案:C
07) 下列叙述中正确的是
A)一个算法的空间复杂度大,则其时间复杂度也必定大 B)一个算法的空间复杂度大,则其时间复杂度必定小 C)一个算法的时间复杂度大,则其空间复杂度必定小 D)上述三种说法都不对 答案:D
08) 在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为 A)63 B)64 C)6 D)7 答案:B
09) 数据库技术的根本目标是要解决数据的
A)存储问题 B)共享问题 C)安全问题 D)保护问题 答案:B 10)