答案为什么是12呢?

img

因为i=10,j=2
当i=9,j=2的时候,会执行i=i+j,此时i为11
然后i++结果为12不满足循环,退出循环。
输出i的值,就是12了。

i=i+j会让循环跳着运行,内层for循环,i共会增加3,另外for循环i++要加1,所以整个循环相当于for(i=0;i<10;i+=4)
这样循环结束条件就是i=12


printf那一句其实只有在i=9的时候会执行,当i=9时,j=0,i=9+0=9,j=1,i=9+1=10,j=2,i=10+2=12,此时跳出循环,打印i=12

循环最后一次时i为9,j为2,i+j结果为11,然后再执行了一次i++,i变为12,i<10不成立,循环结束,输出i为12

 觉得有用的话采纳一下哈

循环条件是i<10
i如果是9,根本没法结束循环,你瞎蒙也肯定不能蒙A啊

  1. i为0时,j最后取值2,i =2 ,循环体执行结束,然后执行i++,此时i=3
  2. 第二次循环体执行完i 会取到5,后执行i++,此时i=6
  3. 第三次i =9 时,j 取值2,i =11,循环体执行结束,i++, 此时i=12,判断i不满足循环条件,退出,i =12