为什么不对呢?
来源:5-2 编程练习
qq_慕尼黑7587302
2019-10-01 00:20:49
import java.util.Scanner;
public class MenuPrint{
public static void main(String[] args){
//使用输出语句输出菜单
Scanner sc = new Scanner(System.in);
System.out.println("输入数字,选择要执行的操作:");
System.out.println("1--继续下一关");
System.out.println("2--重玩该关卡");
System.out.println("0--退出");
//从键盘输入数据,存储到整型变量中
int i = sc.nextInt();
//使用while循环,并在循环中判断输入的数据是0还是1,并给出提示
while(1){
if(i == 1)
System.out.println("下一关开始了!");
else if(i == 2)
System.out.println("继续本关卡");
else{
System.out.println("退出!");
break;
}
}
//输出退出
}
}
2回答
好帮手慕酷酷
2019-10-06
同学你好,代码思路很棒,但是在实现上还有点问题:
1、循环的条件,应该是true,而不是1。具体如下:

2、需要循环输入,所以要将键盘输入放在while循环体中。具体如下:

3、根据题目要求,在循环最后要再显示菜单并继续输入数字,使界面更加美观,具体如下:

修改后的代码如下:
import java.util.Scanner;
public class MenuPrint{
public static void main(String[] args){
//使用输出语句输出菜单
Scanner sc = new Scanner(System.in);
System.out.println("输入数字,选择要执行的操作:");
System.out.println("1--继续下一关");
System.out.println("2--重玩该关卡");
System.out.println("0--退出");
//使用while循环,并在循环中判断输入的数据是0还是1,并给出提示
while(true){
int i = sc.nextInt();
if(i == 1)
System.out.println("下一关开始了!");
else if(i == 2)
System.out.println("继续本关卡");
else if(i==0){
System.out.println("退出!");
break;
}
System.out.println("输入数字,选择要执行的操作:");
System.out.println("1--继续下一关");
System.out.println("2--重玩该关卡");
System.out.println("0--退出");
}
//输出退出
}
}如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
52066
2019-10-02
有两个问题吧,第一个while循环条件里面不能写1可以写true
但是会出现第二个问题,那就是死循环
所以你得把键盘输入的语句放在循环里,这样每次都会等待输入,
直到输入的值不是1和2的时候就会跳出循环了
相似问题