package homeWork;

/*

* 作业1、基础

打印出杨辉三角形(要求打印出10行如下图)

1

1    1

1    2    1

1    3    3    1

1    4    6    4    1

1    5    10    10    5    1

*/

public class PrintYangHuiTriangle {

public static void main(String[] args) {

PrintYangHuiTriangle p = new PrintYangHuiTriangle();

p.print(20);

}

public void print(int line) {

// 定义二维数组

int[][] array = new int[line][line];

// 循环录入元素

for (int i = 0; i < line; i++) {

for (int j = 0; j <= i; j++) {

if (j == 0) {

// 靠左第一个数都为1

array[i][j] = 1;

} else if (j == i) {

// 靠右第一个数都为1

array[i][j] = 1;

} else {

// 其余数等于头顶两个元素的和,将杨辉三角形结构消去空格可找出规律

array[i][j] = array[i – 1][j – 1] + array[i – 1][j];

}

}

}

// 获取最大那个数的数字长度,用于划分数与数的间距

int maxLength = String.valueOf(array[line – 1][line / 2]).length();

// 循环输出每行起始空格

for (int i = 1; i <= line; i++) {

// 上下行空格数量差等于距离最大数的数字长度,以便对齐

for (int j = 1; j <= (line – i) * maxLength; j++) {

System.out.print(” “);

}

for (int k = 0; k < i; k++) {

System.out.print(array[i – 1][k]);

// 当前输出的数字长度

int numLength = String.valueOf(array[i – 1][k]).length();

// 输出的空格数应减去数字所占长度以对齐

for (int b = 1; b <= maxLength + maxLength – numLength; b++) {

System.out.print(” “);

}

}

// 依规律得第n行有n个数字,for循环换行

System.out.println();

}

}

}

杨辉三角靠左c语言,杨辉三角(空格对齐)相关推荐

  1. 杨辉三角递推c语言,杨辉三角【递推】

    先看一眼杨辉三角是啥 杨辉三角 题目1: 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行. 示例: 输入: 5 输出: [ [1], [1,1], [1,2,1], [1,3, ...

  2. C语言-杨辉三角的三种解法-简单易懂篇

    杨辉三角 1.创建二维数组 2.递归方法 3.利用公式求每一个杨辉三角的元素 这里我们先实现第二张图的这种杨辉三角,在第二张图的基础上加上对数字前面空格的控制就好了,这个不难实现,重点是先把杨辉三角成 ...

  3. 【Java】 杨辉三角 二维数组打印杨辉三角

    Tips 打印三角的操作 : 每行打印前预留空格 打印指定数量的星号后换行 重复循环打印直至完成所有打印结果 杨辉三角: 三角规律空格最大对称值为 5 大于 5 则会变形 三角规律为当前值为上一个值加 ...

  4. c语言如何输入大括号,杨宗德教你c语言使用大括号的正确方法

    杨宗德教你c语言使用大括号的正确方法.在C语言中,使用大括号的方法无所谓对还是错--只要每个开括号后都有一个闭括号,你的程序中就不再会出现与大括号有关的问题.然而,有三种著名的大括号格式经常被使用: ...

  5. html中小三角怎么打出来,css实现小三角(原理)

    效果图如图1所示:(简单示范,有点丑,莫介意) PS:兼容IE,FF , chrome ,360安全浏览器 先讲下原理吧,如图2所示: 这个div的样式如下所示: div{ width: 0px; h ...

  6. C语言结构体-大小,对齐,填充,使用及其他

    C语言结构体-大小,对齐 C语言中的结构体(struct)的定义 在C语言中,最常用的数据结构就是结构体了,结构体也是其它数据结构(比如链表等)的基础,结构体的使用非常简单. 比如,定义一个结构体: ...

  7. C语言去掉字符串首尾空格,C语言实现去除字符串首尾空格

    C语言实现去除字符串首尾空格 2019年09月28日 | 萬仟网IT编程 | 我要评论 /* C语言去除字符串首尾空格,trim()函数实现 https://blog.csdn.net/u013022 ...

  8. c语言怎么输入有空格的字符串

    c语言怎么输入有空格的字符串 https://blog.csdn.net/qq_44752641/article/details/106118698 采用fgets输入可以识别空格,如输入hello ...

  9. c语言union字节相同大小不同,C语言的struct/union字节对齐

    C语言的一大优势就是对内存空间的控制,当然,一般情况下对于开发人员来说都是透明的.看一个始终困扰初学者的问题:字节对齐! 先看四个重要的基本概念: 1.数据类型自身的对齐值: 对于char型数据,其自 ...

最新文章

  1. 如果CRC等于炒鸡蛋,那么...
  2. cocos2dx 3.3创建新项目 和 VS2012解决方案加载失败问题
  3. 计算机图像抠图有什么作用,图像处理 抠图|傲软抠图 v1.1.13.1电脑版 - 系统天堂...
  4. python处理表格数据-基于Python快速处理PDF表格数据
  5. 动态sql语句输出参数
  6. (5)hibernate多对一,一对多,一对一,多对多
  7. Visual Studio 插件的开发
  8. 一次tomcat数据乱码事件
  9. [公告]新增项目交流区
  10. Java---利用Zing生成二维码、解析二维码
  11. 双网卡双线路DNS解析分析
  12. 计算机一级证件照尺寸,照相馆不会告诉你的哪些事:常用证件照尺寸汇总
  13. vue3 去除百度地图右上角地图类型展示
  14. 记录一个错误,Studio中导入model不显示
  15. 蓝牙核心技术概述(一):蓝牙概述-转-
  16. 大数据在电子商务的的五大发展趋势分析
  17. OpenSSL v0.9.8a随机数发生器分析之二——随机数发生器函数说明
  18. 【微信开发】-发送位置获取周边信息及生成百度全景静态图API,主要代码在private function receiveLocation($object)
  19. Rhapsody 及 Doors安装后如何更改语言界面?
  20. 计算机大一新生打字速度,大一新生,21修炼成打字高手

热门文章

  1. Bebug与Release版本
  2. ubuntu系统的安装及基本配置
  3. 串口收发指示灯电路----电子工程世界论坛
  4. 2019NHOI小甲解题思路
  5. 安科瑞剩余电流互感器在电气火灾监控系统中的应用(安科瑞-卓宋兰)
  6. js中的josn对象
  7. Vue3中父子组件的v-model双向绑定
  8. 碎片化学前端,推荐这几位大前端巨佬~
  9. 计算机科学与基础 简答题,计算机应用基础试卷(A卷)及答案
  10. 程序员生存定律:打造属于自己的稀缺性