4.以下程序的输出结果是 main() { int x=10,y=10,i; for(i=0;x>8;y=++i) printf(“%d %d”,x--,y); } A、main(){ int x=10,y=10,i;for(i=0;x>8;y=++i)printf(“%d %d”,x--,y);}A、10 1 9 2 B、9 8 7 6 C、10 9 9 0 D、10 10 9 1为什么选择d

问题描述:

4.以下程序的输出结果是 main() { int x=10,y=10,i; for(i=0;x>8;y=++i) printf(“%d %d”,x--,y); } A、
main()
{ int x=10,y=10,i;
for(i=0;x>8;y=++i)
printf(“%d %d”,x--,y);
}
A、10 1 9 2 B、9 8 7 6 C、10 9 9 0 D、10 10 9 1
为什么选择d

第一次循环:i=0; x=10; y=10; 输出10,10 完了x自减等于9,y=++i=1;
第二次循环:i=1; x=9; y=1; 输出9,1,x自减等于8,跳出循环
主要是y=++i这句话是在每次循环最后执行的