船舶ouo 2021-09-27 16:56 采纳率: 73.3%
浏览 61
已结题

Java 程序填空 求平均值!

题目如图

img

img


我做的

import java.util.Scanner;
public class aver {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
          int ri, repeat;
          int i, n, sum,a[];
          float aver;
          sum=0;
          Scanner in=new Scanner(System.in);
          repeat=in.nextInt();
          for(ri=1; ri<=repeat; ri++){
              n=in.nextInt();
              a=new int[n];
              for(i=0; i<=a.length-1; i++)
              {    a[i]=in.nextInt(); //这个循环输入数组各元素
              /*--------------*/
              sum = sum + a[i];}
              aver=sum/n ;
             
              System.out.println("aver="+aver);
          }
    }

}


运行结果是这个(错误的

img

有人知道该怎么改嘛或者知道这道题怎么做嘛qwq 可以帮忙看一下嘛

  • 写回答

3条回答 默认 最新

  • 码仔ROC 2021-09-27 17:41
    关注
               a[i]=in.nextInt(); //这个循环输入数组各元素
                    /*--------------*/
                    sum = sum + a[i];}
                aver=(float)sum/n ;
                System.out.println("aver="+aver);
                sum = 0;
    

    两个问题:
    1、sum与a[i]都是整型int,两者相除要获取float的结果应该改成aver=(float)sum/n ;
    2、第一次运算结束后sum=-3,没有清零。需要在每次运算结束将sum清零

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

报告相同问题?

问题事件

  • 系统已结题 10月5日
  • 已采纳回答 9月27日
  • 修改了问题 9月27日
  • 创建了问题 9月27日