运行结果:
杨辉三角的特点:
第n行有n个数
每行的第一个数和最后一个数都是1
从第三行开始,每个数=他上边的数+他上边的左边的数
1 package com.baidu.java; 2 //打印一个10行的杨辉三角 3 public class TestYangHui { 4 public static void main(String[] args) { 5 //初始化杨辉三角为一个二维数组 6 int[][] yh=new int[10][]; 7 for(int i=0;i<yh.length;i++){//给10行初始化,确定每行几个元素 8 yh[i]=new int[i+1];//i=0,表示第一行有1个元素 9 } 10 //显式的为数组中的每一个元素赋值 11 for(int i=0;i<yh.length;i++){ 12 for(int j=0;j<yh[i].length;j++){ 13 //杨辉三角的每行的第一个和最后一个数都是1 14 yh[i][0]=yh[i][i]=1;//例如i=1,表示第二行,yh[i][0]第二行第一个元素,yh[i][i]第二行第二个元素 15 16 //从第三行yh[2]开始,元素的值等于他上边的元素加上他左上方的数字 17 if(i>1 && j>0 && j<i){//j=0和j=i的时候都是1 18 yh[i][j] = yh[i-1][j] + yh[i-1][j-1]; 19 } 20 } 21 } 22 //打印出这个数组 23 for(int i=0;i<yh.length;i++){ 24 for(int j=0;j<yh[i].length;j++){ 25 System.out.print(yh[i][j]+" "); 26 } 27 System.out.println(); 28 } 29 } 30 }