为了账号安全,请及时绑定邮箱和手机立即绑定

我想输出最大值和最小值,但是运行结果是61,为什么,要怎么做才行

我想输出最大值和最小值,但是运行结果是61,为什么,要怎么做才行

丶小布偶 2017-04-30 09:11:44
public class HelloWorld{ public static void main(String[] args){ int[] num={61,23,4,74,13,14,8,20}; int sum=0; int max=num[0]; int min=num[0]; for(int i=0;i<8;i++){ if(max<=num[i]) max=num[i]; else max=num[0]; if(min<=num[i]) min=num[0]; else min=num[i]; sum=sum+num[i]; } int avg=sum/8; System.out.println("该数组最大值为:"+max); System.out.println("该数组最小值为:"+min); System.out.println("和为:"+sum); System.out.println("平均值为:"+avg); } }
查看完整描述

4 回答

已采纳
?
qq_佛说过过过_0

TA贡献17条经验 获得超8个赞

package jav;


public class Hello {

public static void main(String[] args){

int[] num={61,23,4,74,13,14,8,20};

int sum=0;

int max=num[0]; 

int min=num[0];

for(int i=0;i<8;i++){ 

if(max<=num[i]) max=num[i]; 

//else max=num[0]; 

//if(min>=num[i]) min=num[0]; 

if(min>=num[i]) min=num[i]; 

//else min=num[i]; 

sum=sum+num[i]; 

int avg=sum/8; System.out.println("该数组最大值为:"+max); 

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

System.out.println("和为:"+sum);

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

}

}

你太粗心了,也不读代码,就拿来问!!!

查看完整回答
反对 回复 2017-04-30
?
HZK135

TA贡献10条经验 获得超3个赞

把else max=num[0]去掉,不然当执行到74后面的数值时,因为13,14,8,20<max;所以执行max=num[0]=61。

查看完整回答
2 反对 回复 2017-04-30
?
慕大侠

TA贡献6条经验 获得超4个赞

下次有代码的时候 请选择代码语言 , 将代码粘贴到相应的地方 , 你这种格式的代码 谁愿意看?

查看完整回答
2 反对 回复 2017-04-30
?
慕粉void

TA贡献17条经验 获得超7个赞

public class HelloWorld {

    public static void main(String[] args) {
        int[] num = {61, 23, 4, 74, 13, 14, 8, 20};
        int sum = 0;
        int max = num[0];
        int min = num[0];
        for (int i = 0; i < num.length; i++) {
            if (num[i] > max)
                max = num[i];
            if (num[i] < min)
                min = num[i];
            sum += num[i];
        }
        System.out.println("该数组最大值为:" + max);
        System.out.println("该数组最小值为:" + min);
        System.out.println("和为:" + sum);
    }
}


查看完整回答
反对 回复 2017-04-30
  • 4 回答
  • 0 关注
  • 1674 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信