一、打印下图
/*
* for语句嵌套
* 需求:用*打印一个直角三角形,|\,5*5(最多)
*思路:外层循环控制行数,内层循环控制每行的*个数
*/
for(int i=0;i<5;i++) {
for(int j=0;j<=i;j++) //第一行打印1个,第二行打印2个,所以每行打印几个和i(外层)有关
{
System.out.print("*");
}
System.out.println();
}
二、打印下图
/*
* for语句嵌套
* 需求2:打印一个倒三角
*/
for(int i=0;i<5;i++) {
for(int j=5;j>i;j--) //因为打印每行越来越少,所以要j--。第一行5个,j>0,第二行4个j>1.....
{
System.out.print("*");
}
System.out.println();
}
一二总结:发现图形有多行时,每一行有很多列,要使用嵌套,原理:形象说法:大圈套小圈
三、打印九九乘法表
/*思路:外层为9行,内层的列数为第几个行数
*在for循环最内部做乘法
*/
for(int i=1;i<=9;i++) {
for(int j=1;j<=i;j++) {
System.out.print(" "+i+"*"+ j+"="+(i*j));
}
System.out.println();
}
四、打印正三角形
/*
* 需求打印一个正三角形(5*5)
* 思路:外层控制行数,内层第一个循环控制空格的个数,内层第二个循环控制每行*个数
*
*/
for(int i=1;i<=5;i++) {
for(int k=1;k<=(5-i);k++) //空格个数
{
System.out.print(" ");
}
for(int j=1;j<=i;j++) {
System.out.print("*"+" ");
}
System.out.println();
}