PTA 求阶乘序列前N项和

本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。

输入格式:

输入在一行中给出一个不超过12的正整数N。

输出格式:

在一行中输出整数结果。

输入样例:

5

输出样例:

153

代码如下

#include
double fact(int x);
int main()
{
    int N,sum=0;
    scanf("%d",&N);
    for(int m=1;m<=N;m++)
    {
        sum+=fact(m);
    }
    printf("%d",sum);
    return 0;
}
double fact(int x)
{
    int s=1;//这里是关键
    for(int i=1;i<=x;i++)
    {
        s*=i;
    }
    return s;
}

遇到的错误:

答案不正确:fact函数里s没有赋值。

PTA 求阶乘序列前N项和_第1张图片

你可能感兴趣的:(c语言)