用c语言编程解决一下问题斐波那契(Fibonacci)数列是这样一个数列:1、1、2、3、5、8、13、21、……, 这个数列前两项是1,从第三项开始,每一项都等于前两项之和。 编程输出Fibonacci数列的前20项。5个数一行。
时间: 2023-06-12 12:04:12 浏览: 105
以下是用 C 语言编程输出 Fibonacci 数列的前 20 项,每行输出 5 个数:
```c
#include <stdio.h>
int main() {
int a = 1, b = 1, c, i;
for (i = 1; i <= 20; i++) {
printf("%d ", a);
if (i % 5 == 0) {
printf("\n");
}
c = a + b;
a = b;
b = c;
}
return 0;
}
```
输出结果:
```
1 1 2 3 5
8 13 21 34 55
89 144 233 377 610
987 1597 2584 4181 6765
```
相关问题
c语言编程 利用循环结构求Fibonacci数列:1,1,2,3,5,8,…的前20个数。
好的,以下是 C 语言代码实现:
```c
#include <stdio.h>
int main() {
int i, n, t1 = 1, t2 = 1, nextTerm;
n = 20;
printf("Fibonacci数列前 %d 项为:\n", n);
for (i = 1; i <= n; i++) {
printf("%d, ", t1);
nextTerm = t1 + t2;
t1 = t2;
t2 = nextTerm;
}
return 0;
}
```
这个程序中,我们使用了三个变量。 t1 和 t2 是前两项,nextTerm 是下一项。在循环中,我们首先打印出第一项。然后将 t1 赋值给 t2,将 t2 赋值给 nextTerm,计算出下一项的值。然后将 t2 赋值给 t1,将 nextTerm 赋值给 t2,这样就可以计算出后面的项。循环中计算的每一项都是前两项的和。
用c语言的数组来处理求Fibonacci数列问题:计算前20个Fibonacci数并按要求输出。 1 1 2 3 5 8
好的,这个问题可以使用C语言的数组来处理。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int fib[20]; // 定义一个长度为20的数组来存储Fibonacci数列
fib[0] = 1; // 第一个数是1
fib[1] = 1; // 第二个数也是1
// 循环计算Fibonacci数列
for (int i = 2; i < 20; i++) {
fib[i] = fib[i-1] + fib[i-2];
}
// 按要求输出前20个Fibonacci数
for (int i = 0; i < 20; i++) {
printf("%d ", fib[i]);
// 每行输出5个数
if ((i+1) % 5 == 0) {
printf("\n");
}
}
return 0;
}
```
输出结果为:
```
1 1 2 3 5
8 13 21 34 55
89 144 233 377 610
987 1597 2584 4181 6765
```
以上代码的思路是:首先定义一个长度为20的数组来存储Fibonacci数列,然后循环计算数组中的每个数,最后按要求输出数组中的元素。