打印菱形

package com.zhong.java;

import java.util.Scanner;

import org.junit.Test;

public class Rhombus{
    
        static void prinBlank(int cur )//打印空格的方法 
        {   
            for(int a=1;a<=cur;a++)
            {
                System.out.print(" ");
            }
        }
     static void prinStra(int cur,String sign){//打印*的方法
            for(int i=1;i<=cur;i++){
                System.out.print(sign);
            }
        }
     static void prinEnter(){//换行的方法
            System.out.println();
        } 
     public static void runCenter(int level,String sign){//主方法
           for(int i=1;i<=level;i++){
               prinBlank(level-i); //空格的次数
               if(i==1){
                   prinStra(1, sign);  
               }else{
                prinStra(1, sign);
                prinBlank(2*i-3);
                prinStra(1, sign);
               }
                prinEnter();
           }
           for(int i =1;i<=level-1;i++){           
                prinBlank(i);            
                if(i==level-1){
                    prinStra(1, sign);
                    }else{
                    prinStra(1, sign);
                    prinBlank(2*level-2*i-3);
                    prinStra(1, sign);
                    }
                    prinEnter();
            }

        }
    public static void main(String[] args) {
        
        Scanner scr = new Scanner(System.in);
        System.out.println("请输入层数(为整数):");
        int n;
//        String str;
        if(scr.hasNextInt()&&(n=scr.nextInt())>0){ 
               System.out.println("请输入图形码:");
              String str= scr.next();  
              runCenter((n+1)/2,str);
            
        }else{
            System.out.println("输入错误!");
            
        }
    }
    
}
//行数,层数

 

posted on 2017-08-10 09:41  丿随缘  阅读(197)  评论(0编辑  收藏  举报