Java-for循环打印三角形、菱形、空心菱形

public static void main(String[] args) {
		
		System.out.println("==========图案一==========");
		/*	图案一:	*
		 * 			***
		 * 			*****
		 *			*******
		 *	行数:4	--->0	1	2	3
		 *	行上的星数:7	--->1	3	5	7
		 *	行上的星数=行*2+1
		 *
		 */	
		for(int i=0;i<4;i++) {
			
			for(int j=0;j<i*2+1;j++) {
				System.out.print("*");
		}			
			System.out.println();
		}
}

输出结果:
在这里插入图片描述

System.out.println("==========图案二==========");
		/*	图案二:	   *					---*
		 * 			  ***			---->	--***
		 * 			 *****					-*****
		 *			*******					*******
		 *	对于空格:
		 *	行数:4	--->0	1	2	3
		 *	行上的空格数:7	--->3	2	1	0	
		 *	行上的空格数=4-行数-1
		 *
		 *	对于星号:
		 *	行数:	4--->0	1	2	3
		 *	行上的星数:7--->1  3  5   7
		 *	行上的星数=行数*2+1
		 */	
		for(int i=0;i<4;i++) {
			//对于空格
			for(int j=0;j<3-i;j++) {
				System.out.print(" ");
			}
			for(int k=0;k<i*2+1;k++) {
				System.out.print("*");
			}
			System.out.println();
		}

输出结果:
在这里插入图片描述

System.out.println("==========图案三==========");
		/*	图案三:	   *					---*
		 * 			  ***			---->	--***
		 * 			 *****					-*****
		 *			*******					*******
		 *			 *****					-*****
		 *			  ***					--***
		 *			   *					---*
		 *对于上半部分:
		 *	
		 *	对于空格:
		 *	行数:4	--->	0	1	2	3	
		 *	行上的空格数:7	--->3	2	1	0	
		 *	行上的空格数=4-行数-1
		 *	
		 *  对于星号:
		 *	行数:	4--->0	1	2	3
		 *	行上的星数:7--->1  3  5   7
		 *	行上的星数=行数*2+1
		 *
		 *对于下半部分
		 *	对于空格:
		 *	行数:3	--->	0	1	2		
		 *	行上的空格数:3	--->1	2	3		
		 *	行上的空格数=行数+1
		 *  
		 *  对于星号:
		 *	行数:	3--->0	1	2	
		 *	行上的星数:7--->5 	3	1
		 *	行上的星数=7-行数*2-2
		 */	
		//打印上半部分图案
		for(int i =0;i<4;i++) {
			//打印空格
			for (int k=0;k<3-i;k++) {
				System.out.print(" ");
				
			}
			//打印星号
			for (int j=0;j<i*2+1;j++) {
				System.out.print("*");
			}
			System.out.println();
			
		}
		//打印下半部分图案、
		for(int i=0;i<3;i++) {
			//打印空格
			for(int k=0;k<i+1;k++) {
				System.out.print(" ");
			}
			//打印星号
			for(int j=5-i*2;j>0;j--){
				System.out.print("*");
			}
			System.out.println();

	}

输出结果:
在这里插入图片描述

System.out.println("==========图案四==========");
		/*	图案四:	   *					---*
		 * 			  * *			---->	--*-*
		 * 			 *   *					-*---*
		 *			*     *					*-----*
		 *			 *   *					-*---*
		 *			  * *					--*-*
		 *			   *					---*
		*对于上半部分:
		 *	
		 *	对于空格:
		 *	行数:4	--->	0	1	2	3	
		 *	行上的空格数:7	--->3	2	1	0	
		 *	行上的空格数=4-行数-1
		 *	
		 *  对于星号:
		 *	行数:	4--->0	1	2	3
		 *	行上的星数和内层空格:7--->1  3  5   7
		 *	行上的星数和内层空格=行数*2+1
		 *	星数和内层空格循环开始和结束时判定为星其余为空格
		 *
		 *对于下半部分
		 *	对于空格:
		 *	行数:3	--->	0	1	2		
		 *	行上的空格数:3	--->1	2	3		
		 *	行上的空格数=行数+1
		 *  
		 *  对于星号:
		 *	行数:	3--->0	1	2	
		 *	行上的星数和内层空格:7--->5 	3	1
		 *	行上的星数和内层空格=7-行数*2-2
		 *	星数和内层空格循环开始和结束时判定为星其余为空格
		 */	
		//打印上半部分图案
		for (int i=0;i<4;i++) {
			//打印外层空格
			for(int k=0;k<3-i;k++) {
				System.out.print(" ");
			}
			for(int j=0;j<i*2+1;j++) {
				if (j==0||j==i*2) {
					//打印星号
					System.out.print("*");
				}else {
					//打印内层空格
					System.out.print(" ");
				}
			}
			System.out.println();
		}
		//打印下半部分图案
		for(int i=0;i<3;i++) {
			//打印外层空格
			for(int k=0;k<i+1;k++) {
				System.out.print(" ");
			}
			for(int j=0;j<5-i*2;j++) {
				if(j==0 || j==4-i*2) {
					System.out.print("*");
				}else {
					System.out.print(" ");
				}
			}
			System.out.println();
			
			
		}

输出结果:
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值