OpenJ_Bailian - 2730 求20以內n的階乘

求20以內n的階乘。

Input

只有一行輸入,整數n(n<=20)。

Output

只有一行輸出,數值n!。

Sample Input

16

Sample Output

20922789888000

思路:

水題,需要注意的只有不能使用int類型,要使用long long 類型;long long 的表示範圍是 -2^63~+(2^63-1);int的表示範圍是-2^31~+(2^31-1),若超出這個範圍就只能使用大整數來解決了:大整數

詳細變量類型取值範圍參考:C語言變量類型及其表示範圍

 

程序代碼:

#include<cstdio>
typedef long long ll;
ll fbci(int n){
	if(n==1){
		return 1;
	}else{
		return n*fbci(n-1);
	}
} 
int main(){
	int n; 
	scanf("%d",&n);
	printf("%lld\n",fbci(n));
	return 0; 
}

運行結果:

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章