![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
C语言题目求解
给定5位学生、4门课程的成绩,要求仅使用一个函数求解每位学生的平均成绩、统计每门课的不及格人数,仅使用一个二维数组存储成绩和求解结果(即求解结果仍保存在该二维数组中),最...
给定5位学生、4门课程的成绩,要求仅使用一个函数求解每位学生的平均成绩、统计每门课的不及格人数,仅使用一个二维数组存储成绩和求解结果(即求解结果仍保存在该二维数组中),最后在主函数中打印输出求解结果。注:主函数中定义数组时初始化给定成绩,例如:
学号 数学 语文 物理 化学
3001 82 78 88 83
3002 46 68 62 57
3003 92 80 85 87
3004 52 89 55 67
3005 92 90 85 77
有没有会这题的 展开
学号 数学 语文 物理 化学
3001 82 78 88 83
3002 46 68 62 57
3003 92 80 85 87
3004 52 89 55 67
3005 92 90 85 77
有没有会这题的 展开
1个回答
展开全部
如下所示:
#include <stdio.h>
void analysis(float grades[][6])
{
int pass = 60;
for(int i = 0; i < 5; i ++)
{
grades[i][5] = 0;
grades[5][i + 1] = 0;
}
for(int i = 0; i < 5; i ++)
{
for(int j = 1; j < 5; j ++)
{
grades[i][5] += grades[i][j];
if(grades[i][j] < pass)
{
grades[5][j] ++;
}
}
grades[i][5] = grades[i][5] / 4.0f;
}
}
int main()
{
float grades[6][6] = {
{3001,82,78,88,83},
{3002,46,68,62,57},
{3003,92,80,85,87},
{3004,52,89,55,67},
{3005,92,90,85,77},
{}};
analysis(grades);
printf("Average scores:\n");
for(int i = 0; i < 5; i ++) {
printf("%.0f:\t%.2f\n", grades[i][0], grades[i][5]);
}
printf("Do not pass:\n数学\t语文\t物理\t化学\n");
for(int j = 1; j < 5; j ++) {
printf("%.0f\t", grades[5][j]);
}
return 0;
}
结果如图所示:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |