当我输入一个有非法分数提示的数字时,我的问题出现了,它仍然向我的计数器添加一个数字,并将该数字添加到总数中,因此平均值被丢弃。我一直在绞尽脑汁,尝试了几乎所有方法来弄清楚。代码有点草率,因为我还没有清理它,我只是想先整理一下移动部分。
public class StudentSentinel {
public static void main(String[] args) {
double score;
double total = 0.0;
double average;
int scoreCount = 0;
// create the Scanner object. Name it stdin
Scanner stdin = new Scanner(System.in);
// title at the top of the output
System.out.println(" student score report");;
// read the first score
System.out.printf("Enter a score (1-100, -1 to quit)" +
": ", scoreCount);
score = stdin.nextDouble();
scoreCount++;
while (score != -1.0) {
total += score;
System.out.printf("Enter a score (1-100, -1 to quit)" +
": ", scoreCount);
scoreCount++;
score = stdin.nextDouble();
if (score < -1)
System.out.println("Illegal score. Try again");
else if (score > 100) {
System.out.println("Illegal score. Try again");
}
// increment the loop counter
}
// end of for loop
average = total / scoreCount;
System.out.printf("\nThe average score for %d students is %8.2f\n",
scoreCount, average);
} // end of main
} // end of class definition
POPMUISE
至尊宝的传说
相关分类