下面的代码既包含打印菱形也包含打印三角形
被注释了的代码是打印三角形
打印菱形:
输入:
打印的行数(行数只能为奇数,否则无法构成菱形)
打印三角形:
输入:
打印的行数(对行数奇偶性无要求)
import java.util.Scanner;
//打印星号形成的三角形或菱形
public class PrintDiamand {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
System.out.println("请输入要打印的行数:");
int n=input.nextInt();
// //打印三角形
// for(int i=1;i<=n;i++){
// //打印空格
// for(int j=1;j<=n-i;j++){
// System.out.print(" ");
// }
// //打印星号
// for (int k=1;k<=2*i-1;k++){
// System.out.print("*");
// }
// System.out.println();
//
// }
//打印上半菱形
for(int i=1;i<=n/2+1;i++){
//打印空格
for(int j=1;j<=n/2+1-i;j++){
System.out.print(" ");
}
//打印星号
for (int k=1;k<=2*i-1;k++){
System.out.print("*");
}
System.out.println();//每打印完一行进行换行
}
//打印下半菱形
for(int i=n/2+2;i<=n;i++){
//打印空格
for(int j=1;j<=i-(n/2+1);j++){//i-(n/2+1)是指星号前面的空格数
System.out.print(" ");
}
//打印星号
for (int k=1;k<=(n-i+1)*2-1;k++){//(n-i+1)*2-1是指该行的星号个数
System.out.print("*");
}
System.out.println();//每打印完一行进行换行
}
}
}