用C语言写一个最简单的请使用递归的方式求斐波那契数列的第 n项,下标从1开始。 斐波那契数列:1,1,2,3,5…1,1,2,3,5…,这个数列从第 33 项开始,每一项都等于前两项之和
时间: 2023-11-10 22:27:44 浏览: 68
C语言用递归法计算Fibonacci(斐波拉契)数列的第n项。
好的,以下是用递归方式求解斐波那契数列第n项的C语言代码:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n == 1 || n == 2) { // base case
return 1;
} else { // recursive case
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
int main() {
int n;
printf("请输入要求的斐波那契数列的项数:");
scanf("%d", &n);
printf("第%d项的值为%d\n", n, fibonacci(n));
return 0;
}
```
这个代码中,`fibonacci` 函数是递归函数,当 `n` 等于1或2时,函数返回1,这是递归的基本情况;当 `n` 大于2时,函数返回 `fibonacci(n - 1) + fibonacci(n - 2)`,这是递归情况。
在 `main` 函数中,我们首先让用户输入要求的斐波那契数列的项数 `n`,然后调用 `fibonacci` 函数求出第 `n` 项的值,并输出结果。
阅读全文