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

为什么我输出的平均值是49.375


public static void main(String[] args) {

int [] a = new int[] {61,23,4,74,3,62,148,20};

int max=a [0];

int min=a[0];

double sum = 0;

double avg =0;

for(int i =0;i<a.length;i++){//循环遍历,就是把for语句中的定义i,只要小于7,都会循环一遍a.length是指她的长度,能存几位就是她的长度值,这里为7

if (a[i]>max)

max=a[i];//最大值

if(a[i]<min)

min=a[i];//最小值

sum=sum+a[i];//求和

avg = sum/a.length; //平均值

}

System.out.println("最大值="+max);

System.out.println("最小值="+min);

System.out.println("平均值="+avg);

}

}

最大值=148

最小值=3

平均值=49.375


提问者:屋后老张 2019-11-16 14:23

个回答

  • 慕盖茨9088308
    2020-02-02 20:15:10

    注意题目里面的要求是 “当前最小值”所以后面代码里面的最小值实际输出是20 而不是4;这里应该是你手算和代码运算结果不同的原因,供参考

  • 慕哥3872218
    2019-11-23 14:20:21

    结果本来就是这个值,不知道你要问什么问题

  • weixin_慕无忌9064502
    2019-11-16 17:59:04

    avg=sum/a.length,这一句要要写for循环外,不然就变成了每加一个数求一次平均了。