多个学生多门课成绩的排序没看懂这个错误有没有专家讲解一下这个错误

#include <stdio.h>
#include <string.h>
#define N 5
int main() {
int i, j, t;
int score[N][3];
char name[N][10];
float sum[N] = {0}, avg[N];
printf("请输入五个同学的成绩:\n");
for (i = 0; i < N; i++) {
printf("第%d个同学的记录:", i + 1);
scanf("%s", name[i]);
for (j = 0; j < 3; j++) {
scanf("%d", &score[i][j]);
}
}
for (i = 0; i < N; i++) {
for (j = 0; j < 3; j++) {
sum[i] += score[i][j];
}
avg[i] = sum[i] / 3.0;
}
for (i = 0; i < N - 1; i++) {
for (j = 0; j < N - i - 1; j++) {
if (sum[j] < sum[j + 1]) {
t = sum[j]; sum[j] = sum[j + 1]; sum[j + 1] = t;
t = avg[j]; avg[j] = avg[j + 1]; avg[j + 1] = t;
for (int k = 0; k < 3; k++) {
t = score[j][k]; score[j][k] = score[j + 1][k]; score[j + 1][k] = t;
}
char nn[10];
strcpy(nn, name[j]); strcpy(name[j], name[j + 1]); strcpy(name[j + 1], nn);
}
}
}
printf("------------------------------------------------------------------------------------------------\n");
printf("排序\t姓名\t课1\t课2\t课3\t总分\t平均分\n");
for (i = 0; i < N; i++) {
printf("第%d名:\t%s\t", i + 1, name[i]);
for (j = 0; j < 3; j++) {
printf("%d\t", score[i][j]);
}
printf("%d\t%.1f\n", sum[i], avg[i]);
}
printf("\n");
return 0;
}