#include
{int a=3,b=4,c=5,d;
d=f(f(a,b),f(a,c)); printf(“%d\\n”,d); }
程序运行后的输出结果是 A)10 B)9 C)8 D)7
(25)有以下程序 #include
{while(*s)
{ if(*s%2==0)
printf(“%c”,*s); s++; } }
main() { char
a[]={“good”};
fun(a);printf(“\\n”); }
注意:字母a的ASCⅡ码值为97,程序运行后的输出结果是 A)d B)go C)god D)good
(26)有以下程序 #include
void fun( int *a,int *b) {int *c; c=a;a=b;b=c; }
main()
{int x=3,y-5,*P=&x,*q=&y;
16
fun(p,q);printf(“%d,%d,”,*p,*q); fun(&x,&y);printf(“%d,%d\\n”,*p,*q); }
程序运行后的输出结果是 A)3,5,5,3 B)3,5,3,5 C)5,3,3,5 D)5,3,5,3
(27)有以下程序 #include
viod f(int *p,int *q); main()
{ int m=1,n=2,*r=&m;
f(r,&n);printf(“%d,%d”,m,n); }
void f(int *p,int *q) {p=p+1;*q=*q+1;}
程序运行后输出的结果是 A)1,3 B)2,3 C)1,4 D)1,2
(28)以下函数按每行8个输出数组中的数据 void fun( int *w,int n) { int i;
for(i=0;i {_________________ printf(“%d”,w); } printf(“\\n”); } 下划线处应填入的语句是 A)if(i/8==0)print(“\\n”); B) if(i/8==0)continue; C) if(i%8==0)print(“\\n”); D) if(i%8==0)continue; (29)若有以下定义 17 int x[10],*pt=x; 则对x数组元素的正确应用是 A)*&x[10] B)*(x+3) C)*(pt+10) D)pt+3 (30)设有定义:char s[81];int i=10;,以下不能将一行(不超过80个字符)带有空格的字符串真确读入的语句或语句组是 A gets(s) B)while((s[i++]=getchar())!=”\\n”;s=”\\0”; C)scanf(“%s”,s); D)do{scanf(“%c”,&s);}while(s[i++]!=”\\n”);s=”\\0”; (31)有以下程序 #include { char *a[ ]={“abcd”,”ef”,”gh”,”ijk”};int I; for(i=0;i<4;i++) printf(“%c”,*a); } 程序运行后输出的结果是 A)aegi B)dfhk C)abcd D)abcdefghijk (32)以下选项中正确的语句组是 A)char s[];s=”BOOK!”; B) char *s;s={”BOOK!”}; C)char s[10];s=”BOOK!”; D) char *s;s=”BOOK!”; (33)有以下程序 #include { if(x==y) return(x); else returen((x+y)/2) } main() { int a=4,b=5,c=6; printf(“%d\\n”,fun(2*a,fun(b,c))) 18 } 程序运行后的输出结果是 A)3 B)6 C)8 D)12 (34)设函数中有整型变量n,为保证其在未赋值的情况下初值为0,应选择的存储类别是 A)auto B) register C)static D)auto或register (35)有以下程序 #include int fun(int *k) { b=*k+b;return(b);} main() { int a[10]={1,2,3,4,5,6,7,8},I; for(i=2;i<4;i++) {b=fun(&a)+b;printf(“%d”,b);} printf(“\\n”); } 程序运行后输出的结果是 A)10 12 B)8 10 C)10 28 D)10 16 (36)有以下程序 #include #define S(x) PT*x*x; mian() { int a=1, b=2; printf(“%4.1f\\n”,S(a+b));} 程序运行后输出的结果是 A)14.0 B)31.5 C)7.5 D)程序有错无输出结果 19 (37)有以下程序 #include { int x,y;} dt[2]={1,2,3,4}; main() { struct ord *p=dt; printf(“%d,”,++p->x); printf(“%d\\n”,++p->y); } 程序的运行结果是 A)1,2 B)2,3 C)3,4 D)4,1 (38)设有宏定义:#include IsDIV(k,n) ((k%n==1)?1:0且变量m已正确定义并赋值,则宏调用:IsDIV(m,5)&& IsDIV(m,7)为真时所要表达的是 A)判断m是否能被5或者7整除 B)判断m是否能被5和7整除 C)判断m被5或者7整除是否余1 D)判断m被5和7整除是否余1 (39)有以下程序 #include { int a=5,b=1,t; t=(a<<2|b); printf(“%d\\n”,t) } 程序运行后的输出结果是 A)21 B)11 C)6 D)1 (40)有以下程序 #include f=fopen(“filea.txt”,”w”); fprintf(f,”abc”); fclose(f); 20