1. 程式人生 > >使用JAVA輸出各種星圖案

使用JAVA輸出各種星圖案

一. 編者按:

網際網路上關於輸出*圖形的Java程式碼數不勝數,本人剛進入Java世界,關於Java的程式碼皆為本人學習程式碼,供大家交流和參考,若有不足或者錯誤還請指正.QQ1164795044

二.輸出效果圖 以及程式碼
2.1 直線星
*
*
*
*
*
public class ExerciseOne {
	public static void main(String[] args) {
		int starLine = 9;
		for (int i = 0; i < starLine; i++) {
			System.out.println("*");
		}
	}
}


2.2 階梯星
*
**
***
****
*****
******
public class ExerciseTwo {
   public static void main(String[] args) {
	   int starLine=11;   //改變starLine的大小輸出不同的效果
	   for(int i=1;i<=starLine;i++) {
		   for(int j=1;j<=i;j++) {
			   System.out.print("*");
		   }
		  System.out.println();
	   }
   }   
}

2.3 金字塔星
          *
        ***
      *****
    *******
  *********
***********
public class ExerciseThree {
	public static void main(String[] args) {
		int starLine = 9;   //改變starLine的值輸出不同大小的效果
		for (int i = 1; i <= starLine; i++) {
			// for迴圈輸出空格
			for (int j = 1; j <= starLine - i; j++) {
				System.out.print(" ");
			}
			// for迴圈輸出*
			for (int k = 1; k <= 2 * i - 1; k++) {
				System.out.print("*");
			}
			System.out.println();
		}
	}
}


2.4 傘型星
          *
        ***
      *****
    *******
  *********
***********
          *
          *
          *
          *
          *
public class ExerciseFour {
	public static void main(String[] args) {
		String str = "";
		int starLine = 11; //改變starLine的值輸出不同大小的效果
		// 1 迴圈輸出上半部分
		for (int i = 1; i <= starLine; i++) {
			// 1.1 for迴圈輸出空格
			for (int j = 1; j <= starLine - i; j++) {
				System.out.print(" ");
			}
			// 1.2 for迴圈輸出*
			for (int k = 1; k <= 2 * i - 1; k++) {
				System.out.print("*");
			}
			System.out.println();
		}
		// 2 迴圈輸出傘柄
		// 2.1 製作迴圈輸出的空格
		for (int i = 0; i < starLine; i++) {
			str += " ";
		}
		// 2.2 輸出傘柄
		for (int j = 0; j < starLine; j++) {
			System.out.println(str + "*");
		}
	}
}


2.5 鑽石星
        *
      ***
    *****
  *******
*********
  *******
    *****
      ***
        *
public class ExerciseFive {
			public static void main(String[] args) {
				// 1 輸出上半部分
				int starLine = 11;   //改變starLine的值數出不同的效果
				for (int i = 1; i <= starLine; i++) {
					// 1.1 輸出空白部分
					for (int j = 1; j <= starLine - i; j++) {
						System.out.print(" ");
					}
					// 1.2 輸出*
					for (int k = 1; k <= 2 * i - 1; k++) {
						System.out.print("*");
					}
					System.out.println();
				}
				// 2 輸出下半部分

				for (int i = 1; i <= starLine - 1; i++) {
					// 2.1 輸出空格
					for (int j = 1; j <= i; j++) {
						System.out.print(" ");
					}
					// 2.2 輸出*
					for (int k = 1; k <= (-2 * i + 2 * starLine - 1); k++) {
						System.out.print("*");
					}
					System.out.println();
				}
			}
		}


2.6 空心鑽石星
     *
   * *
  *   *
 *     *
*       *
 *     *
  *   *
   * *

    *

public class ExerciseSix {
		public static void main(String[] args) {
			// 定義上部分輸出的行數
			int starLine = 5;    //改變starLine的值輸出不同大小的效果
			// 1 輸出上部分
			for (int i = 1; i <= starLine; i++) {
				// 1.1 輸出左側的空格
				for (int j = 1; j <= starLine - i; j++) {
					System.out.print(" ");
				}
				// 1.2 輸出左側的*
				System.out.print("*");
				// 1.3 輸出中間的空格
				for (int k = 2; k < 2 * i - 1; k++) {
					System.out.print(" ");
				}
				// 1.4 輸出右側的*
				if (i >= 2) {
					System.out.print("*");
				}
				System.out.println();
			}
			// 2 輸出下部分
			for (int i = 1; i <= starLine - 1; i++) {
				// 2.1 輸出左側的空格
				for (int j = 1; j <= i; j++) {
					System.out.print(" ");
				}
				// 2.2 輸出左側的*
				System.out.print("*");
				// 2.3 輸出中間的空格
				for (int k = 1; k <= (-2 * i + 2 * starLine - 3); k++) {
					System.out.print(" ");
				}
				// 2.4輸出右側的*
				if (i <= starLine - 2) {
					System.out.print("*");
				}
				System.out.println();
			}

		}
	}