用java写一个嵌套的for循环打印图案:

1 1 2 1 1 2 4 2 1 1 2 4 8 4 2 1
2024-11-26 18:27:33
推荐回答(3个)
回答1:

我也写一个方法

public class Test {

public static void main(String[] args) {

int line = 4;//控制输出的行数

printStars(line);

}

private static void printStars(int line) {
for (int i = 1; i <= line; i++) {

for (int j = line; j > 0; j--) {
if (j > i) {
System.out.print(" ");
} else {
System.out.print((int) Math.pow(2, i - j) + " ");
}
}

for (int m = i - 1; m >= 1; m--) {
System.out.print((int) Math.pow(2, m - 1) + " ");
}

System.out.println();
}
}

}

-------------
1
1 2 1
1 2 4 2 1
1 2 4 8 4 2 1

回答2:

public static void main(String as[]) {
for (int i = 0; i <= 3; i++) {
for (int j = 3 - i; j >= 0; j--) {
System.out.print(" ");
}
for (int m = 0; m < i; m++) {
System.out.print((int)Math.pow(2, m));
System.out.print(" ");
}
for (int m = i; m >= 0; m--) {
System.out.print((int)Math.pow(2, m));
System.out.print(" ");
}
System.out.println();
}
}

回答3:

public static void main(String[] args) {
int i=0;
int j=0;
int k=0;
int line=4; //行数
for(i=1;i for(j=line-i;j>=0;j--) {//1前面的空格数
System.out.print(" ");
}
for(j=0;j System.out.print(" "+(int)Math.pow(2, j));
}
for(k=i-2;k>=0;k--) {
System.out.print(" " + (int)Math.pow(2, k));
}
for(j=line-i;j>=0;j--) {//1后面的空格数
System.out.print(" ");
}
System.out.println(" ");
}
}