问题 单项选择题

下列程序的运行结果是( )。
main()
int x=1,y=3,a=0;
while(x++!=(y=1))
a+1;
if(y<x)break;

printf("%d,%d,%d\n”,x,y,

A.;
A) 2,3,2B) 2,3,1C) 1,3,3

答案

参考答案:D

解析: 本题考查while循环。第一次循环,先拿x的值和(y-1)比较,此时x=1,y-1=2,循环条件成立,比较完将x的值加1,此时x=2,进入循环,a=a+1=1,判断if语句的控制条件是否成立,y<x不成立,接着执行下一次循环。第二次循环,先拿x的值和(y-1)比较,此时x=2,y-1=1,循环条件成立,比较完将x的值加1,此时x=3,进入循环,a=a+1=2,判断if语句的控制条件是否成立,y<x成立,执行break语句退出循环。

选择题
填空题