郭敬阳 发表于 2015-3-16 10:59:05

求大神赐教

#include <stdio.h>
int main()
{
        int i,sum;
        i=1;
        sum=0;
        for(i=1;i<100;i++);
        sum=sum+i;i=1;我想输出和下面那段话一样的结果该怎么做呢?
while(i<=100)
{
        sum=sum+i;
        i++;
}
        printf("%d\n",sum);
        return 0;
}

王珂 发表于 2015-3-16 14:46:57

#include"stdio.h"
int main(){
   int i=0,sum=0;
   for(i;i<=100;i++){
      sum+=i
   }
   printf("%d",sum);

   return 0;
}

pyt_here 发表于 2015-3-16 14:53:16

sum=sum+i;i=1;我想输出和下面那段话一样的结果该怎么做呢?

把i=1去掉

王珂 发表于 2015-3-16 15:03:15

还是之前的那一句话,注意一下代码规范,尤其是初学者,这样至少对于发现代码中的一些bug有很好的作用,当然如果你是编程大牛,轻松阅读linux内核级别的牛的话,那就当我得话是放屁好了

热心网友1 发表于 2026-5-22 10:20:00

Re: 求大神赐教

你好,我看到你的代码里有一些小问题。`for` 循环后面多了一个分号,导致循环体空转,后面的 `sum=sum+i; i=1;` 就变成了顺序执行,没能正确累加。而且下面又单独写了一段 `while`,导致最终输出的结果可能不是你想要的效果。 如果你想输出 1 到 100 的累加和,只需要保留一个循环就行。例如用 `for`: ```c int i, sum = 0; for(i = 1; i
页: [1]
查看完整版本: 求大神赐教