16.以下程序的输出结果是 main() {int m=3,n=4,x; x=-m++; x=x+8/++n; printf("%d\n",x); }; A)3 B)5 C)-1 D)-2
|
A B C D |
17.以下程序的输出结果是 main() {char a=′a′,b; printf("%c,",++a); printf("%c\n",b=a++); } A)b,b B)b,c C)a,b D)a,c
|
A B C D |
18.main() {int m=0256,n=256; printf("%o%o\n",m,n); } A)02560400 B)0256256 C)256400 D)400400 |
A B C D |
19.以下程序的输出结果是 main() {int a=666,b=888; printf("%d\n",a,b); } A)错误信息 B)666 C)888 D)666,888
|
A B C D |
20.以下程序的输出结果是 main() {int i; for(i=0;i<3;i++) switch(i){ case 0:printf("%d",i); case 2:printf("%d",i); default:printf("%d",i); } } A)022111 B)021021 C)000122 D)012
|
A B C D |
21.若x和y代表整型数,以下表达式中不能正确表示数据关系|x-y|<10的是 A)abs(x-y)<10 B)x-y>-10&&x-y<10 C)!(x-y)<-10‖!(y-x)>10 D)(x-y)*(x-y)<100
|
A B C D |
22.以下程序的输出结果是 main() {int a=3,b=4,c=5,d=2; if(a>b) if(b>c) printf("%d",d+++1); else printf("%d",++d+1); printf("%d\n",d); } A)2 B)3 C)43 D)44
|
A B C D |
23.下列条件语句中,功能与其他语句不同的是 A)if(a)printf("%d\n",x);elseprintf("%d\n",y); B)if(a==0)printf("%d\n",y);elseprintf("%d\n",x); C)if(a!=0)printf("%d\n",x);elseprintf("%d\n",y); D)if(a==0)printf("%d\n",x);elseprintf("%d\n",y);
|
A B C D |
24.以下程序的输出结果是 main() {int i=0,s=0; for(;;) { if(i==3‖i==5)continue; if(i==6)break; i++; s+=i; }; printf("%d\n",s); } A)10 B)13 C)21 D)程序进入死循环
|
A B C D |
25.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是 A)for(i=1,p=1;i<5;i++)p*=i; B)for(i=1;i<=5;i++){p=1;p*=i;} C)i=1;p=1;while(i<=5){p*=i;i++;} D)i=1;p=1;do{p*=i;i++;}while(i<=5);
|
A B C D |
26.有以下程序 main() {char a,b,c,d; scanf("%c,%c,%d,%d",&a,&b,&c,&d); printf("%c,%c,%c,%c\n",a,b,c,d); } 若运行时从健盘上输入:6,5,65,66<回车>。则输出结果是 A)6,5,A,B B)6,5,65,66 C)6,5,6,5 D)6,5,6,6
|
A B C D |
27.以下能正确定义二维数组的是 A)int a [][3]; B)int a[][3]={2*3}; C)int a[][3]={}; D)int a[2][3]={{1},{2},{3,4}};
|
A B C D |
28.以下程序的输出结果是 int f(inta) {return a%2;} main() {int s[8]={1,3,5,2,4,6},i,d=0; for(i=0;f(s[i]);i++)d+=s[i]; printf("%d\n",d); } A)9 B)11 C)19 D)21
|
A B C D |
29.若有以下说明和语句int c[4][5],(*p)[5];p=c;能够正确引用c数组元素的是 A)p+1 B)*(p+3) C)*(p+1)+3 D)*(p[0]+2)
|
A B C D |
30.以下程序的输出结果是 main() {int a=7,b=8,*p,*q,*r; p=&a;q=&b; r=p;p=q;q=r; printf("%d,%d,%d,%d\n",*p,*q,a,b); } A)8,7,8,7 B)7,8,7,8 C)8,7,7,8 D)7,8,8,7
|
A B C D |
31.s1和s1已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是 A)if(s1>s2)S; B)if(strcmp(s1,s2))S; C)if(strcmp(s2,s1)>0)S; D)if(strcmp(s1,s2)>0)S;
|
A B C D |
32.设有定义语句int x[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组6个元素中的值,不能完成此操作的语句是 A)for(i=0;i<6;i++)printf("%2d",*(p++)); B)for(i=0;i<6;i++)printf("%2d",*(p+i)); C)for(i=0;i<6;i++)printf("%2d",*p++); D)for(i=0;i<6;i++)printf("%2d",(*p)++);
|
A B C D |
33.以下程序的输出结果是 #include main() {int a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL; *q=*(q+5); printf("%d%d\n",*p,*q); } A)运行后报错 B)66 C)611 D)510
|
A B C D |
34.设有以下定义和语句int a[3][2]={1,2,3,4,5,6},*p[3]; p[0]=a[1]; 则*(p[0]+1) 所代表的数组元素是 A)a[0][1] B)a[1][0] C)a[1][1] D)a[1][2]
|
A B C D |
35.以下程序的输出结果是 main() {char str[][10]={"china","Beijing"},*p=str; printf("%s\n",p+10); } A)China B)Beijing C)ng D)ing
|
A B C D |
|