C++代码提问,关于计算平均成绩的问题

有没有教一教这个代码怎么写。输入10个学生5门课的成绩,分别用函数求:(1)每个学生平均分(2)每门课的平均分;

定义一个二维数组,float s[10][5],代表10个学生的5门课程数据。然后用双循环输入所有成绩
每个学生平均分是行平均值,每门课是列平均值

#include <iostream>
using namespace std;
int main()
{
    float s[10][5];
    int i,j;
    float sum=0;
    for(i=0;i<10;i++)
        for(j=0;j<5;j++)
            cin>>s[i][j];
    for(i=0;i<10;i++)
    {
        sum = 0;
        for(j=0;j<5;j++)
          sum += s[i][j];
        cout<<"第"<<i+1<<"个学生平均分为:"<<setprecision(2)<<sum/5<<endl;
    }
    for(i=0;i<5;i++)
    {
        sum = 0;
        for(j=0;j<10;j++)
            sum += s[j][i];
        cout<<"第"<<i+1<<"门课平均分为:"<<setprecision(2)<<sum/10<<endl;
    }
    return 0;
}

#include <iostream>
using namespace std;

int main()
{
    int a[10][5],i,j;
    double avg[10],avgkc[5];
    for(i=0;i<10;i++)
    {
        for(j=0;j<5;j++)
            cin >> a[i][j];
    }
    //计算学生的平均成绩
    for(i=0;i<10;i++)
    {
        avg[i] = 0;
        for(j=0;j<5;j++)
            avg[i] += a[i][j];
        avg[i]/= 5.0;
        cout << "学生" << i+1<<"的平均成绩:" << avg[i] << endl;
    }
    //计算课程的平均成绩
    for(i=0;i<5;i++)
    {
        avgkc[i] = 0;
        for(j=0;j<10;j++)
            avgkc[i] += a[j][i];
        avgkc[i]/=10.0;
        cout << "课程" << i+1<<"的平均成绩:" << avgkc[i] << endl;
    }
    return 0;
}