慕盖茨0310757
2020-05-31 14:29
#include <stdio.h>
int main()
{
// 定义变量sum, num
int sum, num;
sum = 0;
for(num = 2; num<=10 ; ++num) //for循环条件与num的变化值
{
sum+=num; //计算每次数字之间的和sum
}
printf("10以内数的和为:%d", sum);
return 0;
}
如上是我自己在原答案上修改后的,为什么循环条件for后面第三个++num没有起到作用? 结果显示为54,可若是++num应该是从3开始加起,那么结果应是52啊,萌新不懂qwq
for是先执行 num=2 然后判断 num<=10 然后执行 sum+=num 再执行 ++num。
所以计算过程是2+3+4+5+6+7+8+9+10=54
你可能误以为for循环 先执行了++num再执行求和所以会认为是从3开始加,实际上是在+完2以后再执行++num,所以是从2开始加的。
注意for循环的执行顺序 表达式1 表达式2 执行语句块 表达式3
C语言入门
926206 学习 · 20797 问题
相似问题