打印杨辉三角c++ 等腰三角形
时间: 2025-04-07 19:12:22 浏览: 44
### 打印等腰三角形形式的杨辉三角
为了实现打印呈等腰三角形形式的杨辉三角,可以基于已有的直角三角形版本进行改进。主要思路是在每一行前面添加适当数量的空格,使得整体呈现出居中的效果。
以下是完整的 C++ 实现代码:
```cpp
#include <iostream>
using namespace std;
void yangHuiTriangle(int n) {
int a[10][10] = {0}; // 初始化二维数组
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= i; ++j) {
if (j == 1 || j == i) {
a[i][j] = 1; // 首尾位置设为1
} else {
a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; // 上一行两数相加
}
}
}
// 输出等腰三角形形式
for (int i = 1; i <= n; ++i) {
// 添加左侧空白字符
for (int k = 1; k <= n - i; ++k) {
cout << " "; // 每次输出六个空格以调整对齐方式
}
for (int j = 1; j <= i; ++j) {
cout << setw(6) << a[i][j]; // 使用setw控制列宽
}
cout << endl;
}
}
int main() {
int n;
cout << "请输入要显示的杨辉三角层数:";
cin >> n;
yangHuiTriangle(n);
return 0;
}
```
#### 关键点说明
1. **数组初始化与计算逻辑**
数组 `a` 的大小设置为 `[10][10]` 并全部初始化为零。通过双重循环填充数组,遵循杨辉三角的性质[^2]。
2. **左侧行缩进处理**
在输出每一行之前,先根据当前行号动态增加一定量的空格,从而形成等腰三角形的效果。具体来说,对于第 `i` 行,在其前添加 `(n-i)` 组空格字符串 `" "` 来完成对齐操作。
3. **格式化输出**
利用标准库函数 `setw()` 控制数值宽度,保持各层排列整齐美观。
以上方法能够有效生成具有视觉美感的等腰三角形形态的杨辉三角结构。
---
阅读全文
相关推荐
















