/**
* 题目:打印出如下图案(菱形)
* *
* ***
* *****
* *******
* *****
* ***
* *
* 1.程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制
* 行,第二层控制列。
*/
package prictice;
import java.util.Scanner;
public class PrintXing {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
for (int i = 0; i < (num + 1) / 2; i++) {
for (int j = 0; j <= num / 2 - i; 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 = num / 2; i > 0; i--) {
for (int j = 0; j < num / 2 + 2 - i; j++) {
System.out.print(" ");
}
for (int j = 0; j < 2 * i - 1; j++) {
if (j == 0 || j == 2 * i - 2) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
}
}
-----------------------------------------
控制台随机输入一个数字,例如11(由于发帖这里行间距不一样,打印的图形比较奇怪)
11
*
* *
* *
* *
* *
* *
* *
* *
* *
* *
*
|