5科总分
时间限制: 1S类别: 二维数组->简单
晚于: 2023-11-17 23:55:00后提交分数乘系数50%
问题描述 :
输入10个学生的学号和5门课程的成绩,统计输出5门课总分最高和最低的学生的学号和他们的总分。
输入说明 :
每行6个整数,共10行。
其中,每行第一个整数表示学生的学号,剩下的5个数表示他5门课程的成绩。
输出说明 :
两行,每行两个整数。
其中第一行为总分最高的学生的学号,和他的总分,用空格隔开。
第二行为总分最低的学生的学号,和他的总分,用空格隔开。
#include <iostream>
#include <cstring>
#include <vector>
using namespace std;
struct student
{
string number;
int score[5];
int total;
} Student[10];
int main()
{
int i;
for(i=0; i<10; ++i)
{
cin>>Student[i].number;
Student[i].total=0;
for(int j=0; j<5; ++j)
{
cin>>Student[i].score[j];
Student[i].total+=Student[i].score[j];
}
}
int min=Student[0].total;
int imax=0;
int max=Student[0].total;
int imin=0;
for(int i=1; i<10; ++i)
{
if(Student[i].total>max)
{
max=Student[i].total;
imax=i;
}
if(Student[i].total<min)
{
min=Student[i].total;
imin=i;
}
}
cout<<Student[imax].number<<" "<<max<<endl;
cout<<Student[imin].number<<" "<<min<<endl;
return 0;
}