打印空心菱形 打印空心菱形 import java.util.Scanner; public class Homeworks7 { public static void main (String [] args){ //使用*打印菱形 Scanner sc = new Scanner(System.in); System.out.print("请输入想要打印的菱形的行数:"); while(true){ int line = sc.nextInt(); if(line%2==0){ System.out.print("对不起,你输入的菱形行数不符合要求,请输入奇数:"); continue ; } for (int i=1;i<=(line/2)+1;i++){ //控制菱形上半部分行数 for(int j=(line/2)+1;j>i;j--){ //控制菱形上半部分每行应该空几格 System.out.print(" "); //可先用#代替空格,方便观察 } for(int k=1;k<=(i*2-1);k++){ if(k==1 || k ==(i*2-1)){ //控制菱形上半部分每行应该有几个* System.out.print("*"); }else{ System.out.print(" "); //控制菱形空心部分 } } System.out.println(""); } for(int i=1;i<=line/2;i++){ //控制菱形下半部分行数(比上半部分少一行) for(int j=1;j<=i;j++){ //控制菱形下半部分每行应该空几格 System.out.print(" "); //可先用#代替空格,方便观察 } for (int k=((((line/2)-i)+1)*2)-1;k>=1;k--){ //控制菱形下半部分每行应该有几个* if(k==1 || k==((((line/2)-i)+1)*2)-1 ){ System.out.print("*"); //控制菱形空心部分 }else{ System.out.print(" "); } } System.out.println(""); } break; } } }