java—执行“是”或“否”,其中“是”继续,但在询问后终止

4uqofj5v  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(334)

在输入所有数字之后,循环终止,程序结束,询问是否继续。

import java.util.Scanner;

public class coding {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner in = new Scanner (System.in);
        String choose;
        int i;
        double ans;

        do {
            int num1= in.nextInt();
            int num2= in.nextInt();
            int num3= in.nextInt();
            int num4 = in.nextInt();
            int num5 = in.nextInt();
             ans = (num1+num2+num3+num4+num5)/5;
            System.out.println(ans);
            //in.nextLine();
            System.out.println("Continue the program Yes or N?");

            choose = in.nextLine();

        }while (choose.equalsIgnoreCase("Yes"));

    }
biswetbf

biswetbf1#

节目将继续进行 Yes 并将结束于 N ,因此需要将while条件更改为: !choose.equalsIgnoreCase("N") 在其不为真时进行检查,然后进行迭代。
其次你用了 choose = in.nextLine(); 在下一次迭代中会导致错误,您需要将其更改为 choose = in.next(); 不出错地运行。 choose = in.nextLine(); 它导致在的下一次调用中存储enter值 in.nextInt() 并抛出一个错误。

Scanner in = new Scanner(System.in);
String choose;
int i;
double ans;

do {
    int num1 = in.nextInt();
    int num2 = in.nextInt();
    int num3 = in.nextInt();
    int num4 = in.nextInt();
    int num5 = in.nextInt();
    ans = (num1 + num2 + num3 + num4 + num5) / 5;
    System.out.println(ans);
    // in.nextLine();
    System.out.println("Continue the program Yes or N?");
    choose = in.next();

} while (!choose.equalsIgnoreCase("N"));

相关问题