c语言中递归函数求第n个fibonacci斐波那契数
时间: 2024-05-11 15:14:33 浏览: 159
```
#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("请输入要求的斐波那契数列的项数:");
scanf("%d", &n);
printf("第%d个斐波那契数是:%d\n", n, fibonacci(n));
return 0;
}
```
相关问题
C语言采用递归函数求 Fibonacci(斐波那契)数列前 30 项并打印
好的,这个问题是关于编程的,我可以回答。以下是使用递归函数来求解斐波那契数列前30项,并打印结果的C语言程序:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n == 0 || n == 1) {
return n;
}
else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
int main() {
int i;
for (i = 0; i < 30; i++) {
printf("%d ", fibonacci(i));
}
printf("\n");
return 0;
}
```
我们定义了一个递归函数`fibonacci`,用来计算斐波那契数列的第`n`项。在`main`函数中,我们循环计算并打印前30项的斐波那契数列。运行程序,得到如下输出:
```
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229
```
c语言用递归函数求菲波那契数列的第n项
在C语言中,你可以使用递归函数来求解斐波那契数列的第n项。斐波那契数列是一个每个数字都是前两个数字之和的序列,通常开始两项是0和1。下面是递归函数的一个简单实现:
```c
#include <stdio.h>
// 递归函数计算斐波那契数列的第n项
int fibonacci(int n) {
// 基础情况:若n小于等于1,则返回n本身
if (n <= 1)
return n;
// 递归情况:如果n大于1,返回前两项的和
else
return fibonacci(n - 2);
}
int main() {
int n; // 用户输入的项数
printf("请输入要计算的斐波那契数列的项数:");
scanf("%d", &n);
// 检查输入是否合法并避免无限递归
if (n < 0)
printf("错误:斐波那契数列的项数不能为负。\n");
else
printf("斐波那契数列的第%d项是:%d\n", n, fibonacci(n));
return 0;
}
```
阅读全文