用C语言编程输出斐波那契数列,至少用二种方法:数组法和迭代法
时间: 2024-03-10 08:50:40 浏览: 89
使用数组法输出斐波那契数列:
```c
#include <stdio.h>
void fibonacci(int n) {
int fib[n];
fib[0] = 0;
fib[1] = 1;
for (int i = 2; i < n; i++) {
fib[i] = fib[i-1] + fib[i-2];
}
for (int i = 0; i < n; i++) {
printf("%d ", fib[i]);
}
printf("\n");
}
int main() {
fibonacci(10);
return 0;
}
```
在这个实现中,我们先定义了一个数组 `fib`,大小为 `n`,用来存储斐波那契数列。然后我们初始化 `fib[0]` 和 `fib[1]` 分别为 0 和 1,接着使用一个循环从 `i=2` 开始计算斐波那契数列中的每个数,直到计算到第 `n-1` 个数为止。最后我们再使用循环输出整个斐波那契数列。
使用迭代法输出斐波那契数列:
```c
#include <stdio.h>
void fibonacci(int n) {
int a = 0, b = 1;
printf("%d %d ", a, b);
for (int i = 2; i < n; i++) {
int c = a + b;
printf("%d ", c);
a = b;
b = c;
}
printf("\n");
}
int main() {
fibonacci(10);
return 0;
}
```
在这个实现中,我们使用两个变量 `a` 和 `b` 分别表示斐波那契数列中的前两个数,即 0 和 1。我们先输出这两个数,然后使用一个循环从 `i=2` 开始计算斐波那契数列中的每个数,直到计算到第 `n-1` 个数为止。在每次循环中,我们计算出当前数 `c`,然后输出它,再将 `a` 和 `b` 的值分别更新为 `b` 和 `c`,以便下一次循环继续计算。最后我们输出一个换行符,以便美观。
阅读全文