第五章测试
1.

05210012现已定义整型变量int i=1;执行循环语句while(i++<5);后,i的值为( )



A:6 B:其余选项均不正确 C:1 D:5
答案:A
2.

05210022:有程序段int k=10;while(k=0) k=k-1;则下面描述正确的是( )



A:循环体语句执行一次 B:循环是无限循环 C:while 循环执行10 D:循环体语句一次也不执行 3.

05210032:下列程序段的运行结果是(  )

int n=0; while(n++<3); printf("%d",n)



A:4 B:其余选项都不对 C:2 D:3 4.

05210042设有程序段t=0;while(printf("*")){ t++;if (t<3)break;} printf("t=%d",t);下面描述正确的是(  )



A:其中循环控制表达式是不合法的 B:其中循环控制表达式与'0'等价 C:其中循环控制表达式与0等价 D:其余选项都不对 5.

05310012以下程序段( )

x=-1;

do

{ x=x*x;

}while(!x);


A:循环执行一次 B:循环执行2 C:有语法错误 D:是死循环 6.

05310022下面程序的运行结果是(  )

int main()

{

int y=10;

do

{ y--;}

 while(--y);

printf("%d\n",y--);

}



A:-1 B:8 C:1 D:0 7.

05310032有语句int x=3; do { printf("%d\n",x-=2);} while(!(--x));则上面程序段(  )



A:输出的是1-2 B:是死循环 C:输出的是 D:输出的是30 8.

05510013有以下程序:

int main( )

char i;

for (; (i=getchar ())!='\n';)

switch (i-'a')

{  

case 0: putchar (i);

case 1: putchar (i+1); break;

case 2: putchar (i+2);

case 3: break;

default:putchar (i); break;

}

}

printf ("\n");

}输入abcde后,程序的输出结果是( )



A:abcee B:abcde C:abccdd D:abbde 9.

05480011do-while语句构成的循环不能用其它语句构成的循环来代替。()



A:对 B:错 10.

05480021:用do-while语句构成循环时,只要while后的表达式为0时就结束循环。()



A:错 B:对 11.

05480031while循环的while( )后没有分号,而do-while循环的while()后一定要有一个分号。()



A:对 B:错 12.

05510021C语言的for语句中的表达式可以部分或全部省略,但两个(  )不可省略。但当三个表达式均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。


A:; B:++ C:< D:, 13.

05510031下面有关for循环的正确描述是( )



A:for循环是先执行循环体语句,后判定表达式。 B:for循环体语句中,可以包含多条语句,但要用花括号括起来。 C:for循环中,不能用break语句跳出循环体。 D:for循环只能用于循环次数已经确定的情况。 14.

05510052以下不是无限循环的语句为( )


A:while(1){x++;}   B:for(y=0,x=1;x>++y;x=i++) i=x;  C:for( ; ;x++=i);  D:for(i=10;  ; i--) sum+=i;  15.

05580011for(表达式1;表达式2;表达式3)中,表达式1和表达式3不能同时都是逗号表达式。()



A:错 B:对 16.

05580021for循环中,如果表达式2为空,则该循环一定是死循环。()


A:错 B:对 17.

05580031for(i=0,j=10;i<=j;i++,j--) k=i+j;执行完后,k的值为50。()


A:对 B:错 18.

05580041ab均为int型变量,a=100,for (b=100;a!=b;++a,b++) printf("----\n")是死循环。()



A:错 B:对 19.

05580051执行语句:for(i=1;i++<4;++i);;变量i的值是5。(


A:错 B:对 20.

05610012以下程序输出结果为( )

int main()

{

int i,b,k=0;

for(i=1;i<=5;i++)

{

b=i%2;

while (b-->=0)

k++;

}

printf("%d,%d\n",k,b);

return0

}



A:8,-2 B:8,-1 C:3,-1 D:3,0 21.

05610021以下程序段中循环体总的执行次数是( )

int i,j;

for(i=7;i;i--)

for(j=0;j<6;j++)

{......}



A:21 B:36 C:42 D:13 22.

05710012以下正确的描述是( )



A:只能在循环体内和switch语句内使用break语句 B:从多层循环嵌套中退出时,只能使用goto语句 C:在循环体内使用break语句或continue语句的作用相同 D:continue语句的作用是结束整个循环的执行 23.

05710021以下不正确的描述是( )



A:在循环语句中使用continue是为了结束本次循环,而不是终止整个循环的执行。 B:switch语句中使用break语句或continue语句的作用相同。 C:break 语句不能用于循环语句和switch语句外的任何其他语句 D:在循环语句中使用break是为了使流程跳出循环体,提前结束循环。 24.

05780011break语句的作用就是结束本层循环。()



A:对 B:错

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(165) dxwkbang
返回
顶部