Java实现打印一个菱形的效果
分析思路:利用打印等腰三角形的原理来实现,利用while循环来控制行数。
代码:
package Homework1210;
import java.util.Scanner;
//实现打印菱形的效果
public class PrintRhombus {
public static void main(String[] args) {
//实现思路,利用打印等腰三角形的原理来实现
//如果用户输入奇数则打印菱形,否则会提示用户输入奇数
Scanner input = new Scanner(System.in);
int oddNum = 0;
int num =0;
System.out.print("请输入行数:");
oddNum = input.nextInt();
while(oddNum%2==0){
System.out.print("请输入奇数:");
oddNum = input.nextInt();
//跳出while循环
continue;
}
num = (oddNum+1)/2;
//打印等腰三角形
for(int i = 1;i <= num;i++) {
//打印空格
for(int j = 1;j <= num-i;j++) {
System.out.print(" ");
}
//打印*
for(int k = 1;k <= 2*i-1;k++) {
System.out.print("*");
}
//打印一次就换行
System.out.println();
}
//打印等腰三角形的下半部分
for(int i1 = num - 1;i1 > 0;i1--) {
//打印空格
for(int j1 = 1;j1 <= num-i1;j1++) {
System.out.print(" ");
}//空格打印结束接下来接着打印*
for(int k1 = 1;k1 <= 2*i1-1;k1++){
System.out.print("*");
}//*打印结束后,完成第一行,接着应该换行,接下来应该换行
System.out.println();//执行换行
}
}
}
运行结果: