(1)利用一个二维数组,打印出以下杨辉三角形,要求打印出10行。
时间: 2025-06-22 07:37:24 浏览: 10
### 实现打印10行杨辉三角形的代码
为了实现打印10行的杨辉三角形,可以采用二维数组来存储和计算各层的数据。以下是具体方法:
#### Java 语言实现
在Java中,可以通过定义一个`int`类型的二维数组来保存杨辉三角中的数值,并通过嵌套循环结构完成数据填充与输出。
```java
public class YangHuiTriangle {
public static void main(String[] args) {
int[][] triangle = new int[10][];
for (int line = 0; line < 10; line++) {
// 初始化当前行
triangle[line] = new int[line + 1];
for (int col = 0; col <= line; col++) {
if (col == 0 || col == line){
// 设置每行的第一个和最后一个元素为1
triangle[line][col] = 1;
} else {
// 计算其他位置上的值等于上一行相邻两数之和
triangle[line][col] = triangle[line - 1][col - 1] + triangle[line - 1][col];
}
System.out.print(triangle[line][col] + " ");
}
System.out.println();
}
}
}
```
这段程序创建了一个大小动态变化的一维子数组组成的二维数组用于表示不同长度的各行[^1]。
#### C 语言实现
而在C语言里,则可以直接声明固定大小的二维整型数组来进行相同的操作:
```c
#include<stdio.h>
int main(){
int data[10][10]={0}; // 定义并初始化10*10的二维数组
for(int i=0;i<10;++i){ // 遍历每一行
data[i][0]=data[i][i]=1; // 设定每行两端都为1
for(int j=1;j<i;++j){
data[i][j]=data[i-1][j-1]+data[i-1][j]; // 中间部分按规则累加前一行相应位置的两个数值得到新值
}
// 打印该行的结果
for(int k=0;k<=i;++k){
printf("%d ",data[i][k]);
}
printf("\n");
}
return 0;
}
```
此段代码同样遵循了上述提到的原则,在每次迭代过程中更新对应行列的位置值,并最终形成完整的十行杨辉三角图案[^2]。
阅读全文
相关推荐


















