题目描述
数学函数也可以递归定义。例如,阶乘函数 f ( n ) = n ! f(n) = n! f(n)=n!可以定义为:
f ( 1 ) = 1 f(1) = 1 f(1)=1
f ( n ) = f ( n − 1 ) ∗ n ( n ≥ 1 ) f(n) = f(n-1)*n ( n \ge 1) f(n)=f(n−1)∗n(n≥1)
如, 5 ! = 5 × 4 × 3 × 2 × 1 5!=5 \times 4 \times 3 \times 2 \times 1 5!=5×4×3×2×1
输入格式
输入一个整数 n n n
输出格式
输出 f ( n ) f(n) f(n)的值
样例
输入数据 1
5
输出数据 1
120
提示
数据范围
对于全部的数据, n ≤ 10 n \le 10 n≤10
递归函数特别简单,学过都知道
这道题考写函数,而且是递归函数
函数:
int dfs(int n){
if(n == 1) return 1;
return n*dfs(n-1);
}
是不是很简单?
调用没那么难了,代码:
int main(){
int s,a;
cin>>a;
s = dfs(a);
cout<<s;
}
code:
#include<bits/stdc++.h>
using namespace std;
int dfs(int n){
if(n == 1) return 1;
return n*dfs(n-1);
}
int main(){
int s,a;
cin>>a;
s = dfs(a);
cout<<s;
}