使用c语言生成一份用队列计算并打印杨辉三角前八行的内容的代码
时间: 2025-06-27 07:04:26 浏览: 5
下面是一个使用C语言实现的程序,该程序利用队列来计算并打印杨辉三角形的前8行。这里我们选择数组模拟循环队列的方式来存储每一层的数据。
```c
#include <stdio.h>
#define MAX_SIZE 100
void printYangHuiTriangle(int n) {
int queue[MAX_SIZE]; // 队列用于保存当前行的数据。
int front = -1, rear = -1; // 初始化front和rear表示空队列
// 第一行特殊处理直接放入“1”
queue[++rear] = 1;
for (int line = 1; line <= n; ++line) { // 每一层开始之前先确定有多少项要输出
for (int i = 0; i <= line - 1; ++i){
printf("%d ", queue[(front + 1 + i) % MAX_SIZE]);
}
printf("\n");
// 更新下一行的queue值
for (int j = 0; j < line; ++j){
int prevValue = (front == rear)? 0 : queue[front];
int currValue = queue[(++front)%MAX_SIZE];
queue[++rear%MAX_SIZE] = prevValue + currValue;
}
queue[++rear%MAX_SIZE] = 1; // 当前行最后一个数字始终为"1"
}
}
int main() {
int rows = 8;
printYangHuiTriangle(rows);
return 0;
}
```
上面代码中`printYangHuiTriangle()`函数接收一个参数 `n`, 表示我们要打印多少行的杨辉三角矩阵。它首先把第一行单独处理好之后进入主循环里逐步填充每行元素直到达到目标数目为止。
阅读全文
相关推荐


















