求阶乘的和,一直在oj上判断答案错误50%,不明白原因,n>=1,n<=15

#include<stdio.h>
int jiecheng(int k)
{
int i;
long long sum=1;
for(i=1;i<=k;i++)
{
sum=sum*i;
}
return sum;
}

int main(void)
{
int n,j;
while(scanf("%d",&n)!=EOF)
{
long long ans=0;
for(j=1;j<=n;j++)
{
ans=ans+jiecheng(j);
}
printf("%lld\n",ans);
}
return 0;
}

可以给题目看看吗