输入一组成绩数据,编程输出此组数据的平均值(要求此组数据定义为数组),并统计和输出不及格人数。想问一下为什么输出是一堆乱码呢

【问题描述】

输入一组成绩数据,编程输出此组数据的平均值(要求此组数据定义为数组),并统计和输出不及格人数。

【输入形式】

先从标准输入数组元素的个数,然后依次输入数组元素,各元素之间以空格分隔。

【输出形式】

在标准输出上输出数组元素的平均值和不及格人数。

【样例输入】

6

78.5 56 88.5 43 94.5 98

【样例输出】

76.42

2


import java.util.Scanner;
public class c {
    public static void main(String[] args) {
        int n;
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        float[] a = new float[n];
        int i;
        int m = 0;
        float k = 0;
        for (i = 0; i < n; i++) {
            a[i] = sc.nextFloat();
        }
        for (i = 1; i <= n; i++) {
            if (a[i] < 60) {
                m++;
            }
            for (i = 1; i <= n; i++) {
                k = (k + a[i]) / i;
            }

        }
        System.out.printf("%.2f",k);
        System.out.println(m);
    }
}

public static void main(String[] args) {
        int n;
        Scanner sc = new Scanner(System.in);
        Scanner sc1 = new Scanner(System.in);
        n = sc.nextInt();
        float[] a = new float[n];
        int i;
        int m = 0;
        float k = 0;
        System.out.println("n:" + n);
        for (i = 0; i < n; i++) {
            a[i] = sc1.nextFloat();
            if (a[i] < 60) {
                m++;
            }
            k = k + a[i];
        }
        System.out.printf("%.2f",k/n);
        System.out.println(m);
    }