引言
之前面试,有一家公司需要打印菱形,说了下思路,人家要求写出来,比较紧张,没有写出来,现在将完整代码补上。
import java.util.Scanner; public class Test { private static Scanner sc; public static void main(String[] args) { System.out.println("请输入一个奇数"); sc = new Scanner(System.in); String s = sc.nextLine(); int number; try { number = Integer.parseInt(s); } catch (NumberFormatException e) { System.out.println("请输入一行数字"); return; } if (number % 2 == 0) { System.out.println("请输入奇数"); return; } print(number); } private static void print(int number) { int i, j; for (i = 1; i <= (number + 1) / 2; i++) { for (j = 1; j <= (number + 1) / 2 - i; j++) { System.out.print(" "); } for (int m = 1; m <= 2 * i - 1; m++) { System.out.print("*"); } System.out.print("\n"); } for (i = 1; i <= (number - 1) / 2; i++) { for (int m = 1; m <= i; m++) { System.out.print(" "); } for (int a = 1; a <= number - 2 * i; a++) { System.out.print("*"); } System.out.print("\n"); } } }