当输入1和2时候,为什么会出现死循环,怎么改
import java.util.Scanner;
public class MenuPrint{
public static void main(String[] args){
//使用输出语句输出菜单
System.out.println("==============");
System.out.println("请输入数字");
System.out.println("1--继续下一关");
System.out.println("2-- 重玩");
System.out.println("3--退出");
System.out.println("==============");
//从键盘输入数据,存储到整型变量中
Scanner sc= new Scanner(System.in);
// int d =sc.nextInt();
//使用while循环,并在循环中判断输入的数据是0还是1,并给出提示
while(true)
{
int d =sc.nextInt();
if(d==1){
System.out.println(" 下一关") ;
}
else if(d==2) {
System.out.println(" 重玩") ;
}
//输出退出
else if (d==3){
System.out.println(" 退出") ;
break;
}
}
}
}
正在回答 回答被采纳积分+1
同学你好,代码完成的不错,同学的代码当输入1和2时,并没有出现死循环哦~而是在等待下一次的输入操作,
建议根据题目要求,在循环最后要再显示菜单并继续输入数字,使界面更加美观,具体如下:
修改后的代码如下:
import java.util.Scanner; public class MenuPrint { public static void main(String[] args) { // 使用输出语句输出菜单 System.out.println("=============="); System.out.println("请输入数字"); System.out.println("1--继续下一关"); System.out.println("2-- 重玩"); System.out.println("3--退出"); System.out.println("=============="); // 从键盘输入数据,存储到整型变量中 Scanner sc = new Scanner(System.in); // int d =sc.nextInt(); // 使用while循环,并在循环中判断输入的数据是0还是1,并给出提示 while (true) { int d = sc.nextInt(); if (d == 1) { System.out.println(" 下一关"); } else if (d == 2) { System.out.println(" 重玩"); } // 输出退出 else if (d == 3) { System.out.println(" 退出"); break; } System.out.println("=================="); System.out.println("输入数字,选择要执行的操作"); System.out.println("1--继续下一关" ); System.out.println( "2--重玩"); System.out.println("3--退出"); System.out.println("=================="); } } }
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星