用C语言编写一个函数:请用递归函数计算斐波那契数列第n项的值
时间: 2023-06-02 22:04:27 浏览: 204
好的,我可以回答这个问题。以下是用C语言编写的递归函数,用于计算斐波那契数列第n项的值:
```
int fib(int n) {
if (n <= 1) {
return n;
}
return fib(n-1) + fib(n-2);
}
```
您可以通过传递所需的n值来调用此函数,例如:`fib(10)`将返回第10项斐波那契数列的值。
相关问题
用C语言编写一个递归函数,输出斐波那契数列前n项和
以下是用C语言编写的递归函数,输出斐波那契数列前n项和的代码:
```c
#include<stdio.h>
int fib(int n) {
if(n == 1 || n == 2) {
return 1;
} else {
return fib(n-1) + fib(n-2);
}
}
int sumFib(int n) {
int sum = 0;
for(int i=1; i<=n; i++) {
sum += fib(i);
}
return sum;
}
int main() {
int n;
printf("请输入要输出的斐波那契数列的项数:");
scanf("%d", &n);
printf("前%d项斐波那契数列的和为:%d\n", n, sumFib(n));
return 0;
}
```
在上述代码中,`fib(n)` 函数用于计算斐波那契数列的第 n 项,`sumFib(n)` 函数用于计算前 n 项斐波那契数列的和。在 `main()` 函数中,首先输入要输出的项数 n,然后调用 `sumFib(n)` 函数计算前 n 项斐波那契数列的和,并输出结果。
C语言递归函数计算斐波那契数列的第n项
好的,我来回答你的问题。下面是一个用递归函数计算斐波那契数列第n项的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 n = 10; // 计算第10项
int result = fibonacci(n);
printf("第%d项的值是%d\n", n, result);
return 0;
}
```
这个程序中的 `fibonacci` 函数使用递归的方式计算斐波那契数列的第n项。如果n等于0或1,函数直接返回n;否则,它返回斐波那契数列第n-1项和第n-2项的和,这是递归调用的结果。在 `main` 函数中,我们调用 `fibonacci` 函数计算第10项,并将结果打印出来。
阅读全文