以下是C语言中非递归算法对斐波那契数列的求解并验证10、20、30、40和50的代码:

#include <stdio.h>

int fibonacci(int n) {
    int fib[n+1];
    fib[0] = 0;
    fib[1] = 1;
  
    for (int i = 2; i <= n; i++) {
        fib[i] = fib[i-1] + fib[i-2];
    }
  
    return fib[n];
}

int main() {
    int n[] = {10, 20, 30, 40, 50};
  
    for (int i = 0; i < 5; i++) {
        int result = fibonacci(n[i]);
        printf('Fibonacci(%d) = %d\n', n[i], result);
    }
  
    return 0;
}

输出结果:

Fibonacci(10) = 55
Fibonacci(20) = 6765
Fibonacci(30) = 832040
Fibonacci(40) = 102334155
Fibonacci(50) = 12586269025

这个程序使用了一个数组来存储之前计算过的斐波那契数,以避免重复计算,从而提高效率。在主函数中,我们遍历给定的n数组,分别计算并输出对应的斐波那契数。


原文地址: https://www.cveoy.top/t/topic/pcsI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录