麻烦大神给看看,错在哪里啊

来源:6-6 编程练习

慕粉1473234501

2016-09-12 10:30

package com.imook;

/*

 *1、 定义一个整型数组,并赋初值 61, 23, 4, 74, 13, 148, 20


2、 定义变量分别保存最大值、最小值、累加值和平均值,并假设数组中的第一个元素既为最大值又为最小值


3、 使用 for 循环遍历数组中的元素,分别与假定的最大值和最小值比较。如果比假定的最大值要大,则替换当前的最大值;如果比假定的最小值要小,则替换当前的最小值


4、 循环执行过程中对数组中的元素进行累加求和


5、 循环结束根据累加值计算平均值,并打印输出相关内容

 */

public class Demo02 {

    public static void main(String[] args) {

int[] nums={61,23,4,74,13,148,20};//定义数组

int max=nums[0];//假设第一位为最大值

int min=nums[0];//假设第一位为最小值

double sum=0;//设定sum为累加求和

double avg=0;//设定avg为平均值

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

if(nums[i]>max){

max=nums[i];

}else{

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);

System.out.println("数组求和"+sum);

}

}


写回答 关注

8回答

  • 不忍更寻思
    2016-09-12 10:57:30
    已采纳

    for循环内“<=”,数组越界

    小蝎子訫圊小... 回复慕粉1473...

    为什么要加个else语句

    2016-10-06 17:06:07

    共 2 条回复 >

  • 对全世界说爱你
    2016-10-20 12:20:13

    把else 去掉,使用两个if与else没有关系

  • 对全世界说爱你
    2016-10-20 12:19:08

    你这个就不对

  • 小蝎子訫圊小Q
    2016-10-06 17:07:09

    为什么 if 语句后你用了一个else 语句

  • 慕粉0366153
    2016-09-12 11:32:19

    http://img.mukewang.com/57d621980001e99708160616.jpg数组下标越界了,数组从0开始,取不到nums.length

  • Elephant0
    2016-09-12 11:02:09

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

    这一行改为

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

  • 慕粉3961178
    2016-09-12 11:00:59

    nums.length();调用方法要括号

    慕粉3961...

    错了错了,抱歉

    2016-09-12 11:11:20

    共 1 条回复 >

  • 此处省略一
    2016-09-12 10:55:17

    public class Demo02 {

        public static void main(String[] args) {

    int[] nums={61,23,4,74,13,148,20};//定义数组

    int max=nums[0];//假设第一位为最大值

    int min=nums[0];//假设第一位为最小值

    double sum=0;//设定sum为累加求和

    double avg=0;//设定avg为平均值

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

    if(nums[i]>max){

    max=nums[i];

    }else 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);

    System.out.println("数组求和"+sum);

    }

    }


Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题