我正在试图从循环中查找最大数,并且它是出现次数。这是我迄今为止编写的代码。从循环中查找最大数
public class MaxNumbers {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int max = 0;
int number = 0;
int count_max = 0;
while (true) {
number = input.nextInt();
if (number == 0) {
break;
}
number = max;
if (max > number) {
max=number;
count_max++;
}
}
System.out.println("Max Number: " + number);
System.out.println("Occurences: " + count_max);
}
我在输出中只有零,我正在做的任何逻辑错误?
您正在打破循环,如果数量== 0也许你从来没有让一个迭代检查input.nextInt()''的价值,你的'while'语句看起来无限的我有一种感觉,编译器做了一些奇怪的优化周围,你的逻辑获得最大数量(最高数字?)是值得怀疑的 – 2012-02-06 00:50:05
如果这是一个家庭作业问题,那么请标记它。 :) – Erica 2012-02-06 01:14:05
如果下面的代码示例不起作用,请输出变量'number'或使用调试器来查看发生了什么。 – UmNyobe 2012-02-06 01:51:12