用c语言for循环求1到100之和

#include <stdio.h>
void main()
{
int i,sum=0;
for(i=0;i<=100;i++);
sum=sum+i;
printf("%d",sum);
}
大家帮忙看下我哪里写错了 为什么运行的结果是101?

sum = sum+i 这一句写在了for循环的外面,意思就是先作for循环至i=101,最后运行sum=sum+i,输出为101。

更改,把sum=sum+i写到循环里面。

#include <stdio.h>

int main(void)

{

int i,sum=0;

for(i=0;i<=100;i++)

{

sum=sum+i;

}

printf("%d",sum);

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-10

直接累加即可。

#include <stdio.h>

int main()
{
    int sum = 0;
    for (int i = 1; i <= 100; i++)
        sum += i; // 累加到 sum 中
    printf("sum: %d\n", sum);
    return 0;
}

本回答被网友采纳
第2个回答  2011-12-12
#include <stdio.h>
void main()
{
int i,sum=0;
for(i=0;i<=100;i++)//这里不应该有分号
sum=sum+i;
printf("%d",sum);
}
不懂hi我本回答被提问者采纳
第3个回答  2011-12-12
for循环括号后没有分号,鉴定完毕。
第4个回答  2019-12-21
直接累加即可。
#include <stdio.h>int main(){int sum = 0;for (int i = 1; i <= 100; i++)sum += i; // 累加到 sum 中printf("sum: %d", sum);return 0;}
相似回答