猿问

用循环中断程序

我写了一个计算成绩的代码。但是如果我在控制台中输入 9999,那么程序应该会中断而没有任何输出。我该怎么做?我应该使用哪个循环?我尝试了一个while循环,但程序仍然给我输出..这是我的while循环代码,它不能正常工作。除了 while 循环外,该程序可以工作。我怎样才能更好地写这个?


import java.util.Scanner;

public class average {


    public static double average (double [] grade ){


        double sum = 0;

        int number = grade.length;


        for(int i = 0; i<grade.length; i++){

            sum+=grade[i];

        }


        double average = sum / number;

        return average;


    }


    public static void main (String [] args){

        Scanner s = new Scanner(System.in);

System.out.println("How much grades you add?");


int number = s.nextInt();


while(number == 9999){

    break;

}


double [] grade = new double [number];


System.out.println("Please enter : ");


for(int i = 0; i<grade.length; i++){

    grade[i] = s.nextDouble();

        }

        System.out.println("My grades are: ");

        for(int i = 0; i<grade.length; i++){

            System.out.println(grade[i] + " | ");


        }


        System.out.println("");

        System.out.println("My average: " +average(grade));


    }


}


慕村9548890
浏览 108回答 2
2回答

阿波罗的战车

您正在使用一个break,它只立即退出循环。如果你想退出程序,你应该像这样使用if和return:if(number&nbsp;==&nbsp;9999)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;return; &nbsp;&nbsp;&nbsp;&nbsp;}这会退出程序,因为使用return可以退出当前函数。当前函数是 main(),这是程序的主要代码。所以,如果你退出它,你将退出程序。在具有返回值的函数(非void函数)中,您需要像这样指定返回值:return&nbsp;9999;如果您在其他程序线程上,则需要调用System.exit(0)。

当年话下

你不需要打破任何循环,你只需要退出程序。if&nbsp;(number&nbsp;==&nbsp;9999)&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;System.exit();&nbsp; &nbsp;&nbsp;&nbsp;}
随时随地看视频慕课网APP

相关分类

Java
我要回答