空心菱形如图所示
那么我们应该如何去写出来呢?这就不得不引出一个非常经典的案例,金字塔案例,菱形像不像是两个对称的金字塔呢?废话不多说了,上思路:(仅代表个人理解,欢迎指点)
1.首先我们要写出一个空心菱形,那么我们首先得把需求由繁化简,把他拆分成一个一个简单的需求,
1.1那我们就先写半个金字塔,
是不是很眼熟的结构,没错和九九乘法表类似的结构,上代码
for(int i = 1;i <= 5;i++){ //i代表层数,这个可以设置一个变量接收,随便几层都行,不一定非要是5for(int j = 1;j <= i;j++){ //j代表个数system.out.print("*");}system.out.print("\n"); //system.out.println(" ");这样也行}
半个金字塔出来了,那我们接下来就写一个完整的空心金字塔
//输出一个空心金字塔//思路分析://1.补全金字塔// * //空格数为 总层数 - 1 //个数为 1 3 5 7 9 什么规律呢 就是 2 * 当前层数 - 1 // *** //空格数为 总层数 - 1 // ***** // ******* 什么是风湿病//********* //2.将金字塔镂空 // * 第一层 1个 // * * 第二次 2个 // * *第三层 2个 // .... 第n层 2个 //*********最后一层 全部有 //大致就是这个图形,(图形不准确,请自行脑补)for(int i = 1;i <= 5;i++){// i是层数//打印出每层前面的空格数for(int k = 1;k <= 5 - i;k++){system.out.print(" ");}//控制每层打印的个数for(int j = 1;j <= 2 * i - 1;j++){ //j是个数//空心金字塔都是第一个和最后一个位置有*,最后一层则是全部输出if征集志愿填报时间(j == 1 || 辽宁锦州j == 2 * i - 1|| i == 5){ system.out.print("*");}el{system.out.print(" ");}}system.out.print("\n");}
那么菱形就已经很简单了 我们只需要把空心金字塔最后一层的全部输出去掉 也就是 i == 5注销,就得到这么一个东西
菱形的工作已经完成了大半,接下来照猫画虎把下半部分写出来就可以了
for(int a = 4;a > 0;a--){//打印空格for(int c = 1;c <= 5 - a;c++){system.out.print(" ");}for(int b = 1;b <= 2 * a -1;b++){if( b ==1 || b == 2 * a -1){system.out.print("*");}el{system.out.print(" ");}}system.out.print("\n");}
虽然菱形的下半部分是一个倒过来的金字塔, 但是其规律并没有发生变化,空格数依旧是总层数 – 1
个数也没有发生变化,就是顺序倒过来,把++改成–就好了
完整的代码:
for(int i = 1;i <= 5; i++){//控制前面的空格数for(int k = 1;k <= 5 - i;k++){system.out.print(" ");}//控制每行输出的*的个数for(int j = 1;j <= 2 * i - 1;j++){//每行第一个和最后一个位置有*,最后一行全有if(j == 1 || j == 2 * i - 1){system.out.print("*");}el{system.out.print(" ");}}system.out.print("\n");}for(int a = 4;a > 0;a--){//打印空格for(int c = 1;c <= 5 - a;c++){system.out.print(" ");}for(int b = 1;b <= 2 * a -1;b++)西双版纳好玩吗{if( b ==1 || b == 2 * a -1){system.out.print("*");}el{system.out.print(" ");}}system.out.print("\n");}
到此这篇关于java用for循环打印空心菱形的文章就介绍到这了,更多相关java for循环输出菱形内容请搜索www.887551.com以前的文章或继续浏览第二次战役下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-04 19:50:50,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/69a29a37716526f2831a68deee267409.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:JAVA用for循环打印空心菱形.doc
本文 PDF 下载地址:JAVA用for循环打印空心菱形.pdf
留言与评论(共有 0 条评论) |