我想要统计每门课程的合格率,但出来的结果不是我需要的,有谁可以指导一下吗?
#include <stdio.h>
#define M 4
#define N 5
// course[m][N]存放该课程的合格率
int main()
{
float score[M], add[N] = { 0 }, k[M] = { 0 }, t, a[N] = { 0 };
int i, j;
for (i = 0; i < N; i++)
{
add[i] = 0;
printf("输入第%d个学生4门课程的成绩\n", i + 1);
for (j = 0; j < M; j++)
{
scanf_s("%f", &score[j]);
add[i] += score[j];
k[j] += score[j];
}
}
for (i = 0; i < N; i++)
printf("第%d个学生总分:%.1f、平均分:%.1f\n", i + 1, add[i], add[i] / M);
for (j = 0; j<M; j++)
for (i = 0; i<M - j; i++)
if (add[i]<add[i + 1])
{
t = add[i]; add[i] = add[i + 1]; add[i + 1] = t;
}
for (i = 0; i<N; i++)
printf("第%d名的平均分数为%.2f\n", i + 1, add[i] / M);
for (i = 0; i < M; i++)
printf("第%d门课的平均成绩:%.1f\n", i + 1, k[i] / N);
float course[4][N + 2] = { 0 };
//依次处理4门课程
for (i = 0; i < N; i++) {
int passed = 0;
for (j = 0; j < M; j++) {
if ( score[j]>= 60)
{
passed++;
}
course[i][N] = 100 * passed / N;
}
}
for (i = 0; i < 4; i++) {
printf("%d: Passed=%.2f\n", i + 1, course[i][N]);
}
}
```