11 若运行时给变量x输入12 ,则以下程序的运行结果是____。
main( )
{int x,y;
scanf(“%d”,&x);
y=x>12?x+10:x-12;
printf(“%d\n”,y);
}
A 0
B 22
C 12
D 10
12 设有程序段
int k=10;
while(k=0) k=k-1;
则下面描述中正确的是 。
A)while循环执行10次
B)循环是无限循环
C)循环体语句一次也不执行
D)循环体语句执行一次
13 语句while(!E);中的表达式!E等价于 。
A)E==0
B)E!=1
C)E!=0
D)E==1
14 下面程序段的运行结果是 。
int n=0;
while(n++<=2); printf(“%d”,n);
A)2
B)3
C)4
D)有语法错
15 C语言中while和do-while循环的主要区别是 。
A)do-while的循环体至少无条件执行一次
B)while的循环控制条件比do-while的循环控制条件严格
C)do-while允许从外部转到循环体内
D)do-while的循环体不能是复合语句
16 以下程序段 。
x=-1;
do
{x=x*x;}
while(!x);
A) 是死循环
B) 循环执行二次
C) 循环执行一次
D) 有语法错误
17 以下描述中正确的是 。
A)由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
B)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
C)在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操作
D)do-while循环中,根据情况可以省略while
18 若有如下语句
int x=3;
do{printf(“%d\n”,x-=2);}while(!(--x));
则上面程序段 。
A) 输出的是1
B) 输出的是1和-2
C) 输出的是3和0
D) 是死循环
19 下面程序的运行结果是 。
#include <stdio.h>
main( )
{int y=10;
do {y--;}while(--y);
printf(“%d\n”,y--);
}
A)-1
B) 1
C) 8
D) 0
20 下面有关for循环的正确描述是 。
A for循环只能用于循环次数已经确定的情况
B for循环是先执行循环体语句,后判断表达式
C 在for循环中,不能用break语句跳出循环体
D for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来