本关任务:用Java编写一个根据用户输入的整数,打印输出菱形图案。 注意:需要判断输入的整数(行数)是否能构成菱形,如果非法,则输出error。
时间: 2024-09-25 16:13:39 浏览: 15
菱形图案是一种常见的控制台图形输出练习,通常用于展示数字的排列形成对称的几何形状。在Java中,我们可以使用嵌套循环和条件语句来实现这个功能。下面是一个简单的示例,如何根据用户输入的整数打印出菱形:
```java
import java.util.Scanner;
public class DiamondPattern {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入菱形的行数:");
int n = scanner.nextInt();
if (n <= 0 || n % 2 == 0) { // 非法输入检查
System.out.println("Error: 行数必须大于0且为奇数");
return;
}
for (int i = 1; i <= n; i++) {
// 上半部分递增的行
for (int j = 0; j < n - i; j++) {
System.out.print(" ");
}
for (int k = 0; k < 2 * i - 1; k++) {
System.out.print("*");
}
System.out.println();
// 下半部分递减的行
if (i != n) {
for (int j = 0; j < i; j++) {
System.out.print(" ");
}
for (int k = 2 * (n - 1; k >= 0; k--) {
System.out.print("*");
}
System.out.println();
}
}
}
}
```
在这个程序中,我们首先获取用户输入的行数`n`,然后检查它是否小于等于0或为偶数。如果是,则输出错误信息并结束。接着,我们使用两个嵌套循环分别处理菱形上半部分和下半部分的星号打印,并添加适当的空格以保持对齐。