打印一个空心菱形,菱形的行数由键盘录入控制
public class Test02 {
private static int hangshu;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true){
if (sc.hasNextInt()) {
hangshu = sc.nextInt();
if(hangshu %2 != 0){
break;
}else{
System.out.println("请输入一个奇数");
}
} else {
System.out.println("输错了");
}
}
int yiban = hangshu / 2 + 1;
int yibanduo = hangshu / 2;
for (int k = 1; k <= yiban; k++) {
for (int i = 1; i <= (yiban - k); i++) {
System.out.print(" ");
}
System.out.print("*");
for (int i = 1; i <= ((k - 2) * 2 + 1); i++) {
System.out.print(" ");
}
if (k != 1) {
System.out.print("*");
}
System.out.println();
}
for (int k = yibanduo; k >= 1; k--) {
for (int i = 1; i <= (yiban - k); i++) {
System.out.print(" ");
}
System.out.print("*");
for (int i = 1; i <= ((k - 2) * 2 + 1); i++) {
System.out.print(" ");
}
if (k != 1) {
System.out.print("*");
}
System.out.println();
}
}
}
|
|