三个学生考五门课程,计算出每个学生的平均成绩及单科成绩的平均分并输出。
时间: 2024-06-13 13:04:56 浏览: 79
每个学生的数据包含学号、姓名、三门课的成绩及平均成绩,我们可以通过输入学生的学号、姓名、三门课的成绩来实现成绩录入。接着,我们可以通过计算每个学生的平均成绩和单科成绩的平均分来实现题目要求的功能。具体实现方法如下:
```c
#include <stdio.h>
// 计算每个学生的平均成绩
void average(float score[][5], int n)
{
for(int i=0; i<n; i++)
{
float sum = 0;
for(int j=0; j<5; j++)
{
sum += score[i][j];
}
score[i][4] = sum / 5;
}
}
// 计算单科成绩的平均分
void average_subject(float score[][5], int n)
{
float sum[5] = {0};
for(int i=0; i<n; i++)
{
for(int j=0; j<5; j++)
{
sum[j] += score[i][j];
}
}
for(int i=0; i<5; i++)
{
printf("第%d门课的平均分为%.2f\n", i+1, sum[i]/n);
}
}
int main()
{
int n = 3; // 学生数
float score[3][5]; // 学生成绩
// 输入学生成绩
for(int i=0; i<n; i++)
{
printf("请输入第%d个学生的学号、姓名、三门课的成绩:\n", i+1);
scanf("%f%s%f%f%f", &score[i][0], &score[i][1], &score[i][2], &score[i][3], &score[i][4]);
}
// 计算每个学生的平均成绩
average(score, n);
// 输出每个学生的平均成绩
printf("每个学生的平均成绩为:\n");
for(int i=0; i<n; i++)
{
printf("%s的平均成绩为%.2f\n", score[i][1], score[i][4]);
}
// 计算单科成绩的平均分
average_subject(score, n);
return 0;
}
```
阅读全文