二维数组输出10行杨辉三角

运行结果:

杨辉三角的特点:

第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 }
原文地址:https://www.cnblogs.com/yunqing/p/4749253.html