利用循环的菱形图形

第一种:

public static void main(String[] args){
        printHollow(2);   //输出菱形的行数
       
        }
  public static void printHollow(int size){
            if(size%2==0){
                size++;
            }//非偶数的菱形
            for(int i=0;i<size/2+1;i++){
                for(int j=size/2+1;j>i+1;j--){
                    System.out.print(j);//输出左上角的数字
                }
                for(int j=0;j<2*i+1;j++){
                if(j==0||j==2*i){
                    System.out.print(i);//输出菱形的上边框
                }
                else{
                    System.out.print(j);//填充菱形
                }
            }
                System.out.println("");//换行
            }
            for(int i=size/2+1;i<size;i++){
                for(int j=0;j<i-size/2;j++){
                    System.out.print(j);
                }
                for(int j=0;j<2*size-1-2*i;j++){
                        if(j==0||j==2*(size-i-1)){
                    System.out.print(i);//输出菱形的下边框
                }else{
                    System.out.print(j);//填充菱形
                    }
                }
                System.out.println("");//换行
            }

第二种:

 public static void main(String []args){
 Scanner s=new Scanner(System.in);
 System.out.println("请输入你所需要的行数:");
         int size=s.nextInt();
        if(size%2==0){
                size++;
            }//非偶数的菱形
        int t=size/2+1;
 for(int i=1;i<=t;i++){
 for(int j=1;j<=t-i;j++){
 System.out.print(" ");
 }
for(int j=1;j<=2*i-1;j++){
 if(j==1||j==2*i-1){
 System.out.print("*");
 }
else
 {
 System.out.print(" ");
 }
 }
System.out.println();
 }
 for(int i=t-1;i>0;i--){
for(int j=1;j<=t-i;j++){
 System.out.print(" ");
 }
for(int j=1;j<=2*i-1;j++){
 if(j==1||j==2*i-1){
 System.out.print("*");
 }
else{
 System.out.print(" ");
 }
 }
    System.out.println();
    }
}

posted @ 2018-07-20 22:14  我的未来需要你  阅读(147)  评论(0)    收藏  举报