for语句嵌套循环使用

案例:

要求:输出“*”组成的几行几列拼成的长方形和三角形;

分析:输出的应该是单个*组成的图形,所以要考虑到每行每列的*个数

1.要想组成三行四列的长方形图形;

    则需要每行先排好四个*,再连续执行下面的程序,输出三行同样的****

for(int i=0;i<4;i++){
   System.out.print("*");//先不换行,直接按for语句条件,并排的输出****
}
   System.out.println();//换行,使上一个程序输出的结果与下一个程序的不在同一行;


2.优化----嵌套循环

for(int i=0;i<3;i++){
//当i<3这个控制条件时,程序跳入下一个for语句中,直至整个程序结束;所以i=0,1,2时,第二个for会执行三次;
   for(int j=0;j<4;j++){
//当i=0,1,2时,程序执行里面的for语句,j=0,1,2,3会不换行的依次输出****
       System.out.print("*");
    }
      Sysnte.out.println();//在第二个for语句之外,第一个for语句里面,所以当第二个for语句执行完一次,会自动跳转下一行。
}

3.要求打印一个三角形,则输出条件不变,for语句改变;


for(int i=0;i<5;i++){
//第一个for语句没有变化,i的值只是控制换的行数;

   for(int j=0;j<=i;j++){
//第二个for语句中的j的值会随着i的值得变化而变化,j<=i的控制条件会发生改变;

/*
(1)当i=0的时候,j<=0,第二个for语句运行一次就退出;
(2)当i=1的时候,j<=1,i值重新从i=0开始,运行两次;
(3)依次类推,当第一个for语句运行停止为止。
*/ 
   System.out.print("*");
	}
 System.out.println();
}



输出的图形:
*
**
***
****
*****
4.倒三角形
只需要改变第二个for语句的条件

for(int j=0;j<=5-i;j++)


 
  

你可能感兴趣的:(java基础)