为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这样的结果是10100

#include <stdio.h>
int main()
{
    int i,sum=0;
    i=1;
    while(   i<=100  )  //循环条件应该是什么呢?
    {
        sum=sum+i;
         sum=sum+i++;         //这里是不是应该改变循环变量的值
    }
    printf("100以内所有整数之和为:%d\n", sum);
    return 0;
}

正在回答

2 回答

按照运算顺序,sum先加了i,然后遇到++符号,再自增了一次。所以最后结果是(sum+i)++,也就是5050+5050

1 回复 有任何疑惑可以回复我~

需要将sum=sum+i删掉,或者将下一句sum=sum+i++改为i++

0 回复 有任何疑惑可以回复我~
#1

慕标2558104 提问者

我的意思是为什么结果是这样,而不是正确答案?
2019-08-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926207    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

为什么这样的结果是10100

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信