83 成绩统计
作者: 阮文灵时间限制: 1S章节: 结构体
问题描述 :
每次通过键盘输入5位学生如下表所示的数据,然后计算并输出每位学生的平均成绩,再输出数学成绩最高的学生的姓名及成绩。
姓名
数学成绩
政治成绩
John
88
89
Jack
90
86
Marry
76
80
Kite
55
58
Jane
56
68
输入说明 :
从键盘输入5位学生如下表所示的数据
姓名
数学成绩
政治成绩
John
88
89
Jack
90
86
Marry
76
80
Kite
55
58
Jane
56
68
输入信息包括5行,每行包括姓名、数学成绩、政治成绩。
输出说明 :
首先输出5行,每行包括学生的姓名和平均成绩,平均成绩为数学成绩加政治成绩整除2(即丢掉小数部分)。
第6行为数学成绩最高的学生的姓名及成绩。
输入范例 :
John 88 89
Jack 80 86
Marry 76 80
Kite 55 58
Jane 56 68
输出范例 :
John 88
Jack 83
Marry 78
Kite 56
Jane 62
John 88 89
解答思路:
混进来一道签到题。
AC代码
#include <cstdio>
struct student{
char name[20];
int math;
int pol;
};
int main(){
student a[5];
int max=0;
int ave[5];
for(int i=0;i<5;i++)
{
scanf("%s %d %d",a[i].name,&a[i].math,&a[i].pol);
if(a[i].math>a[max].math)
{
max=i;
}
ave[i]=(a[i].math+a[i].pol)/2;
}
for(int i=0;i<5;i++)
{
printf("%s %d\n",a[i].name,ave[i]);
}
printf("%s %d %d",a[max].name,a[max].math,a[max].pol);
}