Java实现打印空心的菱形。
今天来实现开心菱形的效果
分析思路:通过打印菱形的基础上来实现空心的效果。
空心的菱形就是在菱形的基础上来完成
代码:
package Homework1210;
import java.util.Scanner;
//实现打印空心的菱形
public class PrintHollowRhombus {
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();
//结束循环
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++) {
if(k==1 || k==(2*i-1)) {
//当k==1 或 k==(2*i-1)时打印*
System.out.print("*");
}else {
//否则打印空格
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++){
if(k1==1||k1==(2*i1-1)) {
//当k==1 或 k==(2*i-1)时打印*
System.out.print("*");
}else {
//否则打印空格
System.out.print(" ");
}
}//*打印结束后,完成第一行,接着应该换行,接下来应该换行
System.out.println();//执行换行
}
}
}
运行结果: