lyl890

导航

继续学习二维数组

昨天去勤工俭学了,事情很复杂,搞了差不多一天,人也差点感冒了,以后应该就稳定下来了------------

 

二维数组的初始化

(1)直接初始化

int arr[][]={{1,2},{3,4},{5,6}};

其他类型也一样,

(2)动态初始化

对于引用类型的二维数组,必须首先为最高维分配引用空间,然后再顺次为低维分配空间,而且必须为每个数组元素单独分配空间

 

 

 

今天继续学习二维数组的经典应用--杨辉三角

其主要明白yh[i][j]=yh[i-1][j]+yh[i-1][j-1]

代码如下:

public void yanghui(){
        int[][] yh=new int[10][];
        for (int i = 0; i < yh.length; i++) {
      //给每个一维数组开空间   yh[i]
=new int[i+1]; for (int j = 0; j < yh[i].length; j++) { if(j==0 || j==yh[i].length-1){ yh[i][j]=1; }else { yh[i][j]=yh[i-1][j]+yh[i-1][j-1]; } System.out.print(yh[i][j]+" "); } System.out.println(); } }

加一个居中对齐的

int rows = 10;
        for (int i = 0; i < rows; i++) {
            int number = 1;
            // 打印空格字符串
            System.out.format("%" + (rows - i) * 2 + "s", "");
            for (int j = 0; j <= i; j++) {
                System.out.format("%4d", number);
                number = number * (i - j) / (j + 1);
            }
            System.out.println();
        }

 

 

yh[i][j]=yh[i-1][j]+yh[i-1][j-1];

posted on 2022-03-27 14:07  静静书中仙  阅读(24)  评论(0)    收藏  举报