大糊涂虫 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 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog