您的任务是从用户处读取一对正整数 L 和 H。 L 和 H 都将小于 21。然后您的程序会打印出一个空星号框,其中包含 L 水平星号和 H 垂直星号。
盒子是空的。例如,如果输入数据是 6 和 4,那么输出应该是:
package com.company;
import java.util.Scanner;
import java.lang.String;
class Unfilled {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("First int: ");
int L = keyboard.nextInt();
System.out.println("Second Int: ");
int H = keyboard.nextInt();
if ((L < 21) && (H < 21)) {
for(int i = 0; i < L; i++){
System.out.print("*");
}
}
}
}
最佳答案
修改您的主要方法,如下所示。我还没有测试过,但它应该会给你一些想法。
public static void main(String[] args) {
try (Scanner keyboard = new Scanner(System.in)) {
System.out.println("First int (length): ");
int L = keyboard.nextInt();
System.out.println("Second Int (height): ");
int H = keyboard.nextInt();
if ((L > 0 && H > 0) && (L < 21 && H < 21)) {
for (int j = 0; j < H; j++) {
for (int i = 0; i < L; i++) {
System.out.print("*");
}
System.out.println();
}
return;
}
}
System.out.println("Bad input. Please enter values between [1-20].");
}
关于java - 为了让程序正常运行,我尝试了很多不同的方法。我正在尝试打印一个空心盒子,其中两个整数作为长度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58191577/