代码段1:
i = 1;
while(i <= 10)
{
sum += (i++);
}
这个代码段的运行结果是计算出1~10的累加和55。因为这里使用了后置递增运算符,所以,每次计算,先用i的值计算sum,再使i加1。等价于:
sum = sum + i;
i++;
代码段2:
i = 1;
while(i <= 10)
{
sum += (++i);
}
这个代码段的运行结果是计算出2~11的累计和65。因为这里使用了前置递增运算符,每次执行循环体,先让i加1,然后再累加到sum上。等价于:
while(i <= 10)
{
i++;
sum = sum + i;
}
代码段3:
i = 1;
while(i++ <= 10)
{
sum += i;
}
这个代码段的运行结果是计算出2~11的累加和为65。因为在while的圆括号内使用了后置递增运算符,先判断i小于等于10是否成立,然后让i自增。例如第一次判断,i<=10为真,同时i增1变为2,然后执行循环体,将2累加到sum中。最后一次循环前i的值为10,10<=10成立,同时i加1变成11,然后执行循环体,将11累加到sum中。最后因11<=10不再成立,循环结束。此时sum的值为2~11的累加和。
代码段4:
i = 1;
while(++i <= 10)
{
sum += i;
}
这个代码段的运行结果计算的是2~10的累加和为54.因为在while的圆括号内使用了前置的递增运算符,先让i的值增1,再判断i的值小于等于10是否成立。