用c++编写(1)利用一个二维数组,打印出以下杨辉三角形,要求打印出10行。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 ∶ ∶ 提示:定义一个10行10列的二维数组,并且通过双重循环对第1列所有元素赋值1,主对角线也赋值1。根据a[i][j] = a[i-1][j] + a[i-1][j-1] 求出其它元素的值。
时间: 2023-08-25 13:06:15 浏览: 96
西南交通大学c++电脑软件答案
好的,以下是 C++ 代码实现:
```c++
#include <iostream>
using namespace std;
int main() {
int arr[10][10] = {0}; // 定义一个10行10列的二维数组,初始值为0
for (int i = 0; i < 10; i++) {
arr[i][0] = 1; // 第1列所有元素赋值1
arr[i][i] = 1; // 主对角线上所有元素赋值1
for (int j = 1; j < i; j++) {
arr[i][j] = arr[i-1][j] + arr[i-1][j-1]; // 根据公式计算其它元素的值
}
}
// 打印杨辉三角形
for (int i = 0; i < 10; i++) {
for (int j = 0; j <= i; j++) {
cout << arr[i][j] << " ";
}
cout << endl;
}
return 0;
}
```
输出结果为:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
```
阅读全文