正在进行随机挑战,但有问题



//Java嵌套循环,如果用户输入小于1且大于11,则必须显示错误消息。实现java嵌套for循环。

import java.util.Scanner;
class Main {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the size: ");
int size = input.nextInt();
if (size < 1 && size > 11)
System.out.println("INVALID NUMBERS");
for (int rows = size; size > 0; rows++) {
for (int colums = size; colums < 11; colums++) {
System.out.print("#");
}
}
System.out.println();
}
}

标签

if(size<1 && size>11)

大小不能同时小于1和大于11。

这里需要一个逻辑OR:

if(size<1 || size>11)

不完全确定你的意思,但据我所知,这就是你想要的?

int size=input.nextInt(); 
if(size<1 || size>11) {
System.out.println("INVALID NUMBERS");
}
else{
for (int rows=size;size>0;rows++){ 
for(int colums=size;colums<11;colums++){ 
System.out.print("#"); 
} 
} 
}

首先,这个问题不是很详细,也没有提到最终结果应该是什么样子。

据我所知,当输入的大小大于0时,此代码将导致无限循环,因为行:-对于(int rows=size;size>0;rows++(,循环将是无限的,因为测试条件总是大于零。

最新更新