多重循环(for的二重循环)
1、打印正等腰三角形;
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 4-i; j++) {
System.out.print(" ");
}
// 打印空格
for (int k = 0; k <2*i+1; k++) {
System.out.print("*");
}
// 打印星号
System.out.println();
}
运行结果为:
外层循环控制行数,内层循环控制列数。由运行结果可知外层空格数在递减,内层星号在递增。
2、 若打印倒三角
for (int i = 1; i <=5; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= (5 - i) * 2 + 1; k++) {
System.out.print("*");
}
System.out.println();
}
运行结果为:
3、打印菱形
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 4-i; j++) {
System.out.print(" ");
}
for (int k = 0; k <2*i+1; k++) {
System.out.print("*");
}
System.out.println();
}
// 以上部分是上三角部分
for (int i = 1; i <=4; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= (4- i) * 2+1; k++) {
System.out.print("*");
}
System.out.println();
}
// 以上部分是下三角部分
运行结果:
4、打印菱形的边框
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 4-i; j++) {
System.out.print(" ");
}
for (int k = 0; k <2*i+1; k++) {
if (k==0||k==2*i) { //判断是否为首或者末
System.out.print("*");//如果是,打印星号
}else { //
System.out.print(" ");//如果不是,打印空格
} //
}
System.out.println();
}
// 以上部分是上三角部分
for (int i = 1; i <=4; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(" ");
}
for (int k = 1; k <= (4- i) * 2+1; k++) {
if (k==1||k==(4-i)*2+1) { //判断是否为首或者末
System.out.print("*");//如果是,打印星号
}else { //
System.out.print(" ");//如果不是,打印空格
} //
}
System.out.println();
}
// 以上部分是下三角部分
运行结果: