C语言试题练习:输入5个学生5门课的成绩,分别用函数求:1.每个学生平均分;2.每门课的平均分;3.找出所有分数中最高分

C语言试题练习:输入5个学生5门课的成绩,分别用函数求:①每个学生平均分;②每门课的平均分;③找出所有分数中最高分

//每个学生平均分;
void Average_Students(int a[5][5])
{    
	
	int i, j;
	for (i = 0; i < 5; i++)
	{
		//第i+1个同学
		double c;
		int b = 0;
		for (j = 0; j < 5; j++)
		{//第i+1个同学的成绩平均分
			b += a[i][j];
			c = b / 5.00;
		}
		printf("第%d个同学的成绩平均分%0.2f\n", i + 1, c);
	}
	
}
//每门课的平均分;
void Average_Class(int a[5][5]) 
{    
	int i, j;
	for (j = 0; j < 5; j++) {//这里a【i】【j】,j循环放在最外面
		double c;
		int b = 0;
		for (i = 0; i < 5; i++)
		{
			b += a[i][j];
			c = b / 5;
			//printf("%d\t", a[i][j]);     这里可以看下输出的分数列的数据
		}
		printf("第%d门课的平均分分别为%0.2f\n", j + 1, c);
	}
}
//所有分数中最高分;
void Max_Point(int a[5][5]) 
{   
	int maxh[5];
	int i, j, max;
	for (i = 0, j = 0; i < 5; i++)
	{
		maxh[i] = a[i][j];//假设每行第一个是最大值 	
		for (j = 0; j < 5 - 1; j++)
		{   //此行元素分别与之比较,较大值为maxh[i] 
			if (a[i][j + 1] >= maxh[i])
			{
				maxh[i] = a[i][j + 1];
			}
		}
	}
	for (i = 0; i < 5 - 1; i++) 
	{
		max = maxh[i];//假设第一列的数是最大值 
        //整列元素分别与之比较,较大值为max
		if (maxh[i + 1] >= max)
		{
			max = maxh[i + 1];
		}
	}
	printf("所有分数中最高分max=%d\n", max);
}
int main()
{
	int a[5][5];
	int i, j;
	for (i = 0; i < 5; i++)
	{
		printf("第%d个同学的成绩:", i + 1);
		for (j = 0; j < 5; j++)
		{
			scanf_s("%d", &a[i][j]);
		}
	}//**输入时数字之间用空格分隔**
	printf("\n");
	Average_Students(a); printf("\n");
	Average_Class(a); printf("\n");
	Max_Point(a); printf("\n");//输出空格可去掉,这样只是为了输出结果美观
	return 0;
}

输出结果

1个同学的成绩:56 54 81 62 652个同学的成绩:85 96 42 68 783个同学的成绩:96 84 35 65 454个同学的成绩:54 31 41 68 485个同学的成绩:21 95 87 65 321个同学的成绩平均分63.602个同学的成绩平均分73.803个同学的成绩平均分65.004个同学的成绩平均分48.405个同学的成绩平均分60.001门课的平均分分别为62.002门课的平均分分别为72.003门课的平均分分别为57.004门课的平均分分别为65.005门课的平均分分别为53.00

所有分数中最高分max=95



要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .


参考链接 https://blog.csdn.net/weixin_45391986/article/details/105919562

  • 5
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值