用递归写一个斐波那契数列,c语言。
时间: 2023-05-27 09:02:24 浏览: 146
```
#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, i;
printf("输入要输出的斐波那契数列的长度:");
scanf("%d", &n);
printf("斐波那契数列:\n");
for(i=0; i<n; i++)
printf("%d ", fibonacci(i));
return 0;
}
```
运行结果:
输入要输出的斐波那契数列的长度:10
斐波那契数列:
0 1 1 2 3 5 8 13 21 34
相关问题
递归法求斐波那契数列c语言
好的,以下是递归法求斐波那契数列的 C 语言代码:
```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;
printf("斐波那契数列的前 %d 项为:\n", n);
for (int i = 0; i < n; i++) {
printf("%d ", fibonacci(i));
}
return 0;
}
```
这段代码中,`fibonacci` 函数使用递归的方式计算斐波那契数列的第 `n` 项。当 `n` 小于等于 1 时,直接返回 `n`;否则,返回 `fibonacci(n-1) + fibonacci(n-2)`。
在 `main` 函数中,我们调用 `fibonacci` 函数计算斐波那契数列的前 `n` 项,并输出结果。
利用递归数组求斐波那契数列c语言代码
我不是一个程序,但是我可以为你提供一些参考:int fibonacci(int n)
{
/* Declare an array to store Fibonacci numbers. */
int f[n+2]; // 1 extra to handle case, n = 0
int i;
/* 0th and 1st number of the series are 0 and 1*/
f[0] = 0;
f[1] = 1;
for (i = 2; i <= n; i++)
{
/* Add the previous 2 numbers in the series
and store it */
f[i] = f[i-1] + f[i-2];
}
return f[n];
}
阅读全文