请大家帮我看一下这个题目哪里出问题了


#include<stdio.h>
int main()
{
    double sum=1,a,b;
    int n,c,d;
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {    int k=1;
        for(int m=1;m<=i;m++)
        {
            k*=m;
            
        }
        a=1.0/k;
        sum+=a;
     } 
    printf("sum = %.8f",sum);
    return 0;
}


``题目`
自然常数 e 可以用级数 1+1/1!+1/2!+⋯+1/n!+⋯ 来近似计算。本题要求对给定的非负整数 n,求该级数的前 n+1 项和。

输入格式:
输入第一行中给出非负整数 n(≤1000)。

输出格式:
在一行中输出部分和的值,保留小数点后八位。

输入样例:
10
结尾无空行
输出样例:
2.71828180




这道题我用sample试了一下 一模一样  不知道为什么这个题目还是错了


![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/008808855536188.png "=600 #left")

sum=去掉。改成%.8lf

printf("%.8lf",sum);


 有帮助请采纳

输出格式不对。