C语言非递归算法求解斐波那契数列并验证
以下是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 著作权归作者所有。请勿转载和采集!