C++输出前n行的杨辉三角形
时间: 2025-02-02 20:07:16 浏览: 33
### 使用 C++ 打印前 n 行的杨辉三角形
为了实现这一功能,可以采用二维数组来存储每一层的数据,并通过迭代计算每行中的数值。以下是具体的代码示例:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n; // 输入要显示的最大层数
int a[n][n]; // 创建一个二维数组用于保存各层数据
for(int i = 0; i < n; ++i){
for(int j = 0; j <= i; ++j){
if(j == 0 || j == i){
a[i][j] = 1; // 如果是当前行的第一个或最后一个元素,则设为1
}
else{
a[i][j] = a[i-1][j-1] + a[i-1][j]; // 否则按照公式计算中间位置的值
}
cout << setw(4) << a[i][j]; // 输出当前项,设置宽度使输出更整齐
if(j != i) cout << " "; // 非最后一项后面加空格分隔
}
cout << endl; // 结束一行后换行
}
return 0;
}
```
此程序首先定义了一个大小为 `n×n` 的整型矩阵 `a[][]` 来储存杨辉三角的各项值[^2]。接着利用双重循环遍历整个矩阵,在内层循环中根据条件判断给定的位置应填入什么值——即当位于某一层的第一位或是最后一位时赋值为1;其他情况下则是上方两个相邻数字之和。
此外,为了使得输出更加美观整洁,这里还引入了 `<iomanip>` 库中的 `setw()` 函数来控制每个数字占据的空间长度,从而让整体布局看起来更为规整[^3]。
阅读全文
相关推荐


















