三角形
public class 正三角 {
public static void main(String[] args) {
for (int j = 1; j <= 4; j++) {
for (int i = 4; i>=j; i--) {
System.out.print(" ");
}
for(int a = 1;a<=j;a++){
System.out.print("*");
}
for(int b = 1;b<j;b++){
System.out.print("*");
}
System.out.println();
}
}
}
我们可以看一下最终效果
几个简单的for循环组成了这个正三角,我们可以把这个三角形划分一下,这样更方便我们理解for循环的构成。
把这样一个图形分为三部分,首先进行第一个for循环
for (int j = 1; j <= 4; j++)
输入第一行,即j=1时;
for (int i = 4; i>=j; i--) { System.out.print(" "); }
此时这个for循环(用于输出第一个部分)要进行5次,第5次i<j,所以输出4个空格后跳出循环;
for(int a = 1;a<=j;a++){ System.out.print("*"); }
此时这个for循环(用于输出第二个部分)要进行2次,第2次a>j,所以输出一个 * 后跳出循环;
for(int b = 1;b<j;b++){ System.out.print("*"); }
此时这个for循环(用于输出第三个部分)要进行1次,但b=j,所以第一次循环中断,什么都不输出,这样第一轮循环就进行完了,接着进行第二轮循环,即j=2时..........
平行四边形
public class 平行四边形 {
public static void main(String[] args) {
for (int j = 1; j <= 4; j++) {
for (int i = 1; i<j; i++) {
System.out.print(" ");
}
for(int a = 4;a>=j;a--){
System.out.print("*");
}
for(int b = 1;b<j;b++){
System.out.print("*");
}
System.out.println();
}
}
}
最终效果:
平行四边形和三角形的思路相同,划分为三部分;
剩下的for循环和三角形的循环类似,只有输出顺序不同。