C语言S=1+1!+2!+3!+...+N! 要求N从命令行输入,且1<=N<=10利用递归实现。F(N)=1,N=1; F(N)=N*F(N-1), N>1?
#include <stdio.h>
unsigned long f(int n)
{
if(n<2)
return 1UL;
return n*f(n-1);
}
int main()
{
int n,i;
unsigned long sum;
scanf("%d",&n);
for(i=1,sum=0;i<=n;++i)
sum+=f(i);
printf("%lu\n",sum);
return 0;
}
收起
KlarkKenter
2021-04-08
·
TA获得超过1681个赞
知道小有建树答主
回答量:1540
采纳率:0%
帮助的人:355万
关注
为你推荐: