只有最大值,因为最小值不进行if判断, min始终为0小于num输入的数值

package HelloWorld;

import java.util.*;

public class 从键盘取5个数值并做最大与最小值比较 {

public static void main(String[] args) {

    Scanner input = new Scanner(System.in);
    int num;
    int i = 0;
    int max;
    int min;
    max=min=num=0;
    while (i < 5) {
        System.out.println("请输入一个整数(输入0结束):");
        num = input.nextInt();
        if (num == 0) {
            break;
        } else if (max < num) {
            max = num;
        } else if(min > num) {
            min = num;
        }
        i++;

    }
    System.out.print("最大值是:" + max);
    System.out.println("最小值是:" + min);
}

}

,想请问下大神怎么弄出最小值.因为还没尝到数组,所以先用这个循环方法来解决问题.谢谢

num = input.nextInt();
if (i == 0) min = num;

这里少于50个字不准发送留言,--
已经出来啦,thanks

语法逻辑有问题你执行一次循环只能判断一次最大值如果满足最大值判断是无法判断最小值的比如输入12345 你的输出最大没有问题但是值一直在增长判断最小值的语句其实是没有执行的

只要输入的是递增值你的最小值永远都是0

else去掉运行看结果

有一个最简单的方法: int min=Integer.MAX_VALUE;