遞歸實現階乘運算

遞歸是比較高端的算法,原理簡單,但使用不易,先記下最基礎的原理,以後遇到複雜的問題可以參考。

代碼:

#include <stdio.h>
//遞歸實現階乘 
long long int factorial(int n,long long int r)
{
	long long int x=r;
	if(n>1)
	{
		x*=factorial(n-1,n);
	}else
	{
		x*=n;
	}
	return x;
}
int main()
{
	long long int r=1;//result
	int n;//number
	printf("Input n:\n");
	scanf("%d",&n);
	r=factorial(n,r);
	printf("%d!=%lld",n,r);
	return 0;
}

 


 

 

 

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