请问要怎么用数组解决这个问题

输入一个3*3的矩阵,求矩阵的平
均值,并找出矩阵中小于平均值的元素个
数。


#include<stdio.h>

#define M 3
#define N 3

void Create_matrix(int matrix[M][N], int m, int n) {
    int i,j;
    printf("开始输入矩阵内容(%d行%d列)\n",m,n);
    for(i=0;i<m;i++) {
        printf("输入第%d行的%d个元素:",i+1,n);
        for(j=0;j<n;j++)
            scanf("%d",&matrix[i][j]);
    }
}

void Print_matrix(int matrix[M][N], int m, int n) {
    int i,j;
    for(i=0;i<m;i++) {
        for(j=0;j<n;j++)
            printf("%d\t",matrix[i][j]);
        printf("\n");
    }
}

void Print_avg(int matrix[M][N], int m, int n) {
    int i,j;
    double sum = 0;
    double avg = 0;
    for(i=0;i<m;i++) {
        for(j=0;j<n;j++)
            sum += matrix[i][j];
        }
    avg = sum/(m*n);
    printf("%lf\n",avg);
}

void Print_mincount_avg(int matrix[M][N], int m, int n) {
    int i,j;
    double sum = 0;
    double avg = 0;
    for(i=0;i<m;i++) {
        for(j=0;j<n;j++)
            sum += matrix[i][j];
        }
        avg = sum/(m*n);
        int count=0;
    for(i=0;i<m;i++) {
        for(j=0;j<n;j++)
            if(matrix[i][j] < avg) count++;
        }
    printf("%d\n",count);
}

int main(void) {
    int matrix[M][N];
    Create_matrix(matrix, M, N);
    printf ("======================================================\n\n");
    printf ("您输入的矩阵为:\n");
    Print_matrix(matrix, M, N);
    printf ("矩阵平均值:\n");
    Print_avg(matrix, M, N);
    printf ("矩阵中比平均值小的数的个数:\n");
    Print_mincount_avg(matrix, M, N);
    return 0;
}

img