计算机二级C语言选择题 下载本文

putchar(c2);

printf(“%c%c\\n”,c5,c6); }

程序运行后,若从键盘输入(从第1列开始) 123<回车> 456789<回车> 则输出结果是

A 1267 B 1278 C 1256 D 1245 标准答案:D

158、以下选项中,当x为大于1的奇数时,值为0的表达式是

A x%2==1 B x%2==0 C x%2!=0 D x/2 标准答案:B

159、以下选项中与

if(a==1)a=b; else a++;

语句功能不同的switch语句是

A switch(a) B switch(a==1)

{ case 1:a=b;break; { case 0: a=b;break; default : a++; case 1: a++ } }

C switch(a) D switch(a==1)

{ default :a++;break; { case 1:a=b;break; case 1:a=b; case 0: a++; } } 标准答案:B

160、若变量已正确定义,有以下程序段 i=0;

do printf(“%d”,i); while(i++); printf(“%d\\n”,i);

其输出结果是

A 0,0 B 程序进入无线循环 C 1,1 D 0,1 标准答案:D 161、有以下程序

#include main( )

{ int a=1,b=2,c=3,d=0; if(a==1 && b++==2) if (b!=2||c--!=3)

printf(“%d,%d,%d\\n”,a,b,c); else printf(“%d,%d,%d\\n”,a,b,c); else printf(“%d,%d,%d\\n”,a,b,c); }

程序运行后的输出结果是

A 1,2,3 B 1,3,2 C 3,2,1 D 1,3,3 标准答案:D

162、有以下程序段

25

int i, n;

for(i=0; i<8; i++) { n = rand( ) %5; switch(n) { case 1:

case 3: printf(“%d\\n”,n); break; case 2:

case 4: printf(“%d \\n”,n); continue; case 0: exit(0); }

printf(“%d \\n”,n); }

以下关于程序段执行情况的叙述,正确的是

A 当产生的随机数n为0时结束程序运行

B 当产生的随机数n为4时结束循环操作 C for循环语句固定执行8次

D 当产生的随机数n为1和2时不做任何操作

标准答案:A

163、以下选项中,值为1的表达式是

A ?1? -0 B ?\\0? - ?0? C ?1? - ?0? D 1 - ?0? 标准答案:C

164、当变量c的值不为2、4、6时,值为“真”的表达式是

A (c>=2 && c<=6) || (c!=3) || (c!=5) B (c>=2 && c<=6) && (c%2!=1) C (c==2) || (c==4) || (c==6) D (c>=2 && c<=6) && !(c%2) 标准答案:A

165、下列条件语句中,输出结果与其他语句不通的是

A if ( a!=0) printf (“%d\\n”,x); else printf (“%d\\n”,y); B if ( a==0) printf (“%d\\n”,x); else printf (“%d\\n”,y); C if ( a==0) printf (“%d\\n”,y); else printf (“%d\\n”,x); D if (a) printf (“%d\\n”,x); else printf (“%d\\n”,y); 标准答案:B 166、有以下程序

#include main( )

{ int x=1,y=2,z=3; if(x>y)

if(y

程序的运行结果是

A 1 B 2 C 331 D 41 标准答案:A

167、要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确

26

A while((ch=getchar() )==?N? ) printf(“%c”,ch);

B while(ch=getchar() ==?N?) printf(“%c”,ch); C while((ch=getchar( )) !=?N?) printf(“%c”,ch); D while(ch=getchar() =?N?) printf(“%c”,ch); 标准答案:C

168、以下叙述中正确的是

A continue语句的作用是:使程序的执行流程跳出包含的所有循环 B 在循环体内使用bteak语句和continue语句的作用相同 C break语句只能用于switch语句体中

D break语句只能用在循环体内和seitch语句体内 标准答案:D

169、若有以下程序

#include main( )

{ int a=1,b=2,c=3,d=4; if ( (a=2)|| (b=1) ) c=2;

if ( (c==3)&&(d=-1) ) a=5; printf(“%d,%d,%d,%d\\n”,a,b,c,d); }

则程序的输出结果是

A 5,1,2,-1 B 2,2,2,4 C 2,1,2,-1 标准答案:B

170、若有以下程序

#include main( )

{ int a=1,b=2,c=3,d=4,r=0; if (a!=1) ; else r=1; if (b==2) r+=2;

else if(c!=3) r+=3; else if(d==4) r+=4; printf(“%d\\n”,r); }

则程序的输出结果是

A 7 B 6 C 3 D 标准答案:C

171、若有以下程序

#include main( )

{ int s=0, n; for(n=0;n<4;n++) { switch(n)

{ default: s+=4; case 1: s+=1; case 2: s+=2; case 3: s+=3; }

27

D 1,2,3,4 10

}

printf(“%d\\n”,s); }

则程序的输出结果是

A 18 B 24 C 10 D 6 标准答案:B

172、若有以下程序

#include main( )

{ int a=-2,b=0; while(a++) ++b; printf(“%d,%d\\n”,a,b); }

则程序的输出结果是

A 0, 2 B 1, 3 C 2, 3 D 1, 2 标准答案:D 173、有以下程序

#include main( )

{ int a=6,b=0,c=0;

for ( ;a; ) { b+=a; a-= ++c;} printf(“%d,%d,%d\\n”.a.b.c); }

则程序的输出结果是

A 0, 14, 3 B 0, 14, 6 C 0, 18, 3 标准答案:A

174、以下选项中非法的c语言字符常量是

A ?aa? B ?\\b? C ?\\xaa? D ?\\007? 标准答案:A

175、若有以下程序

#include main( )

{ int a=1,b=2,c=3,d=4;

if ( (a=2)&&(b=1) ) c=2; if ( (c==3)||(d=-1) ) a=5;

printf(“%d,%d,%d,%d\\n”,a,b,c,d); }

则程序的输出结果是

A 5,1,2,-1 B 1,2,3,4 C 2,2,2,4 D 标准答案:A

176、若有以下程序

#include Main( )

{ int a=1,b=2,c=3,d=4,r=0; if (a!=1) ; else r=1; if (b==2) r+=2;

28

D 1, 14, 3 2,1,2,-1