学生平均分综合练习

1、求学生平均分
2.求每门课平均分
3.找出最高分数的课程与学生
4.求平均分方差(计算错误,找不出原因)


#include<stdio.h>
#include<math.h>
#define M 10
#define N 5

float Average(float score[M][N],int m,int n);
float ClassAverage(float score[M][N],int m,int n);
float Maxscore(float score[M][N],int m,int n);
float VarianceAve(float score[M][N],int m,int n);
int main(void){
   float score[M][N]={{87,88,92,67,78},{88,86,87,98,90},{76,75,65,65,78},
                        {67,87,60,90,67},{77,78,85,64,56},{76,89,94,65,76},
                        {78,75,64,67,77},{77,76,56,87,85},{84,67,78,76,89},
                        {86,75,64,69,90}};

    float avearr[M];
    float classAve[N];
    for(int i=0;i<M;i++)
        avearr[i]=Average(score,i,N);


    for(int i=0;i<M;i++)
        printf("the %d student's average score is %f\n",i+1,avearr[i]);

    for(int i=0;i<N;i++)
        classAve[i]=ClassAverage(score,M,i);

        for(int i=0;i<N;i++){
            printf("the %d lesson's average score is %f\n",i+1,classAve[i]);
        }

        Maxscore(score,M,N);
        float variance=VarianceAve(score,M,N);
        printf("The variance is %f\n",variance);
}




float Average(float score[M][N],int m,int n){

        float ave=0;
    for(int i=0;i<n;i++)
        ave+=score[m][i];

    ave/=n;
    return ave;

}

float ClassAverage(float score[M][N],int m,int n){
        float classAve=0;
        for(int i=0;i<M;i++){
            classAve+=score[i][n];
        }

        return classAve/m;
}

float Maxscore(float score[M][N],int m,int n){

    int row=0,col=0;
    float max=score[0][0];
    for(int i=0;i<m;i++)
    for(int j=0;j<n;j++){
        if(max<score[i][j]){
            row=i;
            col=j;
            max=score[i][j];
        }

    }

    printf("Max score is %f,student %d,class %d.\n",max,row,col);

    return max;
}

float VarianceAve(float score[M][N],int m,int n){
    float f1=0,f2=0;
    for(int i=0;i<m;i++){
        float aveStu=Average(score,i,n);
        f1+=pow(aveStu,2);
        f2+=aveStu;

    }
    f1/=n;
    f2=pow(f2/n,2);
    return f1-f2;


}
posted @ 2024-05-14 15:35  zhongta  阅读(14)  评论(0)    收藏  举报