gpt4 book ai didi

java - While 语句中整数的最小值和最大值

转载 作者:行者123 更新时间:2023-12-02 12:06:04 25 4
gpt4 key购买 nike

我是 Java 初学者,正在通过类(class)学习,但是当尝试执行 while 语句时,有人可以输入 0 到 100 之间的数字,直到他们输入 999,然后给出输入的数字数,最高数、最低数和所有数的平均值。

我目前拥有的代码导致 999 第一次没有注册,最高和最低数字都是多位数字,数字数量包括超出限制的任何数字,999 也是如此平均值。

这是我所拥有的:

import java.util.Scanner;

public class TestScoreStatistics {

public static void main(String[] args) {
int numberOfScores = 0;
int highest;
int lowest;
double average;
Integer score = 0;
int sumOfScores = 0;
Scanner input = new Scanner(System.in);

System.out.println("Please enter a grade or enter 999 to finish >> ");
score = input.nextInt();
sumOfScores = sumOfScores + score;

while (score < 100 || score > 0) {
++numberOfScores;
System.out.println("Please enter a grade or enter 999 to finish >> ");
score = input.nextInt();
sumOfScores = sumOfScores + score;
++numberOfScores;

while (score > 100 || score < 0) {
System.out.println("You entered an invalid score. Please enter a valid test score.");
System.out.println("Please enter a grade or enter 999 to finish >> ");
score = input.nextInt();
sumOfScores = sumOfScores + score;

if (score == 999) {
highest = score.MIN_VALUE;
lowest = score.MAX_VALUE;
average = sumOfScores / numberOfScores;
System.out.println("Number of Scores you entered: " + numberOfScores);
System.out.println("Highest Score: " + highest);
System.out.println("Lowest Score: " + lowest);
System.out.println("Average Score: " + average);
}
}
}
}
}

谢谢。

最佳答案

考虑这一行

while(score < 100 || score > 0)

如果分数是999,你认为它包含在内吗?

如果您使用简单的调试,您会立即发现这一点

关于java - While 语句中整数的最小值和最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46902998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com