利用循环打印图形

1.打印金字塔。
 public class OutGoldWord {
    public static void main(String[] args) {
        int n=5;
        for(int i=1;i<=n;i++){
            int times=2*i-1;
            int time=0;
            while(time!=(n-i)){
                System.out.print(" ");
                time++;
            }
            while(times!=0){
                System.out.print("*");
                times--;
            }
            System.out.println();
        }
    }
}

2.实心菱形
public class Test {

	public static void main(String[] args) {
		for(int i=0;i<=3;i++){
			for(int j=0;j<3-i;j++){
				System.out.print(" ");
			}
			for(int k=0;k<2*i+1;k++){
				System.out.print("*");
			}
			System.out.println();
		}
		for(int i=0;i<3;i++){
			for(int k=0;k<=i;k++){
				System.out.print(" ");
			}
			for(int j=0;j<5-2*i;j++){
				System.out.print("*");
			}
			System.out.println();
		}
	}

}

3.空心菱形

---方法1

public class DiamondTest {

	/**打印空心菱形
	 * @param args
	 */
	public static void main(String[] args) {
		int size=10;
		if(size%2==0){
			size++;
		}
		for(int i=0;ii+1;j--){
				System.out.print(" ");   //输出左上角位置的空白
			}
		
		for(int j=0;j<2*i+1;j++){
			if(j==0||j==2*i){
			System.out.print("*");  //输出菱形上半部边缘
			}else{
				System.out.print(" ");   //输出菱形下半部空心
		    }
	      }
		System.out.println(" ");
		}
		for(int i=size/2+1;i
---方法2

/**
 * @author fcs
 * 打印空心菱形
 * 2014-10-7
 */
public class Test {
	public static void main(String[] args) {
		for(int i=0;i<6;i++){//首先打印上面6行
			for(int j=0;j<5-i;j++){//找出左上部分每行空白与行数的关系
				System.out.print(" ");
			}
			System.out.print("*");//空白结束用*封尾
			for(int k=0;k<2*i-1;k++){//每行两个*之间的空白与行数的关系
				System.out.print(" ");
			}
			if(i>0)
			System.out.print("*");//除第一行之外,剩下的几排末尾都有一个星号
			System.out.println();
		}
		for(int i=0;i<5;i++){//处理下面4行
			for(int j=0;j


你可能感兴趣的:(Java基础)