源码清单:

/** *//**
* SupperRhombus.java
* Java控制台超级菱形打印方法
* @author 邓超(CodingMouse)
* @version 0.1 2008-5-6
* 开发/测试环境:jdk1.6 + eclipse SDK 3.3.2
*/
//导入Scanner类和PrintStream类
import java.util.Scanner;
import java.io.PrintStream;

public class SupperRhombus ...{

public static void main(String[] args) ...{
Scanner input = new Scanner(System.in);
//循环标识
boolean con = true;
//菱形的行数
int line;

do ...{
con = false;
System.out.print("请输入要打印的菱形层数[不小于3的奇(整)数]:");
//获得控制台用户输入的菱形行数
line = input.nextInt();

if (line % 2 == 0 || line < 3) ...{
System.out.println("只能输入不小于3的奇(整)数!请重试!");
con = true;
}
} while (con);
//控制台输出提示
System.out.println(line + "层菱形图案如下: ");
//因为菱形的行数不能是偶数,要转为奇数
line = (line & 1) == 0 ? line + 1 : line;
PrintStream out = System.out; 

for (int i = 0 - line / 2 ; i <= line / 2 ; i++) ...{ 
for (int j = 0 - line / 2 ; j <= line / 2 ; j++) ...{
//把 == 改成 <= 或 >= ,还可产生其产的图形
//out.print(((Math.abs(i) + Math.abs(j)) == line / 2) ? "* " : " "); //空心菱形
//out.print(((Math.abs(i) + Math.abs(j)) <= line / 2) ? "* " : " "); //实心菱形
out.print(((Math.abs(i) + Math.abs(j)) >= line / 2) ? "* " : " "); //内嵌菱形
}
out.println();
}
}
}
执行效果:
请输入要打印的菱形层数[不小于3的奇(整)数]:11
11层菱形图案如下:
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * *
* * * * * *
* * * *
* *
* * * *
* * * * * *
* * * * * * * *
* * * * * * * * * *
* * * * * * * * * * *
本文介绍了一个使用Java编写的控制台程序,该程序能够根据用户输入的层数打印出一个超级菱形。程序通过循环和条件判断确保了输入的层数为不小于3的奇数,并实现了不同类型的菱形打印,包括空心、实心和内嵌菱形。
1906

被折叠的 条评论
为什么被折叠?



