输出斐波拉契数列前50项,每一行10个,整数占位符为4
时间: 2024-09-20 11:06:45 浏览: 47
汇编语言(斐波拉契数列)
在C语言中,你可以使用循环结构和动态内存分配来打印斐波那契数列前50项,每行显示10个数字,前面留有4个空格。首先需要定义一个递归或迭代的方式来生成斐波那契数列,然后按照指定格式输出。
这里使用数组存储并遍历,因为递推生成可能会导致性能问题。以下是实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define SIZE 50
// 定义斐波那契数列计算
int fibonacci(int n) {
if (n <= 1)
return n;
else
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int fib[SIZE], index = 0;
for (int i = 0; i < SIZE; ++i) {
fib[i] = fibonacci(i);
if ((index + 1) % 10 == 0) { // 每10个数换一行
printf("%4d", fib[i]); // 输出第四个空格后开始
index = 0; // 清零计数
printf("\n");
} else {
printf("%4d", fib[i]); // 输出带前导空格的数字
++index;
}
}
if (index != 0) printf("\n"); // 打印最后一行剩余的数字
return 0;
}
```
请注意,由于递归效率低,对于较大的索引,这个实现可能不如迭代版本快。
阅读全文