函数fact应返回n的阶乘。函数sum应返回 1!+2!+…+n! 的值。
#include<stdio.h>
int fact(int n);//求单个数的的阶乘
int sum(int n);
int main()
{
int n;
scanf("%d", &n);
printf("%d", sum(n));
return 0;
}
int fact(int n)
{
if (n == 1 || n == 0)//0的阶乘也是1
return 1;
else
return n * fact(n - 1);
}
int sum(int n)
{
if (n == 0)
return 0;
if (n == 1)
return fact(n);
else
return fact(n) + sum(n - 1); //fact(n)就是计算当前n的阶乘,sum是计算下一个的数的阶乘往后的和
}
来源:https://blog.csdn.net/weixin_45653525/article/details/102757716