c语言用函数实现斐波那契数列
时间: 2024-11-28 13:20:41 浏览: 56
在C语言中,可以使用递归或者循环的方式实现斐波那契数列的计算。这里给出两种常见的方法:
**1. 递归函数实现:**
```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, i;
printf("请输入要计算的斐波那契数列项数:");
scanf("%d", &n);
for (i = 0; i < n; i++) {
printf("Fibonacci(%d) = %d\n", i, fibonacci(i));
}
return 0;
}
```
**2. 循环函数实现:**
```c
#include <stdio.h>
// 使用循环计算斐波那契数列
void fibonacci_iterative(int n) {
int a = 0, b = 1, next;
if (n <= 0)
return;
printf("Fibonacci(0) = 0\n");
printf("Fibonacci(1) = 1\n");
for (int i = 2; i < n; i++) {
next = a + b;
printf("Fibonacci(%d) = %d\n", i, next);
a = b;
b = next;
}
}
int main() {
int n;
printf("请输入要计算的斐波那契数列项数:");
scanf("%d", &n);
fibonacci_iterative(n);
return 0;
}
```
以上两种方法都可以生成指定位置的斐波那契数,选择哪种取决于性能需求和是否接受递归带来的额外开销。
阅读全文