c语言求s=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)=,

这样写为什么怎么输入都是0?

最好函数调用。

#include <stdio.h>
#include <stdlib.h>

int sum_num(int i)
{
    int j;
    int sum=0;
    for(j=1;j<=i;j++)
    {
        sum+=j;
    }
    return sum;
}
int main()
{
    int i;
    scanf("%d",&i);
    int j;
    int sum=0;
    for(j=1;j<=i;j++)
    {
        sum+=sum_num(j);
    }
    printf("%d",sum);
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-04-05
t是浮点型,而输出时是整型。可以将输出的%d改为%f,或将float改为int,建议改float,可以减小内存占用。当然不一定要改float,因为程序比较小。
第2个回答  推荐于2017-09-28
#include"stdio.h"
int sum_num(int i)
{
    int j;
    int sum=0;
    for(j=1;j<=i;j++)
    {
        sum+=j;
    }
    return sum;
}
int main()
{
    int i;
    scanf("%d",&i);
    int j;
    int sum=0;
    for(j=1;j<=i;j++)
    {
        sum+=sum_num(j);
    }
    printf("%d\n",sum);
    return 0;
}

第3个回答  2015-04-05
计蒜客编程窗口左边的那个提问,你去那里看看吧。。
相似回答