c语言用递归函数实现输出1,1,2,3,5,8,13,21.......的前20项
时间: 2024-04-14 17:29:12 浏览: 87
C语言实现递归算法
您可以使用递归函数来实现输出斐波那契数列的前20项。下面是一个使用C语言编写的示例代码:
```c
#include <stdio.h>
// 自定义函数,计算斐波那契数列的第n项
int fibonacci(int n) {
// 基本情况,前两项为1
if (n == 1 || n == 2) {
return 1;
}
// 递归调用,计算前两项的和作为第n项
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int n = 20;
printf("斐波那契数列的前%d项为:\n", n);
for (int i = 1; i <= n; i++) {
printf("%d ", fibonacci(i));
}
return 0;
}
```
在这个示例中,我们定义了一个名为`fibonacci`的自定义函数,它以整数`n`作为参数,并返回斐波那契数列的第`n`项。在函数内部,我们使用了递归来计算斐波那契数列。在`main`函数中,我们设定了`n`的值为20,并通过循环调用自定义函数来输出斐波那契数列的前20项。
输出结果将会是:1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765。
阅读全文