打印杨辉三角
代码:
import java.util.*;
public class test1 {
/*
* 输出杨辉三角
*/
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int rows=sc.nextInt();//打印的行数
int [][] arr=new int [rows][];
for(int i=0;i<rows;i++){
arr[i]=new int[i+1];//完善二维数组,第n行有n+1个列(由于下标是从0开始,所以第0行有1个列。即第n行只能放n+1个数)
}
for(int i=0;i<rows;i++){//将数组进行数据的存放
for(int j=0;j<arr[i].length;j++){
if(i==0||j==0||i==j){//行、列为0或者行数等于列数时,其位置上的数是1
arr[i][j]=1;
}else{
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];//其余情况是该位置上的值是其行数减1列数减1和行数减1同1列的位置上的数值之和
}
}
}
for(int i=0;i<rows;i++){//输出
for(int k=rows-i-1;k>0;k--){//先输出空格,第i行输出rows-1-i个空格(i
为当前行数,rows为二维数组的总行数)
System.out.print(" ");
}
for(int j=0;j<arr[i].length;j++){
System.out.print(arr[i][j]+" ");//再输出数值
}
System.out.println();
}
}
}
如输入的是6,其打印结果如下: