基础入门for循环嵌套,以及训练逻辑能力

学习编程逻辑能力是必不可少的,如果逻辑能力很差,不妨耐心看完本篇文章,相信看完后逻辑能力一定会大大提升

  1. 打印图案:
    *****
    *****
    *****
    *****
    *****
```java
class Demo1 {
	public static void main(String[] args) {
		int line = 20;
		for (int i = 1; i <= line; i++) {
			// 星星个数 = 最大行号
			for (int j = 1; j <= line; j++) {
				System.out.print("*");
			}
			System.out.println();
		}
		
	}
}```



    *           1  1
    **          2  2
    ***         3  3 
    ****        4  4
    *****       5  5
    ******  
/*				L  *
    *           1  1
    **          2  2
    ***         3  3 
    ****        4  4
    *****       5  5
    ******      6  6
*/
class Demo2 {
	public static void main(String[] args) {
		int line = 30;
		// 外层循环控制总计6行
		for (int i = 1; i <= line; i++) {
			// 每一行星星个数 == 行号
			for (int j = 1; j <= i; j++) {
				System.out.print('*');
			}
			
			System.out.println();
		}
	}
}
	*   
   **   
  ***   
 ****   
*****
class Demo3 {
	public static void main(String[] args) {
		int line = 30;
		// 外层循环控制总行数
		for (int i = 1; i <= line; i++) {
			// 内层循环1: 控制空格的个数
			for (int j = 1; j <= line - i; j++) {
				System.out.print(' ');
			}
			
			// 内层循环2: 控制星星的个数
			for (int k = 1; k <= i; k++) {
				System.out.print('*');
			}
			
			System.out.println();
		}
	}
}
     *          
    ***        
   *****       
  *******       
 *********    
***********
class Demo4 {
	public static void main(String[] args) {
		int line = 20;
		// 外层循环控制总行数,这里是6行
		for (int i = 1; i <= line; i++) {
			// 内层循环1:控制空格的个数
			for (int j = 1; j <= line - i; j++) {
				System.out.print(' ');
			}
			
			// 内层循环2:控制星星的个数 星星 = 2 * 当前行号 - 1;
			for (int k = 1; k <= 2 * i - 1; k++) {
				System.out.print('*');
			}
			
			System.out.println();
		}
	}
}
  1.           A         
     	     BBB       
     	    CCCCC       
     	   DDDDDDD     
     	  EEEEEEEEE     
     	 FFFFFFFFFFF    
     	GGGGGGGGGGGGG
    
class Demo5 {
	public static void main(String[] args) {
		// 定义一个字符变量,变量初始化为字符'A'
		char ch = 'A';
		
		// 外层循环控制总行数,总行数7行
		for (int i = 1; i <= 26; i++) {
			// 内存循环1: 控制空格的个数
			for (int j = 1; j <= 26 - i; j++) {
				System.out.print(' ');
			}
			
			// 内存循环2: 控制字符个数
			for (int k = 1; k <= 2 * i - 1; k++) {
				System.out.print(ch);
			}
			
			System.out.println();
			
			// 字符变量需要在每一次展会完毕之后,进行自增
			ch += 1;
		}
	}
}
     *			
    ***			
   *****		
  *******	
 *********		
***********		

 *********      
  *******     
   *****      
    ***		
     * 	
class Demo6 {
	public static void main(String[] args) {
		// 菱形总行数 ,一旦是单数
		int line = 25;
		
		// 图形一分为二,上半部分为line / 2 + 1行
		// 外层循环控制总行数,这里是line / 2 + 1行
		for (int i = 1; i <= line / 2 + 1; i++) {
			// 内层循环1:控制空格的个数
			for (int j = 1; j <= line / 2 + 1 - i; j++) {
				System.out.print(' ');
			}
			
			// 内层循环2:控制星星的个数 星星 = 2 * 当前行号 - 1;
			for (int k = 1; k <= 2 * i - 1; k++) {
				System.out.print('*');
			}
			
			System.out.println();
		}
		
		// 下半部分一共line / 2行
		// 外层循环控制总行数,总计line / 2行
		for (int i = 1; i <= line / 2; i++) {
			// 内层循环1: 展示空格个数
			for (int j = 1; j <= i; j++) {
				System.out.print(' ');
			}
			
			// 内层循环2: 控制星星的个数
			for (int k = 1; k <= (line / 2 - i) * 2 + 1; k++) {
				System.out.print('*');
			}
			
			System.out.println();
		}
	}
}

7.

		     A			1   5	A		1
			BBB			2	4	B		3
		   CCCCC		3	3	C		5
		  DDDDDDD		4	2	D		7
		 EEEEEEEEE		5	1	E		9
		FFFFFFFFFFF		6	0	F		11
		
		
		 EEEEEEEEE		1	1	E		9
		  DDDDDDD		2	2	D		7
		   CCCCC		3	3	C		5
			BBB			4	4	B		3
			 A			5	5	A		1

class Demo7 {
	public static void main(String[] args) {
		int line = 11;
		char ch = 'A';
		for (int i = 1; i <= line / 2 + 1; i++) {
			for (int j = 1; j <= line / 2 + 1 - i; j++) {
				System.out.print(" ");
			}
			for (int k = 1; k <= i * 2 - 1; k++) {
				System.out.print(ch);
			}
			ch++;
			System.out.println();
		}
		
		ch--;
		
		for (int i = 1; i <= line / 2; i++) {
			for (int j = 1; j <= i; j++){
				System.out.print(" ");
			}
			for (int k = 1; k <= (line / 2 - i) * 2 + 1; k++) {
				System.out.print(ch);
			}
			ch--;
			System.out.println();
		}
	}
}

8.

		 A			1	5	1	1
		ABA			2	4	2	3
	   ABCBA		3	3	3	5
	  ABCDCBA		4	2	4	7
	 ABCDEDCBA		5	1	5	9
	ABCDEFEDCBA		6	0	6	11
class Demo8 {
	public static void main(String[] args) {
		char ch = 'A';
		int  l = 1;
		int num2 = 1;
		for (int i = 1; i <= 6; i++) {
			for (int j = 1; j <= 6 - i; j++) {
				System.out.print(' ');
			}
			for (int k = 1; k <= i * 2 - 1; k++) {
				
				if (k <= i) {
					System.out.print(ch);
					ch++;
				} else {
					ch-=2;
					System.out.print(ch);
					ch++;
				}
			}
			l = num2;
			ch = 'A';
			System.out.println();
		}
		
	}
}

9.

	/*				L		_		字母		个数
		 A			1		5					1
		ABA			2		4					3
	   ABCBA		3		3					5
	  ABCDCBA		4		2					7
	 ABCDEDCBA		5		1					9
	ABCDEFEDCBA		6		0					11
					
	 ABCDEDCBA		1		1	如何到e自减		左边字母	5		右边字母 4
	  ABCDCBA		2		2								4				 3
	   ABCBA		3		3								3				 2
		ABA			4		4								2				 1
		 A			5		5								1				 0
	*/
class Demo11 {
	public static void main(String[] args) {
		
		/*				L		_		字母		个数
			 A			1		5					1
			ABA			2		4					3
		   ABCBA		3		3					5
		  ABCDCBA		4		2					7
		 ABCDEDCBA		5		1					9
		ABCDEFEDCBA		6		0					11
						
		 ABCDEDCBA		1		1	如何到e自减		左边字母	5		右边字母 4
		  ABCDCBA		2		2								4				 3
		   ABCBA		3		3								3				 2
			ABA			4		4								2				 1
			 A			5		5								1				 0
		*/
		
		int line = 11;
		
		char ch = 'A';
		
		for (int i = 1; i <= line / 2 + 1; i++) {
			for (int j = 1; j <= line / 2 + 1 - i; j++) {
				System.out.print(' ');
			}
			for (int k = 1; k <= i * 2 - 1; k++) {
				if (k <= i) {
					System.out.print(ch);
					ch++;
				} else {
					ch -= 2;
					System.out.print(ch);
					ch++;
				}
			}
			ch = 'A';
			System.out.println();
		}
		
		int a = line / 2 ;
		int b = line / 2 - 1;
		
		for (int i = 1; i <= line / 2; i++) {
			for (int j = 1; j <= i; j++) {
				System.out.print(' ');
			}
			for (int k = a; k <= k && k != 0; k--) {
				System.out.print(ch);
				ch++;
			}
			for (int l = b; l <= l && l != 0; l--) {
				ch -= 2;
				System.out.print(ch);
				ch++;
			}
			b--;
			a--;
			ch = 'A';
			System.out.println();
		}
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值