现做的,哪有不对,请指出!
- class Test
- {
- public static void main(String[] args)
- {
- // 用来保存杨辉三角的,先试试10行的
- int[][] arr = new int[10][10];
- // 初始化每行角标为1,每行最后一个为1
- for(int i = 0; i < 10; i ++)
- {
- arr[i][0] = 1;
- arr[i][i] = 1;
- }
- // 规律从第三行(包括第三)的角标为1开始,有:arr[2][1] = arr[1][1] + arr[1][0]
- for(int i = 2; i < 10; i++)
- {
- for(int j = 1; j <= i; j++)
- {
- arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
- }
- }
- for(int i = 0; i < 10; i++)
- {
- for(int j = 0; j <= i; j++)
- {
- System.out.print(arr[i][j]+"\t");
- }
- System.out.println();
- }
- }
- }
复制代码
输出:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1 |