第 5 章 循环结构程序设计
一、单项选择题
1.在 C 语言中,下列说法中正确的是( )。
A) do-while 语句构成的循环不能用其它语句构成的循环来代替。
B) do-while 语句构成的循环只能用 break 语句退出。
C) do-while 语句构成的循环在 while 后的表达式非零时结束循环。
D) do-while 语句构成的循环,在 while 后的表达式为零时结束循环。
2. break 语句不能出现在 语句中( )
A) switch B)for C) while D) if…else
3.对于 break 语句和 continue 语句的说法错误的是( )
A) break 语句不能用于循环语句和 switch 语句之外的任何其他语句中。
B) break 和 continue 也可以用于 if 语句中
C) continue 语句只结束本次循环,而不是终止整个循环的执行。
D) break 语句是结束整个循环过程,不再判断执行循环的条件是否成立。
4. 语句 while (!y);中的表达式 !y 等价于
A)y==0 B)y=1 C)y=!0 D) y==1
5. 若有“int a=1,x=1;”,则循环语句“while(a<10) x++; a++;”的循环执行( )。
A)无限次 B)不确定次 C)10 次 D)9 次
6. 有以下程序段
int k=0
while(k) k++;
则 while 循环体执行的次数是
A) 无限次 B) 有语法错,不能执行
C) 一次也不执行 D) 执行 1 次
7. 下列循环语句中有语法错误的是( )
A while(x=y) 5; B while(0) ;
C do 2;while(x= =b); D do x++ while(x= =10);
8. 当运行时输入:abcd$abcde, 下面程序的运行结果是 。
#include
main()
{char c;
while(putchar(getchar())!='$');
printf("end");
}
A ) abcd$abcde B)abcd$end C )abcdend D) abcd$abcdeend
9. 以下程序段 ( )
x=-1;
do { x=x*x; }
while(x>0);
A) 是死循环 B) 循环执行一次 C) 循环执行二次 D) 有语法错误
10. 下面程序段执行后的结果为: ( )
int sum=0, n=10;
do { sum=sum+n;
n++; }
while(n<10);
printf(“%d,%d”,sum,n);
A. 0, 10 B) 10, 11 C) 0, 11 D) 以上结果都不对
12. 循环“for(i=0,x=1;i=10&&x>0;i++);”的循环执行( )。
A)无限次 B)不确定次 C)10 次 D)9 次
13. 执行语句{for(j=0;j<=3;j++) a=1;}后变量j 的值是 .
A)0 B) 3 C)4 D) 1
14. 有如下程序
main()
{ int