#include <iostream>
using namespace std;
int fact(int n) {
int m = 1;
for(int i = 1;i<=n;i++){
m*=i;
}
cout << m << endl;
}
int main(void) {
int n;
cin >> n;
fact(n);
}
递归法:
#include <iostream>
using namespace std;
int fact(int n) {
if(n==1) return 1;
else {
return n*fact(n-1);
}
}
int main(void) {
int n;
cin >> n;
int m = fact(n);
cout << m << endl;
}