c语言题,阶乘咋搞啊

编程计算1-1/2!+1/3!-1/4!+………+1/19!-1/20!的和

#include<stdio.h>
long long jc(int n){
    long long s=1;
    for(int i=1;i<=n;i++)//for循环求累积
        s=s*i;
    return s;    
}
int main()
{
    float sum=0;
    int flag=1;
    for(int i=1;i<=20;i++){
        sum+=flag*1.0/jc(i);
        flag=-flag;
    }
    printf("%.4f",sum);
}
#include <stdio.h>
int main()
{
    int flag = 1;
    double k = 1,sum=0;
    for(int i=1;i<=20;i++)
    {
        k*=i;
        sum += flag / k;
        flag *= -1;
    }
    printf("%lf",sum);
    return 0;
}