2 weixin 39902941 weixin_39902941 于 2017.09.07 11:02 提问

只有最大值,因为最小值不进行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);
}

}

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

6个回答

caozhy
caozhy   Ds   Rxr 2017.09.07 11:05
已采纳

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

weixin_39902941
weixin_39902941   2017.09.07 11:29

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

qq_31618659
qq_31618659   2017.09.07 11:30

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

qq_31618659
qq_31618659   2017.09.07 11:31

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

qq_31618659
qq_31618659   2017.09.07 11:31

else去掉运行看结果

a_zhon
a_zhon   2017.09.07 11:35

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

Csdn user default icon
上传中...
上传图片
插入图片