问答详情
源自:4-10 循环结构之三种循环比较

这答案我有点看不懂!

http://img.mukewang.com/57beee3e000143c507130289.jpg

第一和第二个循环中i++都在sum+=i*flag前面,更上面不是说了i=1了吗,那i++岂不是从i=2开始???

提问者:_死水_ 2016-08-25 21:13

个回答

  • DLP973877067
    2016-08-26 23:06:39
    已采纳

    你可以理解成由左至右进行计算的方式,i++就是先进行i的计算,已经带入了计算式,然后才进行的+1,开始实行i+1的计算,就比如说i=2;printf(“%d\n”,i++);printf(“%d\n”,i);此时输出的就是先进行i的计算,直接输出i的值为2,然后i进行了下一步+1,则此时i等于2+1=3了就,所以输出的是

    2

    3

  • 慕粉3851595
    2016-08-25 21:34:52

    i++  :先在i所在的表达式中使用i的当前值,后让i加1

    ++i  :让i先加1,然后在i所在的表达式中使用i的新值

    在第一个和第二个循环中,第一次循环时i=1,执行完程序i变为2