编辑代码

    #include <stdio.h>

    //递归
    int fibonacciRecursive(int n) {
        if (n <= 1)
            return n;
        else
            return fibonacciRecursive(n - 1) + fibonacciRecursive(n - 2);
    }
    //递推
    int fibonacciIterative(int n) {
        if (n <= 1)
            return n;

        int a = 0;
        int b = 1;
        int result = 0;

        for (int i = 2; i <= n; i++) {
            result = a + b;
            a = b;
            b = result;
        }

        return result;
    }

    int main() {
        int n = 5; 
        int result1 = fibonacciRecursive(n);
        printf("第%d个斐波那契数为%d。\n", n, result1);
        int result2 = fibonacciIterative(n);
        printf("第%d个斐波那契数为%d。\n", n, result2);
        n = 10; 
        result1 = fibonacciRecursive(n);
        printf("第%d个斐波那契数为%d。\n", n, result1);
        result2 = fibonacciIterative(n);
        printf("第%d个斐波那契数为%d。\n", n, result2);
        n = 15; 
        result1 = fibonacciRecursive(n);
        printf("第%d个斐波那契数为%d。\n", n, result1);
        result2 = fibonacciIterative(n);
        printf("第%d个斐波那契数为%d。\n", n, result2);
        return 0;
    }