☞实现要求
如图,打印以下效果
☞实现思路
//用i控制行数,用j控制星星的数量,行数与星星数量相等且无变化就是矩形
//用i控制行数,用j控制空格数量来体现星星到左边的距离,数好每一行星星的数量并列出来,发现是个等差数列,那么找到这个等差数列与行数之间的关系,逐行打印出来就是三角形
//用i控制行数,用j控制空格数量来体现星星到左边的距离,用k控制列数
☞代码内容
|--矩形
1 /** 2 * 3 * 功能描述: 打印矩形 4 * 5 * 6 * @Author: apple. 7 * @Date: 2019/11/21 7:10 PM 8 */ 9 public class Demo01 { 10 public static void main(String[] args) { 11 //外层循环 控制行数 输出一行星星 12 for (int i = 0; i < 5; i++) { 13 //内层循环 控制列 输出一行里面的5列星星 14 for (int j = 0; j <5; j++) { 15 System.out.print("*"); 16 }//换行 17 System.out.println(); 18 } 19 } 20 }
|--平行四边形
1 /** 2 * 3 * 功能描述: 平行四边形 4 * 5 * 6 * @Author: apple. 7 * @Date: 2019/11/21 7:45 PM 8 */ 9 // public static void main(String[] args) { 10 //外层循环 控制行数 输出一行星星 11 for (int i = 0; i <5; i++) { 12 //内层循环 空格数 13 for (int j = 0; j <=5-i; j++) { 14 System.out.print(" "); 15 }//内层循环星星数 16 for (int k = 0; k <=5; k++) { 17 System.out.print("*"); 18 }//换行 19 System.out.println(); 20 } 21
|--三角形
1 /** 2 * 3 * 功能描述: 三角形 4 * 5 * 6 * @Author: apple. 7 * @Date: 2019/11/21 7:54 PM 8 */ 9 //外层循环控制行 10 for (int i = 1; i <=5; i++) { 11 //内层循环控制空格 12 for (int j = 1; j <=5-i ; j++) { 13 System.out.print(" "); 14 } 15 //控制星星数量 16 for (int k = 1; k <=(2*i)-1; k++) { 17 System.out.print("*"); 18 }//换行 19 System.out.println(); 20 }
☞运行结果
双重循环的使用
- 外层循环变量变量变化一次,内层循环变化一遍
- 找规律很重要,固定写法可以记忆,代码理解
- 需先确定外层循环,内层循环
- 一定多敲两遍,举一反三