![](https://img-blog.csdnimg.cn/017e80c3fb914cb7bd5e7c0173ec69dd.png)
一、使用数组
System.out.println("请输入需要打印的行数");
int row=input.nextInt();
int[][] arr=new int[row][row];
//存入数组
for (int i=0;i<row;i++ ) {
for (int j=0;j<=i;j++ ) {
if(j==0||j==i){
arr[i][j]=1;
}else{
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
}
}
// 打印
for (int i=0;i<row;i++ ) {
for (int j=0;j<row-i ;j++ ) { //打印空格
System.out.print(" ");
}
for (int j=0;j<=i;j++ ) { //打印数字
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
二、规律
第n行的第1个数为1,第二个数为1×(n-1),第三个数为1×(n-1)×(n-2)/2,第四个数为1×(n-1)×(n-2)/2×(n-3)/3
也就是等于 第i个数=第(i-1)个数*(n-(i-1))/(i-1)
for (int i=1;i<=row;i++ ) {
int sum=1;
for (int j=0;j<row-i ;j++ ) { //打印空格
System.out.print(" ");
}
for (int j=1;j<=i;j++ ) { //打印数字
if(j>1){
sum=sum*(i-(j-1))/(j-1);
System.out.print(sum+" ");
}else{
System.out.print(1+" ");
}
}
System.out.println();
}