c用数组存储并输出Fibonacci数列的前20项
时间: 2024-12-19 14:26:21 浏览: 101
在C语言中,我们可以创建一个数组来存储斐波那契数列的前20项。斐波那契数列是一个数列,其中每个数字都是前两个数字之和,通常开始于0和1。以下是一个简单的示例代码:
```c
#include <stdio.h>
// 定义数组大小
#define SIZE 20
int main() {
int fib[SIZE]; // 初始化一个大小为20的整型数组
fib[0] = 0; // 第0项
fib[1] = 1; // 第1项
// 输出前两项
printf("Fibonacci sequence:\n");
printf("%d, %d ", fib[0], fib[1]);
// 计算并存储余下18项
for (int i = 2; i < SIZE; i++) {
fib[i] = fib[i - 1] + fib[i - 2];
printf("%d, ", fib[i]);
}
return 0;
}
```
运行这段代码,它将输出斐波那契数列的前20项。请注意,由于数组大小有限,对于较大的数值可能会遇到溢出的问题。在实际应用中,可以考虑使用动态内存分配或迭代器结构来处理更大的序列。
相关问题
输出Fibonacci数列的前10项C语言
以下是两种C语言输出Fibonacci数列前10项的例子:
1. 使用数组存储并计算Fibonacci数列的前10项:
```c
#include <stdio.h>
int main() {
int fib[10] = {0, 1}; // 定义一个数组存放前两个项并初始化
for (int i = 2; i < 10; i++) {
fib[i] = fib[i - 1] + fib[i - 2]; // 计算并存储Fibonacci数列的每一项
}
for (int i = 0; i < 10;++) {
printf("%d ", fib[i]); // 输出Fibonacci数列的每一项
}
return 0;
}
```
2. 使用动态数组存储并计算Fibonacci数列的前10项:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int *fib = (int *)malloc(10 * sizeof(int)); // 动态分配数组空间
[0] = 1;
fib[1] = 1;
for (int i = 2; i < 10; i++) {
fib[i] = fib[i - 1] + fib[i - 2]; // 计算并存储Fibonacci数列的每一项
}
for (int i = 0; i < 10; i++) {
printf("%d ", fib[i]); // 输出Fibonacci数列的每一项
if ((i + 1) % 5 == 0) {
printf("\n"); // 每输出5个数就换行
}
}
free(fib); // 释放动态分配的数组空间
return 0;
}
```
用数组来求fibonacci数列问题,打印前20项数列,每行打印4个数。
可以使用一个数组来存储Fibonacci数列,然后使用循环来生成前20项。在循环中,每次可以将前两项相加来得到下一项,并将其存储到数组中。在循环结束后,可以使用另一个循环来打印数组中的数,每行4个数。
```python
def fibonacci(n):
fib = [0, 1]
for i in range(2, n):
fib.append(fib[i-1] + fib[i-2])
return fib
fib_list = fibonacci(20)
for i in range(0,20,4):
print(fib_list[i:i+4])
```
请注意,上面的代码没有考虑索引越界问题,在使用时请注意。
阅读全文
相关推荐
















