遞歸算法

/***Date : 2014.12.10***/
//遞歸算法:是在程序中不斷反覆“調用自身”來達到求解問題的方法。 要求帶求解問題能夠分解爲相同問題的一個子問題,多次遞歸調用,完成求解。
//遞歸調用時主調函數又是被調函數;執行遞歸的函數將反覆調用其自身,每調用一次就進入新的一層。
//直接遞歸:在函數中調用函數本身。
//間接遞歸:間接地調用一個函數,用得不多。

//遞歸求階乘問題

#include <stdio.h>
#include <stdlib.h>

long Factorial(int n);  //函數聲明

int main()
{
int m;
printf("請輸入需要求階乘的整數:");
scanf_s("%d",&m);
printf(" %d 的階乘結果爲 %d .\n",m,Factorial(m));


system("pause");
return 0;
}

long Factorial(int n)  //求階乘函數
{
if (n == 1)
{
return 1;

else
{
return Factorial(n-1) * n;  //遞歸
}

}


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