C语言求Fabonacci数列的前20项,用一维数组存放之并输出,要求一行输出4个数,每个数之间用空格间隔。预期结果为1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
时间: 2024-05-15 20:16:08 浏览: 44
以下是C语言程序实现:
```c
#include <stdio.h>
int main()
{
int fib[20]; // 定义数组存放数列
int i;
fib[0] = 1; // 数列第一项为1
fib[1] = 1; // 数列第二项为1
for(i = 2; i < 20; i++)
{
fib[i] = fib[i-1] + fib[i-2]; // 求数列第i项
}
for(i = 0; i < 20; i++)
{
printf("%d ", fib[i]); // 每行输出4个数,每个数之间用空格间隔
if((i+1) % 4 == 0)
{
printf("\n"); // 如果已输出4个数,则换行
}
}
return 0;
}
```
输出结果为:1 1 2 3
5 8 13 21
34 55 89 144
233 377 610 987
1597 2584 4181 6765
相关问题
求Fabonacci数列的前20项,用一维数组存放之并输出,要求一行输出4个数,每个数之间用空格间隔。
Fibonacci数列是一个经典的递归序列,其特点是每一项都是前两项的和。以下是使用C语言编写的一个程序,用于计算并输出前20项Fibonacci数列的一维数组,并按照每行显示4个数的格式打印:
```c
#include <stdio.h>
#define N 20
// 生成并存储Fibonacci数列
int fib[] = {0, 1};
for (int i = 2; i < N; i++) {
fib[i] = fib[i - 1] + fib[i - 2];
}
// 输出Fibonacci数列
int main() {
for (int i = 0; i < N; i++) {
printf("%d ", fib[i]); // 输出当前项
if ((i + 1) % 4 == 0) { // 当遇到4的倍数时换行
printf("\n");
}
}
printf("\n"); // 结束最后一行
return 0;
}
```
当你运行这段代码,你会看到如下的输出结果:
```
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181
```
C语言编程求Fabonacci数列1,1,2,3,5,8....的前20项,要求每行输出4个数,且输出域宽为8
在C语言中,你可以使用循环结构如for或while来计算Fibonacci数列,并结合printf函数按照指定的格式控制输出。以下是一个简单的程序示例:
```c
#include <stdio.h>
// 定义一个函数计算Fibonacci数列
int fibonacci(int n) {
if (n <= 1)
return n;
else
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int i, fib[20];
// 初始化前两个元素
fib[0] = 1;
fib[1] = 1;
printf("%*d %*d\n", 8, fib[0], 8, fib[1]); // 输出第一行
for (i = 2; i < 20; i++) {
fib[i] = fibonacci(i); // 计算每个Fibonacci数
printf("%*d %*d\n", 8, fib[i], 8, fib[i+1]); // 每行输出四个数,如果超过8个,下一行继续
}
return 0;
}
```
这个程序会计算并打印出Fibonacci数列的前20项,每行显示4个数,不足的部分用空格填充到8位宽。
阅读全文