C语言递归算法实现Fibonacci数列求解
以下是使用递归算法对Fibonacci数列的求解的C语言代码:
#include <stdio.h>
int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
int main() {
int n;
printf('请输入要计算的Fibonacci数列的项数:');
scanf('%d', &n);
printf('Fibonacci数列的前 %d 项为:\n', n);
for (int i = 0; i < n; i++) {
printf('%d ', fibonacci(i));
}
return 0;
}
在该代码中,fibonacci() 函数使用递归的方式计算Fibonacci数列的第n项。当n小于等于1时,直接返回n。否则,递归地调用fibonacci(n-1)和fibonacci(n-2),并返回它们的和。
在 main() 函数中,用户输入要计算的Fibonacci数列的项数,然后使用循环调用 fibonacci() 函数,输出数列的前n项。
请注意,对于较大的n值,递归算法的效率较低,会导致计算时间很长。可以考虑使用迭代或其他更高效的算法来计算Fibonacci数列的较大项数。
原文地址: https://www.cveoy.top/t/topic/pcrj 著作权归作者所有。请勿转载和采集!