//输入10个学生5门课的成绩,分别用函数实现下列功能:
//1. 计算每个学生的平均分;
//2. 计算每门课程的平均分;
//3. 找出50个分数中的最高分。
#include <stdio.h>
#define N 10
#define M 5
void each_student_average(float student_score[N][M]);//计算学生平均分函数原型
void each_course_average(float student_score[N][M]);
//计算课程平均分函数原型
void max(float a[N][M]);//计算最高分函数原型
int main(void)
{
int i;
float student_score[N][M];
printf("Please enter each student's score !\n");
for(i=0; i<N; i++)
{
printf("student_%d score_5 :", i+1);
scanf("%f %f %f %f %f", &student_score[i][0], &student_score[i][1], &student_score[i][2], &student_score[i][3], &student_score[i][4]);
printf("\n");
}
each_student_average(student_score);
each_course_average(student_score);
max(student_score);
return 0;
}
//计算学生平均分的函数定义
void each_student_average(float student_score[N][M])
{
int i, j;
float student_average;//局部变量, 记录每个学生的平均分
for(i=0; i<N; i++)
{
student_average = ((student_score[i][0] + student_score[i][1] + student_score[i][2] + student_score[i][3] + student_score[i][4])/5.0) ;
printf("student_%d average: %.2f \n", i+1, student_average);
}
printf("\n");
}
//计算课程平均分的函数定义
void each_course_average(float student_score[N][M])
{
int i, j;
float sum;//局部变量, 记录每门课程的总分
float course_average[M];//局部变量, 记录每门课程的平均分
for(j=0; j<M; j++)
{
sum = 0;
for(i=0; i<N; i++)
{
sum += student_score[i][j];
}
printf("course_%d average: %.2f \n", j+1, (sum/10.0));
}
printf("\n");
}
//计算最高分的的函数定义
void max(float a[N][M])
{
int i, j;
float max = a[0][0];
for(i=0; i<N; i++)
{
for(j=0; j<M; j++)
{
if(a[i][j] > max)
max = a[i][j];
}
}
printf("max_score: %.3f\n", max);
}
开课水平小测(数据结构)
最新推荐文章于 2017-07-24 22:34:29 发布