大糊涂虫 2018-10-22 12:58 采纳率: 0%
浏览 523

Java简单程序,哪位老师方便帮我看下问题出在哪里吗?

import java.util.Scanner;
public class maxNum 
{
public static void main(String[] args) 
{
    int max1=1;

    Scanner sc=new Scanner(System.in);
    System.out.println("请输入一组数,并以0结尾");

    for(max1=0;sc.nextInt()!=0;) {
        if(sc.nextInt()>max1) 
        {
            max1=sc.nextInt();

        }
        else{
            continue;
        }
        }
        System.out.println("最大值为:"+max1);
}
}

输入一组数 然后求这组数中的最大值
测试用数据 2 3 4 5 1 456 999 146
最后出现的结果是146,明显出错,可我现在还没搞懂哪里出了问题……

希望老师详细解答,或者告诉我哪个知识点需要我去看书找资料也好,跪谢!

  • 写回答

4条回答

  • Italink 2018-10-22 13:06
    关注

    别耍小聪明,for循环里的一共用了3次nextInt,是接受三个数据,你每用一次nextInt就接受一个,所以还是老老实实用变量接受一个存起来,再做处理

     import java.util.Scanner;
    public class maxNum 
    {
        public static void main(String[] args) 
        {
            int max1=1;
    
            Scanner sc=new Scanner(System.in);
            System.out.println("请输入一组数,并以0结尾");
            int tmp=1;
            for(max1=0;tmp!=0;) {
                tmp=sc.nextInt();
                if(tmp>max1) 
                {
                    max1=tmp;
                }
            }
            System.out.println("最大值为:"+max1);
        }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器