如何用C++实现杨辉三角的打印?
时间: 2024-11-22 10:37:28 浏览: 110
在C++中,我们可以使用动态数组或者二维数组来实现杨辉三角的打印。杨辉三角是一个由数字构成的三角形,每个数字等于它上方两个相邻数字之和。以下是使用迭代方法的一个简单示例:
```cpp
#include <iostream>
using namespace std;
// 定义一个函数生成并打印杨辉三角
void printPascalTriangle(int rows) {
int** triangle = new int*[rows]; // 创建动态数组
for (int i = 0; i < rows; ++i)
triangle[i] = new int[i + 1]; // 每行分配空间
// 初始化第一行和第二行
if (rows > 0) {
triangle[0][0] = 1;
if (rows > 1)
triangle[1][0] = triangle[1][1] = 1;
}
// 打印三角形
for (int i = 0; i < rows; ++i) {
// 输出前导空格,保持对齐
for (int j = 0; j < i; ++j)
cout << " ";
// 输出当前行的元素
for (int j = 0; j <= i; ++j)
cout << triangle[i][j] << " ";
cout << endl;
}
// 释放内存
for (int i = 0; i < rows; ++i)
delete[] triangle[i];
delete[] triangle;
}
int main() {
int rows = 5; // 需要打印的行数
printPascalTriangle(rows);
return 0;
}
```
运行此程序,它会输出给定行数的杨辉三角。记得在使用完毕后管理动态内存。
阅读全文
相关推荐














