杨辉三角实例
思路解析:
先初始化一个二维数组数组,使其所有元素为零(int类型的数组初始值为零,因此不需要给他赋”0“),让第一行的中间元素(第一行数组长度的一半)为1,从第二行开始,每一行除了第一个和最后一个元素都等于上一行对应位置的左右元素相加,打印时不打印”0“,只打印非零元素
图解
代码如下
import java.util.Scanner;
public class 杨辉三角 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入行数");
int row=scanner.nextInt();
int [][]a=new int[row][row*2];
a[0][row]=1;
for(int i=1;i<a.length-1;i++){
for(int j=0;j<a[i].length-1;j++){
if(j==0){
a[i][j]=0;
continue;
}
a[i][j]=a[i-1][j-1]+a[i-1][j+1];
}
}
for(int i=0;i<a.length;i++){
for(int j=0;j<a[0].length;j++){
if(a[i][j]==0){
System.out.print(" \t");
}
else {System.out.print(a[i][j]+"\t");
}
}
System.out.println();
}
}
}
实例如下: