【谭浩强】第七章第14题

发布于:2025-05-10 ⋅ 阅读:(17) ⋅ 点赞:(0)

实验结果:当M=1时输出的结果
在这里插入图片描述
实验总结:用define定义要频繁使用的值可以节省时间;求完一门课平均成绩之后要让sum重新等于0;求最高分对应的学生和对应的课程要循环完一遍覆盖一遍r和c的值;
程序代码

#include <stdio.h>
#define M 1
#define N 5
void Input(float score[M][N])
{
	int i = 0;
	for (i = 0; i < M; i++)
	{
		int j = 0;
		for (j = 0; j < N; j++)
		{
			scanf("%f", &score[i][j]);
		}
	}
}
void ave_stu(float score[M][N])
{
	float sum = 0;
	for (int i = 0; i < M; i++)
	{
		for (int j = 0; j < N; j++)
		{
			sum += score[i][j];
		}
		printf("第%d个人的平均成绩%f\n",i+1, sum / N);
	}
}
void ave_cour(float score[M][N])
{
	float sum = 0;
	for (int i = 0; i < M; i++)
	{
		int j = 0;
		for (j = 0; j < N; j++)
		{
			sum += score[i][j];
			printf("%d门课的平均成绩%f\n", j + 1, sum / M);
			sum = 0;
		}
	}
}
void high_stu_cour(float score[M][N])
{
	int i = 0;
	int j = 0;
	int r = 0;
	int c = 0;
	float h = score[0][0];
	for (int i = 0; i < M; i++)
	{
		for (int j = 0; j < N; j++)
		{
			if (score[i][j] > h)
			{
				h = score[i][j];
				r = i + 1;
				c = j + 1;
			}
		}
	}
	printf("最高分对应学生%d\n对应课程%d", r, c);
}
void Input(float score[M][N]);
void ave_stu(float score[M][N]);
void ave_cour(float score[M][N]);
void high_stu_cour(float score[M][N]);
int main()
{
	float score[M][N];
	printf("输入10个学生5门成绩:\n");
	Input(score);//输入成绩
	ave_stu(score);//平均成绩
	ave_cour(score);//每门课的平均
	high_stu_cour(score);//最高分
	return 0;
}


网站公告

今日签到

点亮在社区的每一天
去签到