应用二维数组打印杨辉三角形c++
时间: 2025-01-02 17:41:19 浏览: 35
在C++中,杨辉三角是一个经典的数学图形,通常通过动态内存管理和循环结构来打印。杨辉三角的第一行有1个数字,之后每一行都是前一行数字的递增组合。以下是简单的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];
triangle[i][0] = triangle[i][i] = 1;
}
// 打印每个元素
for (int row = 0; row < rows; row++) {
for (int col = 1; col < row; col++) {
triangle[row][col] = triangle[row - 1][col - 1] + triangle[row - 1][col];
}
cout << " ";
// 遍历并打印行
for (int j = 0; j <= row; j++) {
cout << triangle[row][j] << " ";
}
cout << endl;
}
// 释放内存
for (int i = 0; i < rows; i++) {
delete[] triangle[i];
}
delete[] triangle;
}
int main() {
int rows = 5; // 指定要打印的行数,可以修改这个值改变大小
printPascalTriangle(rows);
return 0;
}
```
在这个代码中,我们首先创建了一个二维数组`triangle`来存储杨辉三角的每个元素。然后使用两个嵌套循环计算和打印每个元素。最后,记得在使用完后释放动态分配的内存。
阅读全文