斐波那契数列的递归实现 C语言
时间: 2023-12-04 08:40:45 浏览: 84
以下是C语言中斐波那契数列的递归实现方法:
```c
#include <stdio.h>
int Fibon(int n) {
if (n < 0) {
printf("n is error!\n");
return -1;
} else if (n < 2) {
return n == 0 ? 0 : 1;
} else if (n >= 2) {
return Fibon(n-1) + Fibon(n-2);
}
}
int main() {
int n;
printf("输入查询的第几个数:");
scanf("%d", &n);
printf("斐波那契数列第%d项为:%d\n", n, Fibon(n));
return 0;
}
```
在这个实现中,我们定义了一个Fibon函数,它接受一个整数n作为参数,并返回斐波那契数列中第n个数的值。如果n小于0,函数将返回-1并打印错误消息。如果n小于2,函数将返回n本身。否则,函数将递归调用自身来计算前两个数的和。
在主函数中,我们首先要求用户输入要查询的斐波那契数列的项数n,然后调用Fibon函数来计算第n个数的值,并将结果打印出来。
相关问题
斐波那契数列递归c语言
斐波那契数列是指每个数字都是前两个数字之和的数列。在C语言中,可以使用递归的方法来实现斐波那契数列。递归函数中,当输入参数为1或2时,直接返回1;否则,返回前两个数字的和。
以下是一个使用递归实现斐波那契数列的C语言代码示例:
```c
#include<stdio.h>
int fibonacci(int n) {
if(n == 1 || n == 2) {
return 1;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
int main() {
int n;
printf("请输入要计算的斐波那契数列项数:\n");
scanf("%d", &n);
printf("斐波那契数列的第%d项为:%d\n", n, fibonacci(n));
return 0;
}
```
代码中的`fibonacci`函数实现了递归的计算逻辑,`main`函数通过用户输入的项数调用`fibonacci`函数并输出结果。
斐波那契数列递归 c语言
以下是C语言中使用递归方法求解斐波那契数列的第n项的代码:
```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 = 10; // 求斐波那契数列的第10项
int result = fibonacci(n);
printf("斐波那契数列的第%d项为:%d", n, result);
return 0;
}
```
运行结果为:
```
斐波那契数列的第10项为:55
```
阅读全文