Java 如何输入字符以停止循环
我需要编写代码来计算用户输入的平均值(int)。然而,问题是,我还必须允许用户输入任意多的输入,并在输入字符(字母)时停止 如果我可以使用一个给定的限制,我就可以解决这个问题,但是因为限制可能是任何东西,我在编写一个可以计算平均值的公式时遇到了困难,因为任何用户的输入数量都可能不同Java 如何输入字符以停止循环,java,Java,我需要编写代码来计算用户输入的平均值(int)。然而,问题是,我还必须允许用户输入任意多的输入,并在输入字符(字母)时停止 如果我可以使用一个给定的限制,我就可以解决这个问题,但是因为限制可能是任何东西,我在编写一个可以计算平均值的公式时遇到了困难,因为任何用户的输入数量都可能不同 import java.util.Scanner; public class AvgGrades { public static void main(String[] args) { Sca
import java.util.Scanner;
public class AvgGrades {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter as many student grades as you like. Enter a character to stop.");
float total=0, avg;
int grades = input.nextInt();
for (int i = 0; i < grades.length; i++) {
grades[i] = input.nextInt();
total = total + grades[i];
}
input.close();
avg = total/grades.length;
System.out.println("Average student grade is "+avg);
}
}
import java.util.Scanner;
公共类平均等级{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入任意数量的学生成绩。输入要停止的字符”);
浮动总额=0,平均值;
int grades=input.nextInt();
对于(int i=0;i
输入为:
30
45.6
23.8
78.75
90
92
67.5
10.65
88
C
输出应为:
输入任意数量的学生成绩。输入要停止的字符。
学生平均成绩为:58.47774
我的输出是代码没有运行。这里是流程的草图。我将把把它变成一个完整的程序的细节留给你
float total = 0;
int count = 0;
while (scanner.hasNextFloat()) {
float num = scanner.nextFloat();
total += num;
count++;
}
float average = total / count;
您不需要存储单个数字。不仅如此,它还不需要编译。您有
grades。length
其中grades
声明为int
-不是数组。此外,您的示例输入不是整数,因此您不希望使用nextInt
进行扫描。顺便说一句,终止的非数字仍在等待扫描。如果您需要它,或者想要越过它,可以使用String s=scanner.next()代码>来使用它。