单选题 下列程序的运行结果是( )。

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,

【正确答案】 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语句退出循环。