众所周知,我们在初学很多编程语言时总会遇见一些要求打印菱形的问题,在这里放一个关于菱形打印的函数可供参考。
函数在使用时直接代入主函数即可,能够打印第一行为一个*,往后每次增加两颗*的菱形,长度不限,但输入的数据必须为奇数。import java.util.Scanner; //打印一个第一行一个*往后每次多两个*的菱形 public class Diamond { void diamondCon(){ Scanner scan = new Scanner(System.in); System.out.println("输入需要打印的菱形的长度(奇数):"); //输入打印菱形的长度,必须是奇数 int maxLength = scan.nextInt(); //定义后半个菱形的打印范围 int count = maxLength; for(int i=0;i<maxLength;i++){ if(i<(maxLength+1)/2){ for(int a=0;a<((maxLength+1)/2+i);a++){ if(a<(maxLength-1)/2-i){ System.out.print(" "); } else{ System.out.print("*"); } } System.out.println(""); }//前半个菱形打印完成 else{ count--; for(int s=0;s<count;s++){ if(s<(i-(maxLength-1)/2)){ System.out.print(" "); } else { System.out.print("*"); } }//后半个菱形打印完成 System.out.println(""); } } } }