#include main () { int x=10,y=10,i; for (i=0;x>8;y=++i) printf ("%d%d",x--,y); }他的输出为什么不是 10 1 9 2

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 20:42:37
#include main () { int x=10,y=10,i; for (i=0;x>8;y=++i) printf (

#include main () { int x=10,y=10,i; for (i=0;x>8;y=++i) printf ("%d%d",x--,y); }他的输出为什么不是 10 1 9 2
#include main () { int x=10,y=10,i; for (i=0;x>8;y=++i) printf ("%d%d",x--,y); }
他的输出为什么不是 10 1 9 2

#include main () { int x=10,y=10,i; for (i=0;x>8;y=++i) printf ("%d%d",x--,y); }他的输出为什么不是 10 1 9 2
应该是10 10 9 1吧 先判断x>8成立 执行循环 输出 x,y的值此时x,
y都为初始值10 所以输出10 10,执行一次循环后 执行语句y=++i;此时,y变为1;而x执行过x--后变为9 所以输出9 1