有以下程序:
#include< stdio.h >
main()
{
int x;
for(x=5;x >0;x——)
if(x—< 5)
printf("%d,",x);
else
printf("%d,",x++);
}
程序运行后的输出结果是( )。
【正确答案】 B
【答案解析】本题主要考查if选择语句的嵌套和自加自减运算符的用法。其中x++和x——是先参与计算,再自加自减。x=5时,判断if条件x——< 5,先比较x< 5是否成立,而5< 5显然不成立,此时x自减1即4,执行else后的语句,先输出4,;然后x再自加1为5,接着执行第2次for循环,此时经过for循环中的x——后,x变为4 >0,执行if语句,由于4< 5,条件成立,x先自减1为3,然后执行printf语句,输出3,;接着执行第三次for循环,经x——后,x值为2 >0,判断2< 5成立,x先自减为1,然后输出1,;接着执行第四次for循环,经x——后,x值为0,否循环表达式中判断条件x >0不成立,结束本次循环。故最后输出结果是4,3,1,。