Java——如何循环测验直到用户决定退出?

标签 java while-loop prompt

我有以下简单的 Java 程序,它提示用户进行减法测验。有人可以引导我沿着正确的道路前进,如何实现一个不断生成数字、进行计算、提示用户并提供反馈直到用户选择停止的循环吗?我想这会涉及一个 while 循环,但是用户如何发出他们想要停止的信号?我知道我可以告诉他们“每当你想退出时按 ___”,但程序的其余部分不断提示用户输入一个整数......那么如果他们选择输入一个键来退出(假设“Q”)当向他们提出下一个问题并且计算机正在等待整数的命令行响应时(因为 Q 不是整数)?

import java.util.Random;
import java.util.Scanner;

public class MathQuiz
{

    public static void main( String [] args )
    {

        // random number generator
        Random rng = new Random();


        // scanner to get user's answer
        Scanner scan = new Scanner( System.in );


        // generates random number, 1 <= n <= 9
        int num1 = rng.nextInt( 10 );
        int num2 = rng.nextInt( 10 );


        // prompt, answer, user's answer, and feedback
        String prompt = "What is " + num1 + " - " + num2 + "?";
        int answer = Math.abs( num1 - num2 );
        int userAnswer = 0;
        String feedback = "That's correct, way to go!";


        // figure out which is larger
        if( num1 < num2 )
        {
            prompt= "What is " + num2 + " - " + num1 + "?";
        }

        System.out.println( prompt );
        userAnswer = scan.nextInt();


        if( userAnswer != answer )
        {
            feedback = "That is incorrect.";
        }

        System.out.println( feedback );


    }


}

最佳答案

首先删除最新的if

if( userAnswer != answer )
{
    feedback = "That is incorrect.";
}

并将其编辑为

do
{
    String feedback ;
    /*
    your program here
    */
    System.out.println("again 'Y'") ;
    choice= scan.nextLine() ;
}while("Y".equalsIgnoreCase(choice))

关于Java——如何循环测验直到用户决定退出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39320315/

相关文章:

Java 多线程 HTTP

bash - 是否有 grep : finding short lines in long patterns? 的反函数

c++ - char类型导致循环爆炸

macos - 如何在 osx 上永久更改 .bashrc 文件中的提示?

javascript - 使用 Javascript 使用 indexof value 返回第二个数组中的值

java - Apache POI 正在设置错误的单元格字体

java - 两个用户输入不同,但程序将它们识别为相同

java - 用 HashMap 进行反射

c - 如何通过从键盘获取任何值来打破 linux 上 C 中的 while 循环?

visual-studio - Visual Studio 预构建脚本在 windows/system32 中找不到 exe 文件