
代码
#include <iostream>
#include <cstdio>
using namespace std;
long long f(long long n) {
if (n == 0) return 1;
if (n == 1) return 1;
return n * f(n - 1);
}
int main()
{
long long n;
cin >> n;
cout << f(n) << endl;
return 0;
}
注意
1. 0的阶乘就是1,这是人为的规定
2. 20的阶乘超出int范围,要用 long long