0

我有我为一门课程创建的这个 java 代码。我已经尝试并继续失败执行中断语句。

有人可以指出我正确的方向吗?

import java.util.Scanner;

public class gradeAverage {

    public static void main( String[] args ){
            Scanner input = new Scanner(System.in);
            int input1;
            int input2;
            int input3;

            //Calculate
            int studentAvg;

            //Prompt for first user input or break if input = q
            System.out.print( "Enter first student grade or q to quit: ");
             if {
                (input1=input.nextInt() = q)
                 break;
                else
                    input1=input.nextInt() =;
    }
            //Prompt for second user input or break if input = q
            System.out.print( "Enter second student grade or q to quit: ");
            input2=input.nextInt();

            //Prompt for third user input or break if input = q
            System.out.print( "Enter third student grade or q to quit: ");
            input3=input.nextInt();

            studentAvg=(input1+input2+input3)/3;

            System.out.printf( "The Student's grade average is %d\n" , studentAvg);

    }
}
4

3 回答 3

5

break 语句需要在循环或某种(forwhiledo)内,您不能跳出if条件。

如果您将代码放入其中:

while(true) {
  ...
}

然后你的休息会很好。

if 语句的格式也是:

if (condition) {
  ...
} else {

}

您的代码中似乎有一个if { (condition)...

哦,=是对变量的赋值,==是相等检查,你把它们弄混了。

于 2013-03-18T01:59:18.367 回答
0

首先,您的 If 语句语法完全错误。这需要纠正。

其次,Break 语句用于中断其间的循环。所以它应该像这样使用

而 { ...... 休息; ......

}

或者

为了(.........){

休息; ........ }

于 2013-03-18T02:27:49.920 回答
-2

//假设输入是一个扫描器对象。

System.out.print( "Enter first student grade or q to quit: ");
             if ((input1=input.nextline()).equalsIgnoreCase("q")) //do you want to use == or =?
                 break;

                else{
                   //do something
    } 

这应该为您解决问题。干杯。

于 2013-03-18T02:04:47.230 回答