当前位置:   article > 正文

c++ 7-4 找出总分最高的学生 (15 分)_7-4 找出总分最高的学生 分数 15 作者 c课程组 单位 浙江大学 给定n个学生的基本

7-4 找出总分最高的学生 分数 15 作者 c课程组 单位 浙江大学 给定n个学生的基本

给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和3门课程的成绩([0,100]区间内的整数),要求输出总分最高学生的姓名、学号和总分。

输入格式:

输入在一行中给出正整数N(≤10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩1 成绩2 成绩3”,中间以空格分隔。

输出格式:

在一行中输出总分最高学生的姓名、学号和总分,间隔一个空格。题目保证这样的学生是唯一的。

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {int n;
  5. cin>>n;
  6. if(n>10){n=10;}
  7. else {n=n;}
  8. struct student
  9. {
  10. char id[5];
  11. char name[10];
  12. int score[3];
  13. }stu[n];
  14. {
  15. int max,i1=0;
  16. for(int i=0;i<n;i++)
  17. {cin>>stu[i].id[0]>>stu[i].id[1]>>stu[i].id[2]>>stu[i].id[3]>>stu[i].id[4]>>stu[i].name>>stu[i].score[0]>>stu[i].score[1]>>stu[i].score[2];}max=stu[0].score[0]+stu[0].score[1]+stu[0].score[2];
  18. for(int i=0;i<n-1;i++)
  19. {if (stu[i1].score[0]+stu[i1].score[1]+stu[i1].score[2]<stu[i+1].score[0]+stu[i+1].score[1]+stu[i+1].score[2])
  20. {
  21. i1=i+1;
  22. }
  23. else
  24. {
  25. i1=i1;}
  26. }
  27. cout<<stu[i1].name<<" "<<stu[i1].id[0]<<stu[i1].id[1]<<stu[i1].id[2]<<stu[i1].id[3]<<stu[i1].id[4]<<" "<<stu[i1].score[0]+stu[i1].score[1]+stu[i1].score[2]<<endl;
  28. }}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/396419
推荐阅读
相关标签
  

闽ICP备14008679号