用递归编程实现斐波那契数列问题,输出数列前10项
时间: 2023-04-02 12:04:51 浏览: 142
斐波那契数列是一个经典的递归问题,可以用递归函数来实现。以下是输出数列前10项的代码:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n == || n == 1) {
return n;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
int main() {
int i;
for (i = ; i < 10; i++) {
printf("%d ", fibonacci(i));
}
printf("\n");
return ;
}
```
输出结果为: 1 1 2 3 5 8 13 21 34
相关问题
用递归编程实现 斐波那契数列
好的,下面是递归实现斐波那契数列的代码:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
# 测试代码
for i in range(10):
print(fibonacci(i))
```
运行结果如下:
```
0
1
1
2
3
5
8
13
21
34
```
解释一下代码:
我们定义了一个名为 `fibonacci` 的函数,它接受一个整数 `n` 作为参数,返回斐波那契数列的第 `n` 项。当 `n` 小于等于 1 时,返回 `n`。否则,递归调用 `fibonacci(n-1)` 和 `fibonacci(n-2)`,然后将它们的和作为结果返回。
最后,我们使用一个循环来测试这个函数,输出斐波那契数列的前 10 项。
请用递归编程实现 斐波那契数列
当然可以!以下是用递归方式编写的斐波那契数列代码:
```python
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
sequence = fibonacci(n-1)
sequence.append(sequence[-1 + sequence[-2])
return sequence
n = 10 # 想要获得前n个斐波那契数列数值
fib_sequence = fibonacci(n)
print(fib_sequence)
```
这段代码中,`fibonacci` 函数接收一个整数 `n` 作为参数,返回一个包含前 `n` 个斐波那契数值的列表。如果 `n` 小于等于 0,则返回一个空列表。如果 `n` 等于 1,返回 `[0]`。如果 `n` 等于 2,返回 `[0, 1]`。否则,函数会先通过递归调用 `fibonacci(n-1)` 获取前 `n-1` 个斐波那契数值,
阅读全文