数据结构-怀化学院期末题(30)

 题目描述:

根据输入统计学生的平均分及各科平均分。
输入:第一行为学生的个数n及课程数m,第二行至m+1行为课程名,接下来为各学生的姓名及成绩,每个学生的信息占两行,第一行为学生的姓名,第二行为m个实数,表示学生各科成绩。
输出:输出包含2n+2m行,前2n行为学生的平均分,其中第一行为学生姓名,第二行为该生的平均分,后2m行为各课程的平均分,其中第一行为课程名,第二行为对应的平均分。(保留两位小数)

 样例输入:

3 2
english
computer
zhangshan
87.5 98
lisi
80 78
wangwu
60 59

样例输出:

zhangshan
92.75
lisi
79.00
wangwu
59.50
english
75.83
computer
78.33 

代码:

import java.util.Scanner;

public class no30 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int m = in.nextInt();
        String[] a = new String[110];
        String[] b = new String[110];
        double[] c = new double[110];
        for(int i = 0;i < m;i ++){
            a[i] = in.next();
        }
        for(int i = 0;i < n;i ++){
            b[i] = in.next();
            double sum = 0;
            for(int j = 0;j < m;j ++){
                double q = in.nextDouble();
                c[j] += q;
                sum += q;
            }
            System.out.println(b[i]);
            System.out.printf("%.2f\n",1.00 * sum / m);
        }
        for(int i = 0;i < m;i ++){
            System.out.println(a[i]);
            System.out.printf("%.2f\n",c[i]/n);
        }
    }
}

你可能感兴趣的:(数据结构,java,算法)