求助一道C语言编程题目

请帮我用C语言写个程序,来计算a=1!+2!+3!+…+20!拜托了,下午我就要考试了!!!!!
2026年09月18日 23:55
有3个网友回答
网友(1):

我是在线在这个框中编写的啊,兄弟,自己最好调试一下了.
void jiecheng(int n)
{if n>=2
return n*jiecheng(n-1);
else
return 1;
}
main()
{double s=0.0;
int i;
for(i=1;i<=21;i++)
s=s+jiecheng(i);
printf("a=1!+2!+3!+…+20!=%d",s);
}
不过这样计算下来可能后面的结果不是很准,因为计算机存储的位数不够,导致的!不过应付个考试,还是够的了.

网友(2):

求数nNum的阶乘函数
long jiecheng(int nNum)
{
if (nNum == 1) {
return 1;
}
return nNum * jiecheng(nNum - 1);
}

int main(void)
{
int nIndex;
long result;
result = 0;

for (nIndex = 1; nIndex <= 20; nIndex++) {
result += jiecheng(nIndex);
}

printf("1!+2!+3!+…+20!= %d", result);
getch();
}

网友(3):

1!=1*1?吗?
我不记得这公式了 告诉我我可以帮你