问答详情
源自:6-6 编程练习

为啥平均值是58

public class HelloWorld{

    public static void main(String[] args ){

        int[] nums = new int[]{61,23,4,74,13,148,20};

        int max = nums[0];

        int min = nums[0];

        double sum = nums[0];

        double avg = nums[0];

        for (int i = 0;i < nums.length;i++){

            if (nums[i] > max){

                max = nums[i];

            }

            if (nums[i] < min){ 

              min =  nums[i] ;

            }

              sum = sum + nums[i];

        

        }

        avg = sum / nums.length;

        System.out.println("数组中的最大值:" +max);

        System.out.println("数组中的最小值:" +min);

        System.out.println("数组中的平均值:" +avg);

    }

}


提问者:weixin_慕桂英4006624 2022-06-15 15:53

个回答

  • qq_慕工程5552439
    2022-07-28 10:26:18

    //因为你是这个。

    double sum = nums[0];

            double avg = nums[0];

    //所以sum和avg的初始值都为61而不是零。应该改为:

    double sum = 0;

            double avg = 0;


  • int不加i
    2022-06-15 17:01:49

    double sum = nums[0];

    double avg = nums[0];


    写成

     double sum = 0;

     double avg = 0;


    再看看结果


  • 幕布斯4477907
    2022-06-15 17:01:20

    double sum = nums[0];  开始计算的时候就不为0,也就是多加了一次61