《2022年2022年历年计算机二级c语言考试真题以及答案详解 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年历年计算机二级c语言考试真题以及答案详解 .pdf(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 2010 年 9 月全国计算机二级C语言笔试试题(11)以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用goto 语句会很便捷C)在 C语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题(12)以下关于简单程序设计的步骤和顺序的说法中正确的是A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构
2、(13)以下叙述中错误的是A) C 程序在运行过程中所有计算都以二进制方式进行B) C程序在运行过程中所有计算都以十进制方式进行C)所有 C 程序都需要编译链接无误后才能运行D)C程序中整型变量只能存放整数,实型变量只能存放浮点数(14)有以下定义: int a; long b;double x,y;则以下选项中正确的表达式是A)a% (int )( x-y )B)a=x!=y; C)( a*y )%b D)y=x+y=x (15)以下选项中能表示合法常量的是A)整数: 1,200 B)实数: 1.5E2.0 C )字符斜杠:D)字符串: 007 (16)表达式 a+=a-=a=9 的值是A)
3、9 B)_9 C)18 D)0 (17)若变量已正确定义,在if (W )printf(“%d n,k ”);中,以下不可替代W的是A)a b+c B)ch=getchar ()C)a=b+c D)a+ (18)有以下程序include main()int a=1,b=0;if (! a) b+ ;else if(a=0)if (a)b+=2;else b+=3;printf(”%d n”, b);程序运行后的输出结果是A)0 B)1 C)2 D)3 (19)若有定义语句int a, b;double x;则下列选项中没有错误的是A)switch (x%2 ) B)switch( int )x
4、/2.0 case 0: a+; break; case 0: a+; break; case 1: b+; break; case 1: b+; break; default : a+; b+; default : a+; b+; C)switch (int )x%2 ) D)switch( int )(x)%2 )case 0: a+; break; case 0.0: 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 34 页 - - - - - - - - - 2
5、a+; break; case 1: b+; break; case 1.0: b+; break; default : a+; b+; default : a+; b+; (20)有以下程序include main()int a=1,b=2;while (a main()int y=10;while (y- );printf(”Y= dn”, Y);程序执行后的输出结果是A)y=0 B)y= -1 C)y=1 D)while 构成无限循环(22)有以下程序includestdio .h main()char s ” rstuv ;printf(” cn”, *s2);程序运行后的输出结果是A
6、)tuv B)字符 t 的 ASCII 码值C)t D)出错(23)有以下程序include stdio.h include string.h main()char x ” STRING ”;x0=0;x1 0; x20;printf (” d n”,sizeof (x) , strlen(x);程序运行后的输出结果是A)6 1 B)7 0 C)6 3 D)7 1 (24)有以下程序include stdio h Int f(int x);main()int n=1,m; m=f (f(f(n);printf(”%d n”, m ); int f(int x)return x*2;程序运行后的
7、输出结果是A)1 B)2 C)4 D)8 (25)以下程序段完全正确的是A)int *p; scanf(%d, p); B)int *p; scanf(“%d ”,p) ; C)int k, *p=&k; scanf(%d,p ); D) int k, *p:; *p= &k; scanf(“%d ”,p); (26)有定义语句:int *p4;以下选项中与此语句等价的是A)int p4; B)int *p; C)int *(p4); D)int (*p )4; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
8、- - - - - - 第 2 页,共 34 页 - - - - - - - - - 3 (27)下列定义数组的语句中,正确的是A)int N=10; B)define N 10 int xN; int xN; C)int x0.10; D)int x;(28) 若要定义一个具有5 个元素的整型数组,以下错误的定义语句是A)int a5=0; B)int b=0,0,0,0,0; C)int c2+3; D)int i=5,di; (29)有以下程序includestdio h void f(int *p);main()int a5 1,2,3,4,5, *r=a ;f (r ); print
9、f(”n”; r );void f(int *p)p=p+3;printf(” d,”, *p);程序运行后的输出结果是A)1,4 B)4,4 C)3,1 D)4,1 (30)有以下程序(函数fun 只对下标为偶数的元素进行操作)# includestdio h void fun(int a;int n)int i、j 、k、t ;for (i=0;in 一 1;1=2)k=i; for (j=i ;jak )k=j ;t=a i ;ai=a k ;ak t;main()int aa10=1、2、3、4、5、6、7,i ;fun (aa、7);for (i=0 ,i include strin
10、g h main()char a 20=”ABCD OEFG 0”, b”IJK”;strcat(a,b); printf(”n”, a);程序运行后的输出结果是A)ABCDEOFGOIJK B)ABCDIJK C)IJK D)EFGIJK (34) 有以下程序, 程序中库函数islower (ch)用以判断 ch 中的字母是否为小写字母include stdio h include ctype h名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 34 页 - - - -
11、- - - - - 4 void fun(char p)int i=0;while (pi )if (pi= islower(pi-1 )pi-1=pi-1-a+A ;i ;main()char s1 100”ab cd EFG!”;fun (s1); printf(”n”, s1);程序运行后的输出结果是A)ab cd EFG !B)Ab Cd EFg !C)aB cD EFG !D)ab cd EFg!(35)有以下程序includestdio h void fun(int x)if (x21)fun (x2);printf(”d”, x);main()fun (7); printf(”n
12、”);程序运行后的输出结果是A)1 3 7 B)7 3 1 C)7 3 D)3 7 (36)有以下程序includestdio hint fun()static int x=1;x+=1;return x;main()int i;s=1;for (i=1 ;i main()int s,t ,A=10;double B=6 ;ssizeof (A); t=sizeof(B);printf(“ d,dn”, s,t );在 VC6平台上编译运行,程序运行后的输出结果是A)2,4 B)4,4 C)4,8 D)10,6 (39)若有以下语句Typedef struct S int g; char h;
13、T; 以下叙述中正确的是A)可用 S定义结构体变量B)可用 T 定义结构体变量C)S是 struct类型的变量D)T 是 struct S类型的变量(40)有以下程序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 34 页 - - - - - - - - - 5 includestdio h main()short c=124;c=c_;printf(“ dn”、 C);若要使程序的运行结果为248,应在下划线处填入的是A)2 B)|248 C) 0248 D) main
14、()int a=200,b=010;printf(”n”, a,b);(7)有以下程序includestdio h main()int x,Y; scanf(”2d%ld”,x, y) ; printf (”dn”, x+y);程序运行时输入:1234567 程序的运行结果是【7】。(8)在 C语言中,当表达式值为0 时表示逻辑值“假”,当表达式值为【8】时表示逻辑值“真”。(9)有以下程序include stdio h main()int i,n=0,0,0,0,0; for (i=1 ;i=4;i+)ni=ni-13+1; printf (”%d ,ni); 程序运行后的输出结果是【9】。
15、(10)以下 fun 函数的功能是:找出具有N个元素的一维数组中的最小值,并作为函数值返回。请填空。(设N 已定义)int fun(int xN)int i,k=0;for (i=0 ;i int f (int *p,int q);main()int m=1 ,n=2, r=&m;r=f ( r,n);printf(” dn”, r );int f (int *p,int q)return (*pq)?p:q;程序运行后的输出结果是【11】(12)以下 fun 函数的功能是在N行 M列的整形二维数组中,选出一个最大值作为函数值返回,请填空。(设M,. N 已定义)int fun(int aNM
16、)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 34 页 - - - - - - - - - 6 int i,j ,row=0,col=0 ;for (i=0 ;i main()int n2,i ,j ;for (i=0 ;i2 ;i+ )ni=0;for (i=0 ;i 2;i+ )for (j=0 ;j main()int a10,*p , s;for (p=a;p-a10 ; p+)scanf(”d”, p);for (p=a,s=a;p-a*s )S=P;pri
17、ntf(n”,【 14】);(15)以下程序打开新文件f.txt,并调用字符输出函数将a 数组中的字符写入其中,请填空。include stdio h main()【 15】*fp ;char a 51,2,3,4,5,i ;fp=fopen (”f txt ”,”w ”);for (i=0 ;i5 ;i+ )fputc (ai,fp );fclose (fp );答案 : 一、选择题(1) B (2) C (3) D (4) A (5) A (6) D (7) D (8) C (9) C (10) A (11) C (12) D (13) B (14) A (15) C (16) D (17
18、) A (18) A (19) C (20) B (21) B (22) C (23) B (24) D (25) C (26) C (27) B (28) D (29) D (30) A (30) A (32) C (33) B (34) C (35) D (36) B (37) A (38) C (39) B (40) D 二、填空题1: 1DCAB2345 2: n-1 3: 25 4: 结构化5: 物理设计6: 2008 7: 15 8: 非 0 9: 1 4 13 40 10: i 11: 2 12: arowcol 13: 3 14: *s 15: FILE 2011 年 3 月计
19、算机等级考试二级C 语言笔试:文字版(10)定义无符号整数类为UInt,下面可以作为类UInt实例化值的是A)-369 B)369 C)0.369 D)整数集合 1,2,3,4,5 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 34 页 - - - - - - - - - 7 (11)计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是A)C 语言程序仅可以编译执行B)C 语言程序仅可以解释执行C)C 语言程序既可以编译执行又可以解释执行D)以上说法
20、都不对(12)以下叙述中错误的是A)C 语言的可执行程序是由一系列机器指令构成的B)用 C 语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C 语言集成开发环境的机器上不能运行 C 源程序生成的 .exe 文件(13)以下选项中不能用作C 程序合法常量的是A)1,234 B)123 C)123 D)x7G (14)以下选项中可用作C 程序合法实数的是A).1e0 B)3.0e0.2 C)E9 D)9.12E (15)若有定义语句: int a=3,b=2,c=1;,以下选项中错误的赋值表达式是A)a=(b=4)=3; B)a=b=c+1;
21、C)a=(b=4)+c; D)a=1+(b=c=4); (16)有以下程序段char name20; int num; scanf(name=%s num=%d,name;&num); 当执行上述程序段,并从键盘输入: name=Lili num=1001后, name的值为A)Lili B)name=Lili C)Lili num= D)name=Lili num=1001 (17)if 语句的基本形式是:if( 表达式 )语句,以下关于“ 表达式 ” 值的叙述中正确的是A)必须是逻辑值B)必须是整数值C)必须是正数D)可以是任意合法的数值(18)有以下程序#include main() i
22、nt x=011; printf(%dn,+x); 程序运行后的输出结果是A)12 B)11 C)10 D)9 (19)有以下程序#include main() int s; scanf(%d,&s); while(s0) switch(s) case1:printf(%d,s+5); case2:printf(%d,s+4); break; case3:printf(%d,s+3); default:printf(%d,s+1);break; scanf(%d,&s); 运行时,若输入1 2 3 4 5 0,则输出结果是A)6566456 B)66656 C)66666 D)6666656
23、(20)有以下程序段int i,n; for(i=0;i8;i+) n=rand( )%5; switch (n) case 1: case 3:printf(%dn,n); break; case 2: case 4:printf(%dn,n); continue; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 34 页 - - - - - - - - - 8 case 0:exit(0); printf(%dn,n); 以下关于程序段执行情况的叙述,正确的是A)fo
24、r 循环语句固定执行8 次B)当产生的随机数n 为 4 时结束循环操作C)当产生的随机数n 为 1 和 2 时不做任何操作D)当产生的随机数n 为 0 时结束程序运行(21)有以下程序#include main() char s=012xy08s34f4w2; int i,n=0; for(i=0;si!=0;i+) if(si=0&si=9) n+; printf(%dn,n); 程序运行后的输出结果是A)0 B)3 C)7 D)8 (22)若 i 和 k 都是 int 类型变量,有以下for 语句for(i=0,k=-1;k=1;k+) printf(*n); 下面关于语句执行情况的叙述中
25、正确的是A)循环体执行两次B)循环体执行一次C)循环体一次也不执行D)构成无限循环(23)有以下程序#include main() char b,c; int i; b=a; c=A; for(i=0;i6;i+) if(i%2) putchar(i+b); else putchar(i+c); printf(n); 程序运行后的输出结果是A)ABCDEF B)AbCdEf C)aBcDeF D)abcdef (24)设有定义: double x10,*p=x; ,以下能给数组x下标为 6 的元素读入数据的正确语句是A)scanf(%f,&x6); B)scanf(%lf,*(x+6); C)
26、scanf(%lf,p+6); D)scanf(%lf,p6); (25)有以下程序 (说明:字母 A 的 ASCII 码值是 65) #include void fun(char *s) while(*s) if(*s%2) printf(%c,*s); s+; main() char a=BYTE; fun(a); printf(n); 程序运行后的输出结果是A)BY B)BT C)YT D) YE (26)有以下程序段#include main() while( getchar()!=n); 以下叙述中正确的是A)此 while 语句将无限循环B) getchar()不可以出现在whil
27、e 语句的条件表达式中C)当执行此 while 语句时,只有按回车键程序才能继续执行D)当执行此 while 语句时,按任意键程序就能继续执行(27)有以下程序#include 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 34 页 - - - - - - - - - 9 main() int x=1,y=0; if(!x) y+; else if(x=0) if (x) y+=2; else y+=3; printf(%dn,y); 程序运行后的输出结果是A)3 B)
28、2 C)1 D) 0 (28)若有定义语句:char s310,(*k)3,*p;,则以下赋值语句正确的是A)p=s; B)p=k; C)p=s0; D)k=s; (29)有以下程序#include void fun(char *c) while(*c) if(*c=a&*c=z) *c=*c-(a-A); c+; main() char s81; gets(s); fun(s); puts(s): 当执行程序时从键盘上输入Hello Beijing,则程序的输出结果是A)hello beijing B)Hello Beijing C)HELLO BEIJING D)hELLO Beijing
29、 (30)以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。#include #define N 10 void fun(int xN) int i=0; while(i 在程序中下划线处应填入的是A)x+i B)&xi+1 C)x+(i+) D)&x+i (31)有以下程序#include main() char a30,b30; scanf(%s,a); gets(b); printf(%sn %sn,a,b); 程序运行时若输入:how are you? I am fine 则输出结果是A)how are you? B)how I am fine are you? I am f
30、ine C)how are you? I am fine D)how are you? (32)设有如下函数定义int fun(int k) if (k1) return 0; else if(k=1) return 1; else return fun(k-1)+1; 若执行调用语句:n=fun(3); ,则函数 fun 总共被调用的次数是A)2 B)3 C)4 D)5 (33)有以下程序#include int fun (int x,int y) if (x!=y) return (x+y);2); else return (x); main() int a=4,b=5,c=6; prin
31、tf(%dn,fun(2*a,fun(b,c); 程序运行后的输出结果是A)3 B)6 C)8 D)12 (34)有以下程序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 34 页 - - - - - - - - - 10 #include int fun() static int x=1; x*=2; return x; main() int i,s=1; for(i=1;i=3;i+) s*=fun(); printf(%dn,s); 程序运行后的输出结果是A)0 B
32、)10 C)30 D)64 (35)有以下程序#include #define S(x) 4*(x)*x+1 main() int k=5,j=2; printf(%dn,S(k+j); 程序运行后的输出结果是A)197 B)143 C)33 D)28 (36)设有定义: struct char mark12;int num1;double num2; t1,t2; ,若变量均已正确赋初值,则以下语句中错误的是A)t1=t2; B)t2.num1=t1.num1; C)t2.mark=t1.mark; D)t2.num2=t1.num2; (37)有以下程序#include struct or
33、d int x ,y;dt2=1,2,3,4; main() struct ord *p=dt; printf(%d,+(p-x); printf(%dn,+(p-y); 程序运行后的输出结果是A)1,2 B)4,1 C)3,4 D)2,3 (38)有以下程序#include struct S int a,b;data2=10,100,20,200; main() struct S p=data1; printf(%dn,+(p.a); 程序运行后的输出结果是A)10 B)11 C)20 D)21 (39)有以下程序#include main() unsigned char a=8,c; c=
34、a3; printf(%dn,c); 程序运行后的输出结果是A)32 B)16 C)1 D)0 (40)设 fp 已定义,执行语句 fp=fopen(file,w);后,以下针对文本文件file 操作叙述的选项中正确的是A)写操作结束后可以从头开始读B)只能写不能读C)可以在原有内容后追加写D)可以随意读和写二、填空题(1)有序线性表能进行二分查找的前提是该线性表必须是【1】 存储的。(2)一棵二叉树的中序遍历结果为DBEAFC , 前序遍历结果为ABDECF , 则后序遍历结果为【2】。(3)对软件设计的最小单位(模块或程序单元)进行的测试通常称为【3】 测试。(4)实体完整性约束要求关系数
35、据库中元组的【4】 属性值不能为空。(5)在关系 A(S,SN,D) 和关系 B(D,CN,NM) 中, A的主关键字是S, B 的主关键字是D, 则称 【5】 是关系 A 的外码。(6)以下程序运行后的输出结果是【6】 。#include main() int a; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 34 页 - - - - - - - - - 11 a=(int)(double)(3/2)+0.5+(int)1.99*2); printf(%dn,a)
36、; (7)有以下程序#include main() int x; scanf(%d,&x); if(x15) printf(%d,x-5); if(x10) printf(%d,x); if(x5) printf(%dn,x+5); 若程序运行时从键盘输入12, 则输出结果为 【7】 。(8)有以下程序 (说明:字符0 的 ASCII 码值为48) #include main() char c1,c2; scanf(%d,&c1); c2=c1+9; printf(%c%cn,c1,c2); 若程序运行时从键盘输入48, 则输出结果为 【8】 。(9)有以下函数void prt(char ch
37、,int n) int i; for(i=1;i=n;i+) printf(i%6!=0?%c:%cn,ch); 执行调用语句prt(*,24); 后, 函数共输出了 【9】行*号。(10)以下程序运行后的输出结果是【10】 。#include main() int x=10,y=20,t=0; if(x=y)t=x;x=y;y=t; printf(%d %dn,x,y); (11)己知 a 所指的数组中有N 个元素。函数fun 的功能是,将下标k(k0)开始的后续元素全部向前移动一个位置。请填空。void fun(int aN,int k) int i; for(i=k;i (12)有以下程
38、序,请在【12】 处填写正确语句,使程序可正常编译运行。#include 【12】 ; main() double x,y,(*p)(); scanf(%lf%lf,&x,&y); p=avg; printf(%fn,(*p)(x,y); double avg(double a,double b) return(a+b)/2); (13)以下程序运行后的输出结果是【13】 。#include main() int i,n5=0; for(i=1;i=0;i-) putchar(*(p+i); printf(n-); free(p); (15)以下程序运行后的输出结果是【15】 。#includ
39、e main() FILE *fp; int x6=1,2,3,4,5,6,i; fp=fopen(test.dat,wb); fwrite(x,sizeof(int),3,fp); rewind(fp); fread(x,sizeof(int),3,fp); for(i=0;ik2)&(k2=k2k1)后, k1 和 k2 的值分别为( )。A)0 和 1 B)0 和 20 C)10 和 1 D)10 和 20 (18)有以下程序#include main() int a=1 ,b=0;if(-a) b+;else if(a=0)b+=2 :else b+=3:printf( dn,b);)
40、 程序运行后的输出结果是( )。A)0 B)1 C)2 D)3 (19)下列条件语句中,输出结果与其他语句不同的是( )。A)if(a)printf( d-n,x);else printf( dn,y);B)if(a 0)printf( dn,y);else printf( dn,x);C)if(a!=0)p 由 tf( dn, x);else printf( dn,y);D)if(a=0)printf( dn,x);else printf( dn,y);(20)有以下程序#include main() int a=7 ;while(a-) ;printf( dn,a);) 程序运行后的输出结
41、果是( )。A)-1 B)0 C)1 D)7 (21)以下不能输出字符A 的语句是 (注:字符 A 的ASCIl 码值为 65,字符 a 的 ASCIl 码值为 97) A)printf( cn,a-32);B)printf( dn,A);c)printf( cn,65);D)print-f( cn,B-1);(22)有以下程序 (注:字符 a 的 ASCIl 码值为 97) #include main() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 34 页 -
42、- - - - - - - - 17 char*s=abe) ;do printf( ” d” ,+s10);+s;) while(+s) ;) 程序运行后的输出结果是( )。A)abc B)789 C)7890 D)979899 (23)若有定义语句: double a,+p=a;以下叙述中错误的是 ( )。A)定义语句中的 *号是一个间址运算符B)定义语句中的 * 号只是一个说明符C)定义语句中的P只能存放 double 类型变量的地址D)定义语句中, *p=&a 把变量 a 的地址作为初值赋给指针变量 P (24)有以下程序#include double f(double x) ;mai
43、n() doublea_0;inti;for(i=0 ;i30;i+=10)a+-f(double)i) ;printf( 50fn ,a); double f(double x) (return X+x+1 ;) 程序运行后的输出结果是( )。A)503 B)401 C)500 D)1404 (25)若有定义语句:int year=2009,*p=&year ; ,以下不能使变量year 中的值增至2010 的语句是( )。A)*p+=1 ;B)( *p)+ ;C)+(*p) ;D)*p+ ;(26)以下定义数组的语句中错误的是( )。A)int num=1 ,2,3,4,5,6;B)int
44、 num3=1,2 ,3,4,5,6;C)int num24=(1,2, ,3,4,5,6) ;D)int num4=1,2,3,4,5,6;(27)有以下程序#include void fun(int+p) printf( ” dn” ,p5) ; main() ;int a10=1 ,2,3,4,5,6,7,8,9,10 ;fun(&a3) ;) 程序运行后的输出结果是( )。A)5 B)6 C)8 D)9 (28)有以下程序#include #defineN4 void fun(int aN , im b) int i ;for(i=0 ;iN;i+)bi=aii-aiN-1-i;) v
45、oid main() int xNN=1,2,3,4,5,6,7,8,9,10,11,12 ,13 ,14,15,16 ,yN ,i;fun(x,y) ;for(i=0 ;iN;i+)printf( ”d, ” ,yi) ;printf(n) ; 程序运行后的输出结果是( )。A)-12,-3,0,0,B)-3,-1 ,1,3,C)0,1,2,3,D)-3 ,-3,-3,-3 (29)有以下函数int fun(char *x ,char *y) int n=0 ;while(*x=*y)&*x!=0)x+;y+;n+; return n:) 函数的功能是 ( )。A)查找 x 和 y 所指字符
46、串中是否有0 B)统计 x 和 y 所指字符串中最前面连续相同的字符个数c)将 y 所指字符串赋给X 所指存储空间D)统计 x 和 y 所指字符串中相同的字符个数(30)若有定义语句: char *s1=OK ,*s2=ok ; ,以名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 34 页 - - - - - - - - - 18 下选项中,能够输出0K 的语句是 ( )。A)if(strcmp(s1 ,s2)=0)puts(s1);B)if(strcmp(s1 ,s2
47、)!=0) puts(s2);C)if(strcmp(s1 ,s2)=1)puts(s1,);D)if(strcmp(s1 ,s2)!=0) puts(s1);(31)以下程序的主函数中调用了在其前面定义的fun 函数#include main() double a15 ,k;k=fun(a) ; 则以下选项中错误的fun 函数首部是 ( )。A)double fun(double a15) B)double fun(double *a) C)double fun(double a) D)double fun(double a) (32)有以下程序#include #include main(
48、) char a510=china,beijing,you,tiananmen,welcome”);int i ,j;chart10;for(i=0 ;i4;i+) for(j=i+1 ;jO) strcpy(t ,ai) ;strcpy(ai ,aj) ;strcpy(aj ,t); puts(a3);) 程序运行后的输出结果是( )。A)Beijing B)china C)welcome D)tiananmen (33)有以下程序#include int f(int m) static int n=0 ;n+=m:return n;) main() int n=0 ;printf( d,f
49、(+n) ;printf( dn,f(n+) ;) 程序运行后的输出结果是( )。A)1,2 B)1,1 C)2,3 D)3,3 (34)有以下程序#include main() char ch 35=AAAA,BBB ,CC) ;printf ( sn,ch1) ; 程序运行后的输出结果是( )。A)AAAA B)CC C)BBBCC D)BBB (35)有以下程序#include #include void fun(char *w,int m) char s,*p1,*p2;p1=w;p2=w+m-1 ;while(p1p2)s=*p1 ;*p1=p2;*p2=s;p1+;p2-; ) )
50、 main() char a=123456 ;fun(a,strlen(a);puts(a); 程序运行后的输出结果是( ) A)654321 B)116611 C)161616 D)123456 (36)有以下程序#include #include typedefstructchar name9 ;char sex;int score2;STU ;STUf(STU a) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 34 页 - - - - - - - - - 19