题目描述
递归方法
#include<iostream>
using namespace std;
int fact(int n){
if(n == 1) return n;
return n *fact(n - 1) ;
}
int main(){
int n;
cin >> n;
cout << fact(n);
return 0;
}
非递归
#include<iostream>
using namespace std;
int fact(int n){
int t = 1;
for(int i = 1;i <= n;i++) t*=i;
return t;
}
int main(){
int n;
cin >> n;
cout << fact(n);
return 0;
}