Scanner sc = new Scanner(System.in);
int i;
int man=0;
int min=0;

do
{
System.out.println("输入:");
i=sc.nextInt();
if(i==0)
{
break;
}
else if(i>man)
{
man=i;
}
else if(i<man)
{
min=i;
}
}while(i!=0);

System.out.println("大:"+man);
System.out.println("小:"+min);要求输出N个整数后: 显示 最大 和 最小 输入0就退出!
最大可以正常显示 就是最小的数 总是最后输入的小数;请问 少了什么?谢谢!

解决方案 »

  1.   

    else if(i<man)
    {
    min=i;
    }写错:else if(i<min)
    {
    min=i;
    }
      

  2.   

    int man = Integer.MIN_VALUE;
    int min = Integer.MAX_VALUE;
      

  3.   

    不可能
    int man = Integer.MIN_VALUE;
    int min = Integer.MAX_VALUE;
    else if(i<min)
    都要改
      

  4.   

    楼主你眼花了。Scanner sc = new Scanner(System.in);
    int i = 0;
    int max = Integer.MIN_VALUE;
    int min = Integer.MAX_VALUE;
    System.out.println("输入:");
    do {

    i = sc.nextInt();
    if (i == 0) {
    break;
    } else if (i > max) {
    max = i;
    } else if (i < min) {
    min = i;
    }
    } while (i!= 0); System.out.println("大:" + max);
    System.out.println("小:" + min);
      

  5.   

    Scanner sc = new Scanner(System.in); 
    int i;
    System.out.println("输入:");

    int man=sc.nextInt();
    int min=man; do
    {
    System.out.println("输入:");
    i=sc.nextInt(); 
    if(i==0)
    {
    break;
    }
    else if(i>man)
    {
    man=i;
    }
    else if(i<min)
    {
    min=i;
    }
    }while(i!=0); System.out.println("大:"+man);
    System.out.println("小:"+min);试试这个
      

  6.   


    我懂你意思了……  就是    不管你输入多少数字,只需要显示在输入数字钟   出现   最大和最小数字,对吧???你用    do    while(i!=0)->  这个    i!=0   条件不是坑爹嘛???    输入的数字   你先用数组 填写好,   我不知道    你输入   3  2 1 9 8 7 怎么得到结果为:最大9 最小7   ,不可思议……
      

  7.   

    9楼 正解 
    int man=sc.nextInt();MAN=MIN 是关键 不然最小初始就是0 怎么比都是010楼的你没仔细看 i!=0 条件里加了IF 0是作为出来的条件不是输出!
      

  8.   

    回4楼:
    先谢谢下!
    int max = Integer.MIN_VALUE;
    int min = Integer.MAX_VALUE; 也可以用!
    不过我买的鸟书上没有,看来书上也不是都有的!哎~~~~