大众信息网

C语言中sum=1+2+...+n求和?

关注:286  答案:6  手机版
解决时间 2021-01-27 14:03
#include int main (){ int n; int i=1; int sum=0; if (n>0) { while (i=1;i<=n;i++) { sum=sum+i; printf ("The sum is %d\n",sum); } } else if (n=0) { printf ("The sum is sum=0\n"); } else { printf ("There is no answer!!!"); }}

在运行时,老是报错,请大侠帮忙指正。小弟谢过了!!!



最佳答案
while (i=1;i<=n;i++)

改成

for (i=1;i<=n;i++)
全部回答
1).cpp这是c++你因该.c这种格式的 2)n没初值会乱码
while的用法用错 for (i=1;i<=n;i++) 才对 n 没赋值是0 只会跑到n=0那 另外,这是c语言不是c++ 所以副档名请改.c
sum是你自己定义的那个函数: float sum(int n,int m)就是这个函数。 s=sum(n,2); s=sum(n,1);这两个都是调用你的函数sum来进行运算。 n是你main函数中输入的变量,对应于你sum函数中的n,而2或者1就是对应于sum函数中的m。 函数的大意就是,把n和2,或者n和1当做输入参数,给到sum函数进行运算,然后sum函数把值返回给主函数。 大概就是这样,你可以编译试试。有问题再问吧。
#include  int main () {     int n = 0;     int i = 1;     int sum = 0;     printf("Input n:");     scanf("%d", &n);     if(n > 0)     {         for(i = 1; i <= n; i++)         {             sum = sum + i;         }         printf ("The sum is %d\n", sum);     }     else if(n == 0)     {         printf ("The sum is sum = 0\n");     }     else     {         printf ("There is no answer!!!");     }     return 0; }
#include  int main () { int n; int i=1; int sum=0; scanf("%d",&n);//没有输入n if (n>0) { for (i=1;i<=n;i++)//你这是for的格式 { sum=sum+i; printf ("The sum is %d\n",sum); } } else  if (n==0)//==判断 { printf ("The sum is sum=0\n"); } else { printf ("There is no answer!!!"); } return 0; }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!