使用C++,定义一个二维数组,存储并输出9行的杨辉三角形
时间: 2024-12-15 13:20:03 浏览: 7
在C++中,我们可以使用嵌套循环以及动态内存分配来定义一个二维数组,然后打印出杨辉三角形。杨辉三角是一个数字序列构成的三角形,每个数都是其上方两个数之和,从左上角开始,每一行的第一个和最后一个数都是1。
以下是如何在C++中完成这个任务的一个示例:
```cpp
#include <iostream>
using namespace std;
// 动态创建二维数组
int** createTriangle(int rows) {
int** triangle = new int*[rows];
for (int i = 0; i < rows; ++i) {
triangle[i] = new int[i + 1]; // 每一行元素的数量比前一行多一个
triangle[i][0] = triangle[i][i] = 1; // 设置边界值
}
return triangle;
}
// 打印杨辉三角
void printTriangle(int** triangle, int rows) {
for (int i = 0; i < rows; ++i) {
for (int j = 0; j <= i; ++j) {
cout << triangle[i][j] << " ";
}
cout << endl;
}
delete[] triangle[0]; // 删除每行的第一个指针
for (int i = 1; i < rows; ++i) {
delete[] triangle[i]; // 删除剩余的行
}
delete[] triangle; // 删除所有行的指针
}
int main() {
int rows = 9;
int** triangle = createTriangle(rows);
printTriangle(triangle, rows);
阅读全文