计算机二级c试卷-2005
(33)有以下程序 # define f(x) (x*x) main() { int i1, i2; i1=f(8)/f(4) ; i2=f(4+4)/f(2+2) ; printf("%d, %d\n",i1,i2); } 程序运行后的输出结果是 A)64, 28 B)4, 4 C)4, 3 D)64, 64 (34)有以下程序 main() { char a1='M', a2='m'; printf("%c\n", (a1, a2) ); } 以下叙述中正确的是 A)程序输出大写字母M B)程序输出小写字母m C)格式说明符不足,编译出错 D)程序运行时产生出错信息 (35)有以下程序 #include main() { char c1='1',c2='2'; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); } 当运行时输入:a<回车> 后,以下叙述正确的是 A)变量c1被赋予字符a,c2被赋予回车符 B)程序将等待用户输入第2个字符 C)变量c1被赋予字符a,c2中仍是原有字符2 D)变量c1被赋予字符a,c2中将无确定值 (36)有以下程序 main() { int k=5,n=0; while(k>0) { switch(k) { default : break; case 1 : n+=k; case 2 : case 3 : n+=k; } k--; } printf("%d\n",n); } 程序运行后的输出结果是 A)0 B)4 C)6 D)7 (37)有以下程序 main() { int a[]={2,4,6,8,10}, y=0, x, *p; p=&a[1]; for(x= 1; x<3; x++) y += p[x]; printf("%d\n",y); } 程序运行后的输出结果是 A)10 B)11 C)14 D)15 (38)有以下程序 void sort(int a[], int n) { int i, j ,t; for (i=0; i for (j=i+1; j if (a[i] } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10}, i; sort(aa+2, 5); for (i=0; i<10; i++) printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是 A)1,2,3,4,5,6,7,8,9,10, B)1,2,7,6,3,4,5,8,9,10, C)1,2,7,6,5,4,3,8,9,10, D)1,2,9,8,7,6,5,4,3,10, (39)有以下程序 void sum(int a[]) { a[0] = a[-1]+a[1]; } main() { int a[10]={1,2,3,4,5,6,7,8,9,10}; sum(&a[2]); printf("%d\n", a[2]); } 程序运行后的输出结果是 A)6 B)7 C)5 D)8 (40)有以下程序 void swap1(int c0[], int c1[]) { int t ; t=c0[0]; c0[0]=c1[0]; c1[0]=t; } void swap2(int *c0, int *c1) { int t; t=*c0; *c0=*c1; *c1=t; } main() { int a[2]={3,5}, b[2]={3,5}; swap1(a, a+1); swap2(&b[0], &b[1]); printf("%d %d %d %d\n",a[0],a[1],b[0],b[1]); } 程序运行后的输出结果是 A)3 5 5 3 B)5 3 3 5 C)3 5 3 5 D)5 3 5 3 (41)有以下程序 #include main() { char p[]={'a', 'b', 'c'}, q[10]={'a', 'b', 'c'}; printf("%d %d\n", strlen(p), strlen(q)); } 以下叙述中正确的是 A)在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3 B)由于p数组中没有字符串结束符,长度不能确定;但q数组中字符串长度为3 C)由于q数组中没有字符串结束符,长度不能确定;但p数组中字符串长度为3 D)由于p和q数组中都没有字符串结束符,故长度都不能确定 (42)有以下程序,其中函数f的功能是将多个字符串按字典顺序排序 #include void f(char *p[], int n) { char *t; int i,j; for(i=0; i for(j=i+1; j if(strcmp(p[i],p[j])>0){ t=p[i]; p[i]=p[j]; p[j]=t; } } main() { char *p[5]={"abc","aabdfg","abbd","dcdbe","cd"}; f(p, 5); printf("%d\n", strlen(p[1])); } 程序运行后的输出结果是 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 str[10]="abcdefg", *p ; p=str+strlen(str)/2+1; f(p, p-2); printf("%s\n",str); } 程序运行后的输出结果是 A)abcdefg B)gfedcba C)gbcdefa D)abedcfg (44)有以下程序 float f1(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.0f\n",y1,y2); } 程序运行后的输出结果是 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++; } return t+a++; } main() { int s=a, i; for( i=0; i<3; i++) s+=f(i); printf("%d\n", s); } 程序运行后的输出结果是 A)26 B)28 C)29 D)24
上一页 [1] [2] [3] [4] [5] [6] [7] 下一页
|