java:打印菱形图案(传参打印的自定义字符和行数)
打印菱形图案:
代码实现:
public class Hello {
public static void main(String args[]) {
LingXingPrint("#", 7);
}
public static void LingXingPrint(String i, int num) {
/**
* 打印菱形,传参:i 为打印的字符,num为行数 。
* 思路:将菱形分为上三角和下三角,上三角:每一行空格打印数为总行数-行号;每一行字符打印个数为2*行号-1;下三角:为上三角打印顺序的倒序
*/
num = num / 2 + 1; // 定义上三角行数总行数/2 + 1,下三角行数则为num-1
for (int j = 1; j <= num; j++) { // 遍历每一行
for (int j2 = 1; j2 <= num - j; j2++) { // 打印空格:总行号-行号
System.out.print(' ');
}
for (int j2 = 1; j2 <= 2 * j - 1; j2++) { // 打印字符:行号*2 -1
System.out.print(i);
}
System.out.println(); // 换行
}
for (int j = num - 1; j >= 1; j--) { // 倒序遍历每一行
for (int j2 = num - j; j2 >= 1; j2--) { // 倒序-打印空格:总行号-行号
System.out.print(' ');
}
for (int j2 = 2 * j - 1; j2 >= 1; j2--) { // 倒序-打印字符:行号*2 -1
System.out.print(i);
}
System.out.println();
}
}
}
java:打印菱形图案(传参打印的自定义字符和行数)的更多相关文章
- JAVA 基础编程练习题19 【程序 19 打印菱形图案】
19 [程序 19 打印菱形图案] 题目:打印出如下图案(菱形) * *** ************ ***** *** * 程序分析:先把图形分成两部分来看待,前四行一个 ...
- Java例题_19 打印菱形图案
1 /*19 [程序 19 打印菱形图案] 2 题目:打印出如下图案(菱形) 3 * 4 *** 5 ***** 6 ******* 7 ***** 8 *** 9 * 10 */ 11 12 /*分 ...
- Java50道经典习题-程序19 输入行数打印菱形图案
题目:根据用户输入的行数打印菱形图案,若用户传入的是为偶数则提示用户重新输入,例如输入数字7打印出如下菱形图案 * *** ************ ***** *** *分析:先把图形分 ...
- C#:使用FastReport打印带图片传参模板的实现方法
大家都知道,C#打印图片可以直接调用PrintDocument控件的PrintPage事件,通过画刷对image对象直接进行绘制.但是这种方法存在局限,例如如果打印的图片需要按纸张大小进行缩放的话,那 ...
- 如何利用while语句根据用户输入要求打印菱形图案
需求:如何利用while语句根据用户输入要求打印菱形图案 diamond.py代码如下: x=int(input('Please input number: ')) i=1 j=1 while i&l ...
- 打印菱形图案(PTA)
打印菱形图案 本题要求编写程序,打印一个高度为n的.由"*"组成的正菱形图案. 标题输入格式 输入在一行中给出一个正的奇数n. 输出格式 输出由n行星号"*"组 ...
- JAVA中获取当前运行的类名,方法名,行数
JAVA中获取当前运行的类名,方法名,行数 public static String getTraceInfo(){ StringBuffer sb = new StringBuffer(); Sta ...
- 原来你是这样的JAVA[02]-包、传参、构造器
一.包(package) 在java程序中,一个java源文件称为编译单元,以.java后缀命名.编译单元内可以有一个public类,类名必须与文件名相同.注意:每个编译单元只能有一个public类. ...
- java调用py文件传参执行
java执行的也是py文件主函数. 传参: String url="*********************"; String[] args1 = new String[] { ...
随机推荐
- 搭建Modelsim SE仿真环境-使用do文件仿真
本章我们介绍仿真环境搭建是基于Modelsim SE的.Modelsim有很多版本,比如说Modelsim-Altera,但是笔者还是建议大家使用Modelsim-SE,Modelsim-Altera ...
- linux 查看用户上次修改密码的日期【转】
1.找到以下文件: cat /etc/shadow 第三段字符就是最近一次密码修改的天数,此数字是距离1970年1月1日的天数. 2.用以下命令计算: date -u -d "1970- ...
- saltstack文件模块的replace操作简化
代码已经过测试 import re import mmap import os import shutil old_text='test' new_text='text' path=r'C:\User ...
- jenkins jar包上传maven仓库
1 Jenkins 编译后部署至 Maven 仓库 jenkins编译后构件(如:jar包)部署至maven仓库需修改以下内容:maven 仓库配置:项目 pom 文件:本地仓库的 sett ...
- C++经典面试题(最全,面中率最高)
C++经典面试题(最全,面中率最高) 1.new.delete.malloc.free关系 delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数.malloc与fre ...
- 多个SpingBoot项目的搭建与部署
最近几年SpringBoot大热,很多IT公司都开始采用SpringBoot来替换传统的SpringMVC项目.那么如何搭建一个适合开发的项目架构呢? 这里我主要介绍Java程序员使用最多的两种工具进 ...
- hostapd 和 wap_supplicant
hostapd : user space daemon for access points, including, e.g., IEEE 802.1X/WPA/EAP Authenticator fo ...
- spring事物回滚遇到的问题
在service层使用声明式事务添加@Transactional(rollbackFor = Exception.class)注解 多个方法进行数据库操作,执行失败则隐式的回滚事务,但是已经成功的发方 ...
- Hive官方使用手册——新Hive CLI(Beeline CLI)
Hive官方使用手册——新Hive CLI(Beeline CLI) https://blog.csdn.net/maizi1045/article/details/79481686
- js实现页面重定向
在现行的网站应用中URL重定向的应用有很多: 404页面处理.网址改变(t.sina转到weibo.com).多个网站地址(如:http://www.google.com/ .www.g.cn )等: ...