半啦呐 2021-09-14 21:31 采纳率: 100%
浏览 34
已结题

为什么最小值不能算出来

package day07;

import java.util.Scanner;

/*
现以一个班级10个同学的数学成绩为例,进行统计。求这个班级的数学平均成绩,最高分,最低分。

*/
public class Demo14Test {
public static void main(String[] args) {
//建立数组
int[] arr = new int[10];
//定义sum 用来算总和
int sum = 0;
//定义一个max 计算最高成绩
int max = arr[0];
//定义一个min 计算最低成绩
int min = arr[0];
//调用Scanner方法2
Scanner sc = new Scanner(System.in);
//遍历数组
for (int i = 0; i < arr.length; i++) {
//创建键盘录入 将值赋给arr[i]
System.out.println("请输入第" + (i + 1) + "个学生的成绩");
arr[i] = sc.nextInt();

        //求最大值
        if (max < arr[i]) {
            max = arr[i];
        }

        //求最小值
        if (min > arr[i]) {
            min = arr[i];
        }

        //sum求总和
        sum += arr[i];
    }
    //求平均值
    double avg = (sum + 0.0) / arr.length;

    System.out.println("学生的最高成绩为" + max);
    System.out.println("学生的最低成绩为" + min);
    System.out.println("学生的平均成绩为" + avg);

}

}

  • 写回答

1条回答 默认 最新

  • 关注

    改成这样就行了:,之前你还没输入就赋值arr[0]所以会出错

    import java.util.Scanner;
    
    /*
    现以一个班级10个同学的数学成绩为例,进行统计。求这个班级的数学平均成绩,最高分,最低分。
    
    */
     class Demo14Test {
    public static void main(String[] args) {
    //建立数组
    int[] arr = new int[10];
    //定义sum 用来算总和
    int sum = 0;
    //定义一个max 计算最高成绩
    int max = arr[0];
    //定义一个min 计算最低成绩
    int min = arr[0];
    //调用Scanner方法2
    Scanner sc = new Scanner(System.in);
    //遍历数组
    for (int i = 0; i < arr.length; i++) {
    //创建键盘录入 将值赋给arr[i]
    System.out.println("请输入第" + (i + 1) + "个学生的成绩");
    arr[i] = sc.nextInt();
            if(i==0){
                 max = arr[0];
                 min = arr[0];
            }
            //求最大值
            if (max < arr[i]) {
                max = arr[i];
            }
     
            //求最小值
            if (min > arr[i]) {
                min = arr[i];
            }
     
            //sum求总和
            sum += arr[i];
        }
        //求平均值
        double avg = (sum + 0.0) / arr.length;
     
        System.out.println("学生的最高成绩为" + max);
        System.out.println("学生的最低成绩为" + min);
        System.out.println("学生的平均成绩为" + avg);
     
    }
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月22日
  • 已采纳回答 9月14日
  • 创建了问题 9月14日