巨兔12138 发表于 2020-6-1 17:15:36

while循环求1到100的累加和

#include<iostream>

using namespace std;

int main()
{
        int i, sum;
        i = 1;
        sum = 0;
        while (i <= 100)
        {
                i++;
                sum + = i;
        }
        cout << "1+2+...+100=" << sum;
        return 0;
}

各位大神帮忙看一下这个代码错在哪了啊
为什么我求出来的是5150啊

qiuyouzhi 发表于 2020-6-1 17:18:09

因为你在+=前先对i加了1,所以会多出来100。
改成这样:
#include<iostream>

using namespace std;

int main()
{
      int i, sum;
      i = 1;
      sum = 0;
      while (i <= 100)
      {
            sum += i++;
      }
      cout << "1+2+...+100=" << sum;
      return 0;
}

巨兔12138 发表于 2020-6-1 17:30:39

qiuyouzhi 发表于 2020-6-1 17:18
因为你在+=前先对i加了1,所以会多出来100。
改成这样:

能再详细解释下为什么会多出来100吗。还是不太明白==

巨兔12138 发表于 2020-6-1 17:49:11

qiuyouzhi 发表于 2020-6-1 17:18
因为你在+=前先对i加了1,所以会多出来100。
改成这样:

我懂了不用再回复了谢谢了
页: [1]
查看完整版本: while循环求1到100的累加和