下面的这个循环的循环次数是( B)。1.for(int i=0,j=10; i=j=10; i++,j--)
A.语法错误,不能执行
B.无限次
C.10
D.1
解析:没有判断语句
2.C语言中while和do-while循环的主要区别是(A)。
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
3.
执行以下循环语句时,下列说法正确的是(A)。
x = -1;
do {
x = x * x;
} while (x == 0);
A.循环体将执行一次
B.循环体将执行两次
C.循环体将执行无限次
D.系统将提示有语法错误
解析:当x!=0时候,就结束了循环体。
4.
在下列选项中,没有构成死循环的程序段是(C )。
A.
int i=100;
while (1)
{
i=i%100+1;
if(i>100) break;
}
B.
for ( ; ;);
C.
int k=1000;
do {++k;}while (k>=10000);
D.
int s=36;
while (s) ;
--s;
解析:A。while循坏条件为1恒为真,则导致无限循环
B.for循坏没有写条件也变成死循环
C.只要k!>=10000则跳出循坏
D.while(s)卡在s了,不会进行--s
5.
请问下面哪个选项与程序段中while(x)含义一样?(A)
int x,sum=0;
scanf("%d",&x);
while(x)
sum+=x;
A.while(x!=0)
B.while(x>0)
C.while(x<>0)
D.while(x==0)
6.
以下程序段执行后结果是什么:(D)
for(int i=0;i<5;i++,i++);
printf("*");
A.****
B.***
C.**
D.*
解析:因为循坏了5次,但printf只会输出一次所以一个*
7.
下面程序段执行后,最后一行的输出结果是(D )。
int a=1026, n=0;
while(a!=0)
{
printf("%d %d\\n",++n,a);
a/=2;
}
A.4 1
B.11 0
C.10 0
D.11 1