c语言成绩最高分最低分

#include 
#include 
int main() {
    int stu[30][6] = {0};
    int max[6] = {0};
    int min[6] = {0};
    int level[6][5] = {0};;
    // 输入成绩 在输入时判断输入的成绩是不是这课 是不是 比 max 高,高就写到max里
    // 判断 输入的成绩 的等级 并在level 里记录下来
 
    // 遍历每个人
    for ( int i = 0 ; i < 6 ; i++ ) {
        // 遍历 每门成绩
        for ( int j = 0 ; j < 5 ; j++ ) {
            // 输入成绩
            scanf("%d", &stu[i][j]);
            if(j == 0)
            {
                min[i] = stu[i][j];
            }
            // 判断是不是单科最高分
            if ( max[i] < stu[i][j] ) {
                max[i] = stu[i][j];
            }
            // 判断是不是单科最低分
            if ( min[i] > stu[i][j] ) {
                min[i] = stu[i][j];
            }
            // 判断等级
            if ( stu[i][j] > 90 ) {
                level[j][0]++;
            } else if ( stu[i][j] > 80 ) {
                level[j][1]++;
            } else if ( stu[i][j] > 70 ) {
                level[j][2]++;
            } else if ( stu[i][j] > 60 ) {
                level[j][3]++;
            } else {
                level[j][4]++;
            }
        }
    }
 
    // 打印出来
    
    for( int i = 0 ; i < 6 ; i ++ ){
        printf("\n 最高分 : %d \t ",max[i] );
        for( int j = 0 ; j < 5 ; j++ ){
            printf("%c:%d人  ",(char)j+'A',level[i][j]);
        }
    }
     for( int i = 0 ; i < 6 ; i ++ ){
        printf("\n 最低分 : %d \t ",min[i] );
        for( int j = 0 ; j < 5 ; j++ ){
            printf("%c:%d人  ",(char)j+'A',level[i][j]);
        }
    }
 
}
 

30个学生 每人六科成绩 选出最高分最低分 我这个程序人数有问题 最低分也有问题 请修改一下

遍历人数
for i 循环是 i<30 不是 i<6
遍历成绩时,把max[i]和min[i]改成max[j]和min[j],即每门成绩的最大最小值