题目地址:https://www.patest.cn/contests/gplt/L1-013
题目:
对于给定的正整数N,需要你计算 S = 1! + 2! + 3! + ... + N!。
输入格式:
输入在一行中给出一个不超过10的正整数N。
输出格式:
在一行中输出S的值。
输入样例:3输出样例:
9
思路:用两个递归函数就ok
代码:
#include<iostream>
using namespace std;
long long int chengji(int a)
{
long long int cj;
if(a==1)cj=1;
else cj=a*chengji(a-1);
return cj;
}
long long int he(int a)
{
long long int sum;
if(a==1)sum=1;
else sum=chengji(a)+he(a-1);
return sum;
}
int main()
{
int n;
cin>>n;
cout<<he(n);
return 0;
}