繁体   English   中英

输出打印初始化的最小值而不是打印更新的一个

[英]Output printing initialized minimum value instead of printing updated one

下面是我的代码,它应该打印特定小时的最高温度。 它总是在 5 处打印 -1000。

package javaPracticeNotes;

import java.util.Scanner;

public class Lab3_7 {
    public static void main(String[] args) {
        int temp;
        int maxtemp = -1000;
        int timeAtMax = 0;
        int hour;

        for (hour = 1; hour <= 5; hour++) {

            Scanner scan = new Scanner(System.in);
            System.out.println("Enter the temperature at " + hour);
            temp = scan.nextInt();
            if (maxtemp < temp) {
                temp = maxtemp;
                timeAtMax = hour;
            }
        }
        System.out.println("The max temperature of the day was " + maxtemp + " at" + timeAtMax);
    }
}

您的 if 语句是正确的,只需反转temp = maxtemp;

if (maxtemp < temp) {
    maxtemp = temp;
    timeAtMax = hour;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM