1、全国计算机等级考试内部资料二级笔试复习资料- 2 - - Page 2 of 126 ,共 126 页2004 年 9 月全国计算机等级考试样题一、选择题:(1) 与十进制数 200等值的十六进制数为( C )A) A8 B)A4 C)C8 D)C4(2) 用 C语言编写的代码程序( B )A) 可立即执行 B) 是一个源程序C) 经过编译即可执行 D) 经过编译解释才能执行 (3) 结构化程序由三种基本结构组成,三种基本结构组成的算法( C )A) 可以完成任何复杂的任务 B) 只能完成部分复杂的任务C) 只能完成符合结构化的任务 D) 只能完成一些简单的任务 (4) 以下定义语句中正确的是
2、(+ C )A) char a=Ab=B; B) float a=b=10.0;C) int a=10,*b= D) float *a,b= (5) 下列选项中,不能用作标识符的是( D )A) _1234_ B) _1_2 C) int_2_ D) 2_int_(6) 有以下定义语句 double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( C )A) a=a+b=b+ B) w%(int)a+b)C) (c+w)%(int)a D) w=a=b; (7) 有以下程序main() int m=3,n=4,x;x=-m+;x=x+8/+n;print
3、f(“%dn“,x);程序运行后的输出结果是( D )A) 3 B) 5 C) -1 D) -2 (8) 有以下程序main() char a=a,b;print(“%c,“,+a);printf(“%cn“,b=a+);程序运行后的输出结果是( A )A) b,b B) b,c C)a,b D) a,c (9) 有以下程序main() int m=0256,n=256;printf(“%o %on“,mn,n);程序运行后的输出结果是( C )- 3 - - Page 3 of 126 ,共 126 页A) 0256 0400 B) 0256 256 C) 256 400 D) 400 40
4、0 (10) 有以下程序main() int a=666,b=888;printf(“%dn“,a,b);程序运行后的输出结果是( B )A) 错误信息 B) 666 C) 888 D) 666,888 (11) 有以下程序main() int i;for(i=0;i-10elseprintf(“%d“,+d +1);printf(“%dn“,d);程序运行后的输出结果是( A )A) 2 B) 3 C) 43 D) 44 (14) 下列条件语句中,功能与其他语句不同的是( D )A) if(a) printf(“%dn“,x); else printf(“%dn“,y);B) if(a=0)
5、 printf(“%dn“,y); else printf(“%dn“,x);C) if (a!=0) printf(“%dn“,x); else printf(“%dn“,y);D) if(a=0) printf(“%dn“,x); else printf(“%dn“,y); (15) 有以下程序main() int i=0,x=0;for (;)- 4 - - Page 4 of 126 ,共 126 页if(i=3|i=5) continue;if (i=6) break;i+;s+=i;printf(“%dn“,s);程序运行后的输出结果是( D )A) 10 B) 13 C) 21
6、D) 程序进入死循环 (16) 若变量已正确定义,要求程序段完成求 5!的计算,不能完成此操作的程序段是( B )A) for(i=1,p=1;i。则输出结果是( A )A) 6,5,A,B B) 6,5,65,66 C) 6,5,6,5 D) 6,5,6,6 (18) 以下能正确定义二维数组的是( C )A) int a3; B) int a3=22*3;C) int a3=; D) int a23=1,2,3,4; (19) 有以下程序 int f(int a) return a%2; main() int s8=1,3,5,2,4,6,i,d=0;for (i=0;f(si);i+) d
7、+=si;printf(“%dn“,d);程序运行后的输出结果是( A )A) 9 B) 11 C) 19 D) 21 (20) 若有以下说明和语句,int c45,(*p)5;p=c;能正确引用 c数组元素的是( D )A) p+1 B) *(p+3) C) *(p+1)+3 D) *(p0+2)(21) 有以下程序 main() int a=7,b=8,*p,*q,*r;p=q=r=p; p=q;q=r;printf(“%d,%d,%d,%dn“,*p,*q,a,b);程序运行后的输出结果是( C )A) 8,7,8,7 B) 7,8,7,8 C) 8,7,7,8 D) 7,8,8,7 -
8、 5 - - Page 5 of 126 ,共 126 页(22) s12和 s2已正确定义并分别指向两个字符串。若要求:当 s1所指串大于 s2所指串时,执行语句 S;则以下选项中正确的是 ( D )A) if(s1s2)S; B) if(strcmp(s1,s2)S;C) if(strcmp(s2,s1)0) S; D) if(strcmp(s1,s2)0)S; (23) 设有定义语句int x6=2,4,6,8,5,7,*p=x,i;要求依次输出 x数组 6个元素中的值,不能完成此操作的语句是( D )A) for(i=0;imain()int a=1,2,3,4,5,6,7,8,9,1
9、0,11,12,*p=a+5,*q=NULL;*q=*(p+5);printf(“%d %dn“,*p,*q);程序运行后的输出结果是( A )A) 运行后报错 B) 6 6 C) 6 11 D) 5 10 (25) 有以下定义和语句int a32=1,2,3,4,5,6,*p3;p0=a1;则*p0+1)所代表的数组元素是( C )A) a01 B) a10 C) a11 D) a12(26) 有以下程序main()char str10=“China“,“Beijing“,*p=str;printf(“%sn“,p+10);程序运行后的输出结果是( B )A) China B) Bejing
10、 C) ng D) ing (27) 有以下程序main()char s=“ABCD“,*p;for(p=s+1;pnum B) p-num C) (*p).num D) stu3.age(37) 有以下程序main() int x=1,3,5,7,2,4,6,0,i,j,k;for(i=0;i=i;j-)if(xj+1xj) k=xj;xj=xj+1;xj+1=k;for(i=0;ixj) k=xj;xj=xj+1;xj+1=k;for (i=0;ixj+1) k=xj;xj=xj+1;xj+1=k;for (i=0;imain()FILE *fp1;fp1=fopen(“f1.txt“,“
11、w“);fprintf(fp1,“abc“);fclose(fp1);若文本文件 f1.txt中原有内容为:good,则运行以上程序后文件 f1.txt中的内容为(C )A) goodabc B) abcd C) abc D) abcgood- 8 - - Page 8 of 126 ,共 126 页2005年 4月全国计算机等级考试样题一、选择题:(1) 数据的存储结构是指( D )A)存储在外存中的数据 B)数据所占的存储空间量C)数据在计算机中的顺序存储方式 D)数据的逻辑结构中计算机中的表示(2) 下列关于栈的描述中错误的是( B )A)栈是先进后出的线性表 B)栈只能顺序存储C)栈具
12、有记忆作用 D)对栈的插入与删除操作中,不需要改变栈底指针(3) 对于长度为 n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是( D )A)冒泡排序为 n/2 B)冒泡排序为 nC)快速排序为 n D)快速排序为 n(n-1)/2(4) 对长度为 n的线性表进行顺序查找,在最坏情况下所需要的比较次数为( C )A)log 2n B) n/2 C) n D) n+1(5) 下列对于线性链表的描述中正确的是( A )A)存储空间不一定是连续,且各元素的存储顺序是任意的B)存储空间不一定是连续,且前件元素一定存储在后件元素的前面C)存储空间必须连续,且前件元素一定存储在后件元素的前面
13、D)存储空间必须连续,且各元素的存储顺序是任意的(6) 下列对于软件的描述中正确的是( C )A)软件测试的目的是证明程序是否正确B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误D)软件测试的目的是使程序符合结构化原则(7) 为了使模块尽可能独立,要求( B )A)模块的内聚程序要尽量高,且各模块间的耦合程序要尽量强B)模块的内聚程序要尽量高,且各模块间的耦合程序要尽量弱C)模块的内聚程序要尽量低,且各模块间的耦合程序要尽量弱D)模块的内聚程序要尽量低,且各模块间的耦合程序要尽量强(8) 下列描述中正确的是( D )A)程序就是软件 B)软件开发不受计算机系
14、统的限制C)软件既是逻辑实体,又是物理实体 D)软件是程序、数据与相关文档的集合(9) 数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( D )A)数据与程序独立存放 B)不同的数据被存放在不同的文件中C)不同的数据只能被对应的应用程序所使用 D)以上三种说法都不对(10) 用树形结构表示实体之间联系的模型是( C )A)关系模型 B)网状模型 C)层次模型 D)以上三个都是(11) 算法具有五个特性,以下选项中不属于算法特性的是( B )A)有穷性 B)简洁性 C)可行性 D)确定性(12) 以下选项中可作为 C语言合法常量的是( A )A)-80. B)-080 C)-8e1.0
15、 D)-80.0e- 9 - - Page 9 of 126 ,共 126 页(13) 以下叙述中正确的是( C )A)用 C程序实现的算法必须要有输入和输出操作B)用 C程序实现的算法可以没有输出但必须要有输入C)用 C程序实现的算法可以没有输入但必须要有输出D)用 C程序实现的算法可以既没有输入也没有输出(14) 以下不能定义为用户标识符的是( D )A)Main B)_0 C)_int D)sizeof(15) 以下选项中,不能作为合法常量的是( B )A)1.234e04 B)1.234e0.4 C)1.234e+4 D)1.234e0(16) 数字字符 0的 ASCII值为 48,若
16、有以下程序main() char a=1,b=2;printf(“%c,“,b+);printf(“%dn“,b-a);程序运行后的输出结果是( C )A)3,2 B)50,2 C)2,2 D)2,50(17) 有以下程序main() int m=12,n=34;printf(“%d%d“,m+,+n);printf(“%d%dn“,n+,+m);程序运行后的输出结果是( A )A)12353514 B)12353513 C)12343514 D)12343513(18) 有定义语句:int b;char c10; ,则正确的输入语句是( B )A)scanf(“%d%s“, B)scanf(
17、“%d%s“,C)scanf(“%d%s“,b,c); D)scanf(“%d%s“,b,(19) 有以下程序main() int m,n,p;scanf(“m=%dn=%dp=%d“,printf(“%d%d%dn“,m,n,p);若想从键盘上输入数据,使变量 m中的值为 123,n中的值为 456,p中的值为 789,则正确的输入是( A )A)m=123n=456p=789 B)m=123 n=456 p=789C)m=123,n=456,p=789 D)123 456 789(20) 有以下程序main()int a,b,d=25;a=d/10%9;b=aprintf(“%d,%dn“
18、,a,b);- 10 - - Page 10 of 126 ,共 126 页程序运行后的输出结果是( B )A)6,1 B)2,1 C)6,0 D)2,0(21) 有以下程序main() int i=1,j=2,k=3;if(i+=1程序运行后的输出结果是( D )A)1 2 3 B)2 3 4 C)2 2 3 D)2 3 3(22) 若整型变量 a、b、c、d 中的值依次为:1、4、3、2。则条件表达式 ay?x:y;int f2(int x,int y)return xy?y:x;main() int a=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a,b),f1(c,d);f
19、=f1(f2(a,b),f2(c,d);g=a+b+c+d-e-f;printf(“%d,%d%dn“,e,f,g);程序运行后的输出结果是( A )A)4,3,7 B)3,4,7 C)5,2,7 D)2,5,7(27) 已有定义:char a=“xyz“,b=x,y,z;,以下叙述中正确的是( A )- 11 - - Page 11 of 126 ,共 126 页A)数组 a和 b的长度相同 B)a 数组长度小于 b数组长度C)a 数组长度大于 b数组长度 D)上述说法都不对(28) 有以下程序void f(int *x,int *y) int t;t=*x;*x=*y;*y=t;main(
20、) int a8=1,2,3,4,5,6,7,8,i,*p,*q;p=a;q=while(p=n;i-)ai+1=ai;main()- 12 - - Page 12 of 126 ,共 126 页int i,aN=1,2,3,4,5,6,7,8,9,10;fun(a,2,9);for(i=0;i,则输出结果为( B )A)产生错误信息B)1 0 C)1 2 D)1 02 0 3 0 2 00 0 0 0 3 0(33) 有以下程序prt(int *m,int n)int i;for(i=0;i=8) break;if(a%2=1) a+=5; continue;a-=3;printf(“%dn
21、“,b);程序运行后的输出结果是( B )A)3 B)4 C)5 D)6(42) 有以下程序main()char s=“159“,*p;p=s;printf(“%c“,*p+);printf(“%c“,*p+);程序运行后的输出结果是( A )A)15 B)16 C)12 D)59(43) 有以下函数fun(char *a,char *b)while(*a!=0) b+;return (*a-*b);该函数的功能是( D )A)计算 a和 b所指字符串的长度之差 B)将 b所指字符串复制到 a所指字符串中C)将 b所指字符串连接到 a所指字符串后面 D)比较 a和 b所指字符串的大小(44)
22、有以下程序main()int num44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i,j;for(i=0;inext=q-next; B)p-next=p-next-next;C)p-next=r; D)p=q-next;(48) 以下对结构体类型变量 td的定义中,错误的是( C )A)typedef struct aaint n;float m;AA;- 16 - - Page 16 of 126 ,共 126 页AA td;B)struct aaint n;float m; td;struct aa td;C)struct int n;float m
23、;aa;struct aa td;D)structint n;float m;td;(49) 以下与函数 fseek(fp,0L,SEEK_SET)有相同作用的是( D )A)feof(fp) B)ftell(fp) C)fgetc(fp) D)rewind(fp)(50) 有以下程序#include “stdio.h“void WriteStr(char *fn,char *str)FILE *fp;fp=fopen(fn,“W“);fputs(str,fp);fclose(fp);main()WriteStr(“t1.dat“,“start“);WriteStr(“t1.dat“,“end
24、“);程序运行后,文件 t1.dat中的内容是( B )A)start B)end C)startend D)endrt- 17 - - Page 17 of 126 ,共 126 页2005 年 9 月全国计算机等级考试样题一、选择题:(1)下列叙述中正确的是(C)。A)程序设计就是编制程序 B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试 D)程序经调试改错后不必进行再测试(2)下列数据结构中,能用二分法进行查找的是(A)。A)顺序存储的有序线性表 B)线性链表C)二叉链表 D)有序线性链表(3)下列关于栈的描述正确的是(C)。A)在栈中只能插入元素而不能删除元素 B
25、)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(4)下列叙述中正确的是(D)。A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(5)下列描述中正确的是(C)。A)软件工程只是解决软件项目的管理问题 B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是
26、解决软件开发中的技术问题(6)在软件设计中,不属于过程设计工具的是(D)。A)PDL(过程设计语言) B)PAD 图 C)N-S 图 D)DFD 图(7)下列叙述中正确的是(A)。A)软件交付使用后还需要再进行维护 B)软件工具交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束 D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决(A)。A)数据共享问题 B)数据安全问题C)大量数据存储问题 D)简化数据维护(9)设有如下关系表:则下列操作中正确的是(B)。A)T=RS B)T=RS C)T=RS D)T=R/S(10)数据库系统的核心的是(B)。A)数据模型 B
27、)数据库管理系统 C)数据库 D)数据库管理员(11)下列叙述中错误的是(A)。A)用户所定义的标识符允许使用关键字 B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中、大、小写字母代表不同标识(12)下列叙述中错误的是(C)。A)C 语句必须以分号结束 B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行 D)赋值表达式末尾加分号就构成赋值语句- 18 - - Page 18 of 126 ,共 126 页(13)下列叙述中正确的是(B)。A)调用 printf()函数时,必须要有输出项B)使用 putcha
28、r()函数时,必须在之前包含头文件 stdio.hC)在 C 语言中,整数可以以十二进制、八进制或十六进制的形式输出D)调节 getchar()函数读入字符时,可以从键盘上输入字符所对应的 ASCII 码(14)下列关于函数的叙述中正确的是(B)。A)每个函数都可以被其他函数调用(包括 main 函数)B)每个函数都可以被单独编译C)每个函数都可以单独运行 D)在一个函数内部可以定义另一个函数(15)若有语句:char *line5;下列叙述中正确的是(A)。A)定义 line 是一个数组,每个数组元素是一个基类型为 char 的指针变量B)定义 line 是一个指针变量,该变量可以指向一个长
29、度为 5 的字符型数组C)定义 line 是一个指针数组,语句中的*号称为间址运算符D)定义 line 是一个指向字符型函数的指针(16)有下列程序段:typedef struct NODE int num;struct NODE *next; OLD;下列叙述中正确的是(C)。A)以上的说明形式非法 B)NODE 是一个结构体类型C) OLD 是一个结构体类型 D)OLD 是一个结构体变量(17)下列叙述中错误的是(C)。A)在 C 语言中,对二进制文件的访问速度比文本文件快B)在 C 语言中,随机文件以二进制代码形式存储数据C)语句 FILE fp;定义了一个名为 fp 的文件指针D)C
30、语言中的文本文件以 ASC 码形式存储数据(18)当把四个表达式用作 if 语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是(A)。A)k%2 B)k%2= =1 C)(k%2) ! =0 D)!k%2= =1(19)下列不能正确计算代数式1/3 sin2( 1/2 )值的 C 语言表达式是(A)。A)1/3 *sin(1/2)*sin(1/2) B) sin(0.5)*sin(0.5)/3C) pow(sin(0.5),2)/3 D) 1/3.0*pow(sin(1.0/2),2)(20)下列能正确定义且赋初值的语句是(B)。A)int nl=n2=10; B)char c=
31、32;C) float f=f+1.1; D)double x=12.3E2.5;(21)下列程序的功能是:给 r 输入数据后计算半径为 r 的圆面积 s 。程序在编译时出错。main( )/* Beginning */ int r; float s;scanf(“%d“,s=*r*r;printf(“s=%fn“,s);出错的原因是(D)。A)注释语句书写位置错误 B)存放圆半径的变量 r 不应该定义为整型C)输出语句中格式描述符非法 D)计算圆面积的赋值语句中使用了非法变量(22)设有定义:int k=1,m=2; float f=7;则下列选项中错误的表达式是(C)。A)k=k =k B
32、)-k+ + C)k%int(f) D)k =f =m(23)设有定义:int a=2,b=3,c=4;,则下列选项中值为 0 的表达式是(A)。A)(!a= =1)- 19 - - Page 19 of 126 ,共 126 页k=ab?b:a;k=kc?c:k;执行该程序段后,k 的值是(B)。A)3 B)2 C)1 D)0(25)设变量 a、b、 c、d 和 y 都已正确定义并赋值。若有下列 if 语句if(ab)if(c= =d) y=0;else y=1;该语句所表示的含义是(C)。(26)有下列程序段int n,t=1,s=0;scanf(“%d“,do s=s+t;t=t-2;
33、while(t! =n);为使此程序段不陷入死循环,从键盘输入的数据应该是(D)。A)任意正奇数 B)任意负偶数 C)任意正偶数 D)任意负奇数(27)设变量已正确定义,则以下能正确计算 f=n!的程序段是(D)。A)f=0; B)f=1;for(i=1;i=n;i+ +) f*=i; for(i=1;in;i+ +) f*=i;C) f=1; D)f=1;for(i=n;i1;i+ +)f*=i; for(i=n;i =2;i-)f*=i;(28)设有定义:int n1=0,n2,*p=,以下赋值语句中与 n2=n1;语句等价的是(A)。A)*p=*q; B)p=q; C)*p= D)p=*
34、q;(29)若有定义:int x=0,*p=,则语句 printf(“%dn“,*p);的输出结果是(B)。A)随机值 B)0 C)x 的地址 D)p 的地址(30)设 fun()函数的定义形式为(C )。void fun(char ch,float x)则下列对函数 fun 的调用语句中,正确的是A)fun(“abc“,3.0); B)t=fun(D,16.5); C)fun(65,2.8); D)fun(32,32);(31)有下列程序:main( ) int a10=1,2,3,4,5,6,7,8,9,10,*p=printf(“%dn“,*p+*q);程序运行后的输出结果是(B)。A)
35、16 B)10 C)8 D)6(32)有下列程序:main( ) char p =a,bv,c,q =“abc“;printf(“%d%dn“,sizeof(p),sizeof(q);程序运行后的输出结果是(C)。A)4 4 B)3 3 C)3 4 D)4 3(33)有下列程序:#define f(x)=(x*x)main( ) int i1,i2;- 20 - - Page 20 of 126 ,共 126 页i1=f(8)/f(4); i2=f(4+4)/f(2+2);prinft(“%d,%dn“,i1,i2);程序运行后的输出结果是(C)。A)64,28 B)4,4 C)4,3 D)6
36、4,64(34)有下列程序:main( ) char a1=M,a2=m;printf(“%cn“,(a1,a2);下列叙述中正确的是(B)。A)程序输出大写字母 M B)程序输出小写字母 mC)格式说明符不足,编译出错 D)程序运行时产生出错信息(35)有下列程序:#include main( ) char c1=1,c2=2;c1=getchar( ); c2=getchar( ); putchar(c1); putchar(c2);当运行时输入:a后,下列叙述正确的是(A)。A)变量 c1 被赋予字符 a,c2 被赋予回车符B)程序将等待用户输入第 2 个字符C)变量 c1 被赋予字符
37、a,c2 中仍是原有字符 2D)变量 c1 被赋予字符 a,c2 中将无确定值(36)有下列程序:main( ) int k=5,n=0;while(k0) switch(k) default:break;case 1: n+ =k;case 2:case 3: n+ =k;k-;printf(“%dn“,n);程序运行后的输出结果是(D)。A)0 B)4 C)6 D)7(37)有下列程序:main( ) int a =2,4,6,8,10,y=0,x,*p;p=for(x=1;xmain( ) char p =a, b, c,q10= a, b, c;printf(“%d%dn“,strle
38、n(p),strlen(q);下列叙述中正确的是(A)。A)在给 p 和 q 数组赋初值时,系统会自动添加字符串结束符,故输出的长度都为 3B)由于 p 数组中没有字符串结束符,长度不能确定,但 q 数组中字符串长度为 3C)由于 q 数组中没有字符串结束符,长度不能确定,但 p 数组中字符串长度为 3D)由于 p 和 q 数组中都没有字符串结束符,故长度都不能确定(42)有下列程序,其中函数 f()的功能是将多个字符串按字典顺序排序(D)。#include void f(char *p ,int n) char *t; int i,j;for(i=0;i0)t=pi; pi=pj, pj=t
39、;main( ) char *p5=“abc“,“aabdfg“,“abbd“,“dcdbe“,“cd“;- 22 - - Page 22 of 126 ,共 126 页f(p,5);printf(“%dn“,strlen(p1);程序运行后的输出结果是()。A)2 B)3 C)6 D)4(43)有下列程序:#include void f(char *s,char *t) char k;k=*s; *s=*t; *t=k;s+ +; t-;if(*s) f(s,t);main( ) char str10=“abcdefg“,*p;p=str+strlen(str)/2+1;f(p,p-2);p
40、rintf(“%sn“,str);程序运行后的输出结果是(B)。A)abcdefg B)gfedcba C)gbcdefa D)abedcfg(44)有下列程序:float fl(float n) return n*n; float f2(float n)return 2*n;main( ) float (*p1)(float),(*p2)(float),(*t)(float),y1,y2;p1=f1; p2=f2;y1=p2(p1(2.0);t=p1; p1=p2; p2=t;y2=p2(p1(2.0);printf(“%3.0f, %3.0fn“,y1,y2);程序运行后的输出结果是(A)
41、。A)8,16 B)8,8 C)16,16 D)4,8(45)有下列程序:int a=2;int f(int n) static int a=3;int t=0;if(n%2) static int a=4; t+ =a+ +;else static int a=5; t+ =a+ +;returnt+a+ +;main( ) int s=a,i;for(i=0;istruct STU int num;float TolalScorc;- 23 - - Page 23 of 126 ,共 126 页;void f(structSTU p) struct STU s2=20044,550,200
42、45,537;p.num=s1.num; p.TotalScore=s1.TotalScore;main( ) struct STU s2=20041,703,20042,580;f(s0);printf(“%d %3.0fn“,s0. num,s0. TotalScore);程序运行后的输出结果是(D)。A)20045 537 B)20044 550 C)20042 580 D)20041 703(47)有下列程序:#include struct STU char name10;int num;void f(char *name,int num) struct STU s2=“SunDan“
43、,20044,“Penghua“,20045;num=s0.num;strcpy(name,s0.name);main( ) struct STU s2=“YangSan“,2004,“LiSiGuo“,20042,*p;p= f(p-name,p-num);printf(“%s %dn“, p-name,p-num);程序运行后的输出结果是(A)。A)SunDan 20042 B)SunDan 20044 C)LiSiGuo 20042 D)YangSan 20041(48)有下列程序:struct STU char name10; int num; float TotalScore; ;v
44、oid f(struct STU *p) struct STU s2=“SunDan“,20044,550, “Penghua“,20045,537,*q=s;+ +p; + +q; *p=*q;main( ) struct STU s3=“YangSan“,20041,703,“LiSiGuo“,20042,580;f(s);printf(“%s%d%3.0fn“,s1.name,s1.num,s1.TotalScore);程序运行后的输出结果是(B)。A)SunDan 20044 550 B)Penghua 20045 537C) LiSiGuo 20042 580 D)SunDan 20
45、041 703(49)下列程序的功能是进行位运算:main( ) unsigned char a,b;a=73; b=4 printf(“%d%dn“,a,b);程序运行后的输出结果是(A)。A)4 3 B)7 3 C)7 0 D)4 0(50)有下列程序:#include main( ) FILE *fp; int i,k,n;- 24 - - Page 24 of 126 ,共 126 页fp=fopen(“data.dat“,“w+“);for(i=1;i B)#include - 26 - - Page 26 of 126 ,共 126 页main( ); main( )/*progr
46、amming*/ /* / programming / */printf(“programming! n“); printf(“programming!n“);C)#include D)include main( ) main( )/* / programming*/ */ /*programming */printf(“programming! n“); printf(“programming! n“);(19)若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch 语句是(C )。A)switch(x) B)switch(int)x); case 1.0:printf(“* n“); case 1:printf(“*n“);case 2.0:printf(“* n“); case 2:printf(“*n“);C)switch(a+b) D)switch(a+b) case 1: