斐波那契數列的遞歸及非遞歸

#include<stdio.h>
#define N 10
//遞歸
int RecursiveFib(int n)
{
    if (n <= 1)
        return n;
    return RecursiveFib(n - 1) + RecursiveFib(n - 2);
}
//非遞歸
int CycleFib(int n)
{
    int ret = 0;
    int i = 0, n1 = 0, n2 = 1;
    if (n <= 2)
        return 1;
    if (n > 2)
    {
        for (i = 2; i <= n; i++)
        {
            ret = n1 + n2;
            n1 = n2;
            n2 = ret;
        }
        return ret;
    }
}
int main()
{
    printf("RecursiveFib is:%d\n", RecursiveFib(N));
    printf("CycleFib is:%d\n", CycleFib(N));
    system("pause");
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章