从学渣走向未来 2022-03-24 17:36 采纳率: 72.7%
浏览 32
已结题

程序运行错误,输入格式不对该如何改写

题目要求如下,两个问题一个是现在的代码无法运行,还有一个是输入格式不对。要求一行输入,我不太清楚要如何改写输入格式,以及代码为何无法运行,求解答。

img

img




```public class Ex81 {
    public static void main(String[] a){
        Scanner input=new Scanner(System.in);
        double []number1= new double[10];
        int []number2= new int[5];
         for(int i=0;i<15;i++){
             if(i<=10)
            number1[i]=input.nextDouble();
            Ex81.average(number1);
            if(i>10)
                number2[i]=input.nextInt();
                Ex81.average(number2);
            }
        System.out.println(average(number1));
        System.out.println(average(number2));
    }
    
    public static double average(int[] arr){
        int sum = 0; 
        for(int i=0;i<arr.length;i++){
        sum=+arr[i];
        }
        int average1=sum/5;
        return average1;
        }
    
    public static double average(double[] arr){
        double sum = 0; 
        for(int i=0;i<arr.length;i++){
        sum=+arr[i];
        }
        double average2=sum/10;
        return average2;
}
}
  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2022-03-24 17:52
    关注

    第8行应该是if(i<10),不能等于10
    0-9是10个数,是double,10-14是int
    修改如下。number2数组写入时,下标要减去10。另外不需要在循环中计算平均值

    for(int i=0;i<15;i++)
    {
            if(i<10)
                   number1[i]=input.nextDouble();
            else
                   number2[i-10]=input.nextInt();   
    }
    
    

    另外26行也不对,应该改为
    double average1=sum/5.0;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月27日
  • 已采纳回答 4月19日
  • 创建了问题 3月24日

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集