利用 Java 的二维数组来输出指定行数的杨辉三角形。

杨辉三角形由数字进行排列,可以把它看作是一个数字表,其基本特性是两侧数值均为 1,其他位置的数值是其左上方数值与右上角数值之和。打印杨辉三角形时需要使用到 for 循环语句。

打印杨辉三角形的实现思路是:每一行前面都是空格,而每行空格的个数需要根据总行数来确定,这个可以通过找规律归纳出来。关键是数值的实现,每一行的数值(除了第一列和最后一列)都是上一行两个数值之和,因此可以通过上一行来获取。

具体代码如下所示:

import java.util.Scanner;
public class SanJiao {public static void main(String[] args) {// 从控制台获取行数Scanner sc = new Scanner(System.in);System.out.print("打印杨辉三角形的行数:");int row = sc.nextInt();// 根据行数定义好二维数组,由于每一行的元素个数不同,所以不定义每一行的个数int[][] arr = new int[row][];// 遍历二维数组for (int i = 0; i < row; i++) {// 初始化每一行的这个一维数组arr[i] = new int[i + 1];for (int j = 1; j <= row - i; j++) {System.out.print(" ");}// 遍历这个一维数组,添加元素for (int j = 0; j <= i; j++) {// 每一列的开头和结尾元素为1,开头的时候,j=0,结尾的时候,j=iif (j == 0 || j == i) {arr[i][j] = 1;} else {// 每一个元素是它上一行的元素和斜对角元素之和arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1];}System.out.print(arr[i][j] + " ");}System.out.println();}}
}

运行结果如下所示:
打印杨辉三角形的行数:7

      11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1
1 6 15 20 15 6 1

1.22 实例:Java输出杨辉三角形(使用二维数组)相关推荐

  1. java练习day06-Debug-进制-二维数组-杨辉三角

    Day06 Debug Debug概述: ​ Debug是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序. Debug操作流程 ​ Debug调试,又被 ...

  2. php二维数组实例_什么是php二维数组?php二维数组实例详解

    什么是php二维数组? 二维数组又称为矩阵,本质上是以数组作为数组元素的数组,一个数组的元素如果是一维数组,那么我们就称这个数组是二维数组. PHP二维数组实例详解 我们之前的一篇文章<PHP数 ...

  3. java中控制台输入二维数组(Scanner类总结)

    由于牛客和LeetCode上的题目不用自己写输入,但实际笔试中都需要从输入开始写,遇到需要从控制台输入二维数组的情况,故对java中的Scanner类作整理和总结. 通过 Scanner 类能获取用户 ...

  4. java实现n阶二维数组(n×n)的顺时针旋转90°、180°、270°

    一.首先第一步是要初始化一个你任意的n阶方阵,初始化的语句参考如下: int arr[][] = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}}; 二 ...

  5. java中用length求二维数组的长度

    今天刷题的时候碰到二维数组长度的问题,直接敲代码验证~ 用事实说话: 说明length求得的是二维数组的行数,即data[i][j]中的i 但如果要求二维数组的列数呢?很简单,用data[0].len ...

  6. c语言一维数组输出字符串和二维数组输出字符串

    以气球算法题为例 如果让你指定一个气球的颜色,可以定义一个一维数组设定颜色 #include<stdio.h> int main(){char a[10];printf("设定一 ...

  7. Java 实现顺时针螺旋二维数组输出

    看到一道有点意思的逻辑算法题,便着手实现一下.打印 N*N顺时针螺旋数组,规律如下: // 1 2 3 4 5 // 16 17 18 19 6 // 15 24 25 20 7 // 14 23 2 ...

  8. java编码给出二维数组List<List<Integer>>matrix,输出每列最小的值

    import java.util.LinkedList; import java.util.List;public class Main {public static void main(String ...

  9. 按照要求输出相应的二维数组

    //下三角为1 上三角为-1 对角线微2 1 //下三角为1 上三角为-1 对焦为2 2 3 //2017.3.7 4 5 #include <stdio.h> 6 #include &l ...

  10. java中矩阵怎么打印_在Java编程中打印二维数组或矩阵

    在本文中,我们将尝试以与通常在纸上书写相同的方式在控制台上打印数字数组或数字矩阵. 为此,逻辑是一个接一个地访问数组的每个元素,并使其以空格分隔打印,当行到达矩阵中的emd时,我们还将更改行 示例 p ...

最新文章

  1. 自动驾驶高峰激辩:寒冬还有多远,芯片路线之争,人才缺乏待解
  2. 云计算环境下的应用架构设计
  3. 模拟电梯控制软件设计c语言,模拟电梯控制系统设计.docx
  4. 故宫学生网页设计作品 dreamweaver作业静态HTML网页设计模板 旅游景点网页作业制作
  5. nhibernate事务锁表的问题
  6. Mac中在Matlab中安装Mosek
  7. 【开源】DA14580-中断实验教程——疯壳·ARM双处理器开发板系列
  8. iphone与计算机连接,将 iPhone 与电脑同步
  9. html炫酷文本框,炫酷的input框实现
  10. 苹果安卓APP下载地址合并为一个二维码
  11. 程序员用「美貌」突破二维图像的人脸识别
  12. 重庆计算机财经学院,重庆财经学院
  13. 还在使用BeanUtils.copyProperties()? 来看看MapStruct,强大五倍
  14. 1042 Shuffling Machine (20 point(s)) - C语言 PAT 甲级
  15. NoSql的四大类型
  16. 基于embedded.mobileprovision描述文件查看iOS苹果证书到期时间三种方案
  17. 【Pyecharts | Map3D】带光影效果的3D地图 | 深圳地区二手房房价地图~
  18. react-dom.development.js:6202 Unable to preventDefault inside passive event listener invocation 错误
  19. [BZOJ1502][NOI2005]月下柠檬树(辛普森积分+解析几何)
  20. iOS 利用AFNetworking实现大文件分片上传

热门文章

  1. 成功解决TypeError: tuple indices must be integers or slices, not str
  2. 洛谷 - P1433 - 吃奶酪 - dfs
  3. eclipse打可运行的jar
  4. 爬虫-windows下安装Scrapy及scrapy模块介绍
  5. Git remote 修改源
  6. django学习——通过HttpResponseRedirect 和 reverse实现重定向(转载)
  7. redis 数据类型、命令
  8. Entity Framework Relationships and Navigation Properties
  9. 设计新Xlator扩展GlusterFS[转]
  10. STOP:c0000218 {Registry File Failure}