用递归函数输出斐波那契数列
时间: 2023-08-04 20:21:43 浏览: 112
好的,以下是用递归函数输出斐波那契数列的 Python 代码示例:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
# 输出前10个斐波那契数列
for i in range(10):
print(fibonacci(i))
```
这段代码定义了一个名为 `fibonacci` 的递归函数,用于计算斐波那契数列的第 `n` 项。当 `n` 小于等于1时,直接返回 `n`。否则,递归调用 `fibonacci` 函数计算第 `n-1` 和 `n-2` 项,并将它们相加返回。
在主程序中,我们通过循环调用 `fibonacci` 函数输出前10个斐波那契数列。
相关问题
递归函数计算斐波那契数列和
斐波那契数列是一个经典的递归问题,可以使用递归函数来计算。以下是一个递归函数计算斐波那契数列和的例子:
```python
def fibonacci(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
def fibonacci_sum(n):
result = 0
for i in range(1, n+1):
result += fibonacci(i)
return result
# 示例调用
n = 10
print(f"The sum of the Fibonacci sequence up to {n} is: {fibonacci_sum(n)}")
```
这段代码中,我们定义了两个函数,`fibonacci()` 用于计算斐波那契数列的第 `n` 个数,`fibonacci_sum()` 用于计算斐波那契数列的前 `n` 个数的和。在 `fibonacci_sum()` 函数中,我们使用循环调用 `fibonacci()` 函数来计算每个斐波那契数,并将其累加到结果中。
用c语言编写一个递归函数求Fibonacci数列的第n项,在主函数中调用函数输出数列的前20项。
以下是用C语言实现Fibonacci数列的递归函数,以及在主函数中调用该函数输出数列的前20项的代码:
```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 i, n = 20;
printf("Fibonacci sequence:\n");
for (i = 1; i <= n; i++) {
printf("%d ", fibonacci(i));
}
printf("\n");
return 0;
}
```
在该代码中,`fibonacci`函数接收一个整数参数`n`,并返回Fibonacci数列的第`n`项。当`n`等于1或2时,函数返回1;否则,函数递归地调用自身计算第`n-1`项和第`n-2`项的和。
在主函数中,我们使用一个循环来输出数列的前20项。对于每个`i`,我们调用`fibonacci`函数来计算第`i`项,并将结果输出到屏幕上。最后,我们在输出结束后打印一个换行符,以便在输出的数列之后添加一个空行。
阅读全文