while语句里面的i++可以和sum+=i*flag换位置吗
不行,算sum的时候i的值不同了
while和do-while循环应该把sum+=i*flag 在前,i++在后,才符合题目要求的1-2+3-1...-100的值。
而i++在前,sum+=i*flag在后的话,其实是在算2-3+4-5..-101的值。
所以,虽然两种运算结果都是-50,但是运算的内容是不同的,需要注意。
i++;
sum+=i*flag;
//这里先让i+1,再执行sum
sum+=i*flag;
i++;
//这里先算sum,再让i+1
//具体怎么用看题目要求了