永发信息网

JAVA循环输出问题,最后显示最大最小值。。。。

答案:2  悬赏:80  手机版
解决时间 2021-02-13 19:43
public static void main(String[] args) {
System.out.println("开始:");
Scanner input = new Scanner(System.in);
int num;
int max;
int min;

do{
System.out.println("请输入一个数字(按0结束):");
num = input.nextInt();

}while(num != 0);

System.out.println("OVER!!");
System.out.println("最大值是" + max);
System.out.println("最小值是" + min);

书本上问题是输入一批数字,按0结束循环,输出其中的最大值跟最小值。。我只能做出上面的代码,关于求最大跟最小值的代码我不知道该怎么做。麻烦大神帮忙解惑,谢谢啦!!!!
目前只看到流程控制- -
最佳答案
Scanner input=new Scanner(System.in);
int max=0;
int min=0;
for (int i = 0; i < 100; i++) {
System.out.println("请输入第"+(i+1)+"个整数(输入0结束)");
int num=input.nextInt();
if(num==0){
System.out.println("最大值为:"+max);
System.out.println("最小值为:"+min);
System.out.println("程序结束!");
break;
}else{
if(i==0){
max=num;//把第一个不为0的数赋值为最大值
min=num;//把第一个为为的数赋值为最小值
}else{
if(max max=num;
}
if(min>num){
min=num;
}
}
}
}
全部回答
没有把0拿进去比较哈,不然最小始终是0,如果你要比较最后输入的0,那么把判断最大最小的条件&&i!=0去掉就行 public class ceshi{ public static void main(string[] args) { int i=1;//非零的都行 int max,min; bufferedreader br = new bufferedreader(new inputstreamreader(system.in)); system.out.println("请输入整数:"); try { i= integer.parseint(br.readline());//赋值给i } catch (numberformatexception e1) { // todo auto-generated catch block e1.printstacktrace(); } catch (ioexception e1) { // todo auto-generated catch block e1.printstacktrace(); } max=i;//付给最大值 min=i;//最小值 for(;i!=0;){//如果输入为0后结束循环 try { system.out.println("请输入整数:"); i= integer.parseint(br.readline());//循环输入整数 } catch (numberformatexception e) { // todo auto-generated catch block e.printstacktrace(); } catch (ioexception e) { // todo auto-generated catch block e.printstacktrace(); } if(i>max&&i!=0){ max = i; } //找出最小值 if(i
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯