Java中用二维数组输出杨辉三角

Java基础知识 专栏收录该内容
41 篇文章 1 订阅

创建数组的两种方式:
①数据类型[ ][ ] 数组名 = new 数据类型[行数][列数],如
int[ ][ ] a = new int[2][3];这样就创立了2行三列的二维数组
②数据类型[ ][ ] 数组名 = {{第一行初值},{第二行初值},{…},{第n+1行初值}},如:
int[ ][ ] a = {{1,2,3},{4,5,6},{7,8,9}};这样也创建了三行三列的二维数组

接下来就来用二维数组来输出杨辉三角:

import java.io.FileInputStream;
import java.io.IOException;
import java.util.*;

class Test{
    public static void main(String[] args) {
        int i,j;
        //定义杨辉三角的行数
        int level;
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入想输出的杨辉三角的层数:");
        //自定义杨辉三角的层数:
        level = sc.nextInt();
        //新建一个二维数组
        int[][] a = new int[level][];
        System.out.println("杨辉三角:");
        //经过发现,杨辉三角的每一行元素个数都是(行数+1)
        for(i=0;i<a.length;i++){
            a[i] = new int[i+1];
        }
        //第一行只有一个元素,且为1
        a[0][0]=1;
        /*
        从第二行开始,每一行的第一个元素和最后一个元素都是1,
        其它位置上的数都是它左上角的数与正上方的数之和
         */
        for(i=1;i<a.length;i++){
            a[i][0]=1;
            //a[i].length表示所属的那一行的一维数组长度
            for(j=1;j<a[i].length-1;j++){
                a[i][j]=a[i-1][j-1]+a[i-1][j];
            }
            a[i][a[i].length-1]=1;
        }
        //foreach输出数组:
        for(int[] row:a){
            for (int col : row){
                System.out.print(col+" ");
            }
            System.out.println();
        }
    }
}

控制台输出结果为:
请输入想输出的杨辉三角的层数:7
杨辉三角:
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
    点赞
  • 0
    评论
  • 11
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:像素格子 设计师:CSDN官方博客 返回首页

打赏作者

~故事的小黄花~

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值