如果您要求用户“输入一个数字(1-99)或按0退出”,而用户输入了0,如何终止Java程序?

如果您要求用户“输入一个数字(1-99)或按0退出”,而用户输入了0,如何终止Java程序?,java,methods,netbeans,computer-science,Java,Methods,Netbeans,Computer Science,我为我的编程入门课程创建了一个程序,让你输入任何数字(1-99),它代表你的变化量,告诉你你有多少个25美分、10美分、5美分和1美分。示例:42美分等于1个25美分、1个10美分、1个5美分和2个便士)。无论如何,我问用户(“请输入变化量(1-99)或按0退出”)。如果他们按0,我将如何编写程序以终止?这就是我到目前为止所做的: //最低硬币数量计划 包装小型硬币 /** *@作者凯西·邦克 *@日期2020年3月31日 */ 导入java.util.Scanner 公营小型硬币{ publi

我为我的编程入门课程创建了一个程序,让你输入任何数字(1-99),它代表你的变化量,告诉你你有多少个25美分、10美分、5美分和1美分。示例:42美分等于1个25美分、1个10美分、1个5美分和2个便士)。无论如何,我问用户(“请输入变化量(1-99)或按0退出”)。如果他们按0,我将如何编写程序以终止?这就是我到目前为止所做的:

//最低硬币数量计划

包装小型硬币

/** *@作者凯西·邦克 *@日期2020年3月31日 */ 导入java.util.Scanner

公营小型硬币{

public static void main(String[] args) {
         //declare & initialize variables
        //Instantiating Scanner 

    Scanner input = new Scanner(System.in);

    int change = 0;
    int quarters = 0;
    int dimes = 0;
    int nickles = 0;
    int pennies = 0;

    //asking user for input
    System.out.print("Please Enter Amount of change(1-99) or ZERO TO EXIT:");

    //take input from the user
    change = input.nextInt();

     //loop through program while user enters numbers, stop when they enter 0
    while (change!=0){
        while (change >= 25){
            change = change - 25;
            quarters=quarters+1;
        }
        while(change>=10){
            change = change - 10;
            dimes = dimes + 1;
        }
        while(change>=5){
            change=change-5;
            nickles = nickles + 1;

        }
        while(change>=1){
            change = change - 1;
            pennies = pennies + 1;
        }
}

    System.out.println("Quarters:"+quarters);
    System.out.println("Dimes:"+dimes);
    System.out.println("Nickles:"+nickles);
    System.out.println("Pennies:"+pennies);

}

}

您可以使用System.exit(0)强制退出程序。在此处查找更多信息

在向用户打印之前,您可以执行以下操作:

/*
your while loops
*/
if (change == 0){
    System.out.println("exiting...");
    System.exit(0);
}
/*
your prints
*/
编辑:
实际上,您可以通过键入return而不是System.exit(0)退出该程序。但是System.exit(0)是一种更通用的方法,因为如果您不从main()函数返回,那么您的程序实际上不会退出

您可以使用Ahmed的答案,但不要将其放在while循环之后,而是放在您获得用户输入后,即

 change = input.nextInt();
这将阻止程序在while循环中进行计算,因为您不再需要代码来进行计算。以下是您可以使用的最终代码

public static void main(String[] args) {
     //declare & initialize variables
    //Instantiating Scanner 

    Scanner input = new Scanner(System.in);

    int change = 0;
    int quarters = 0;
    int dimes = 0;
    int nickles = 0;
    int pennies = 0;

    //asking user for input
    System.out.print("Please Enter Amount of change(1-99) or ZERO TO EXIT:");

    //take input from the user
    change = input.nextInt();

    if (change == 0) {
        System.out.println("exiting...");
        System.exit(0);
    } else {

        //loop through program while user enters numbers, stop when they enter 0
        while (change!=0){
            while (change >= 25){
                change = change - 25;
                quarters=quarters+1;
            }
            while(change>=10){
                change = change - 10;
                dimes = dimes + 1;
            }
            while(change>=5){
                change=change-5;
                nickles = nickles + 1;

            }
            while(change>=1){
                change = change - 1;
                pennies = pennies + 1;
            }
        }

        System.out.println("Quarters:"+quarters);
        System.out.println("Dimes:"+dimes);
        System.out.println("Nickles:"+nickles);
        System.out.println("Pennies:"+pennies);
    }

}

你的代码确实终止了-你到底在问什么?无论用户输入什么,你的程序都会退出,所以我不明白你在问什么。可以通过
change=input.nextInt()来改进;如果(改变)