主页 > 手机  > 

[NKU]C++基础课(五)补充:结构体

[NKU]C++基础课(五)补充:结构体

【3.3】C++结构体介绍_哔哩哔哩_bilibili 结构体 最厉害的学生 现有N名同学参加了期末考试,并且获得了每名同学的信息: 1 姓名(不超过8个字符的仅有英文小写字母的字符串) 2 语文、数学、英语成绩(均为不超过150的自然数)。 3 总分最高的学生就是最厉害的。 请输出最厉害的学生各项信息(姓名、各科成绩)。 如果有多个总分相同的学生,输出靠前的那位。 输入格式 1 第一行输入一个正整数 N,表示学生个数。 2 第二行开始,往下N行,对于每一行首先先输入一个字符串表示学生姓名, 再输入三个自然数表示语文、数学、英语的成绩。 均用空格相隔。 输入格式:最厉害的学生

#include<iostream> using namespace std; const int maxn = 1000; struct Student{ string name; int chinese; int math; int english; int getsum(){ return chinese+math+english; } }; int n; Student s[maxn]; // s 是一个包含多个 Student 对象的数组 int main(){ cin >> n; int best = 1; for (int i=1; i <=n; ++i){ cin >> s[i].name >> s[i].chinese >> s[i].math >> s[i].english; if (s[i].getsum()>s[best].getsum()){ best = i; } } cout << s[best].name << " " << s[best].chinese << " " << s[best].math << " " << s[best].english << endl; return 0; }

假设输入

3 Alice 80 90 70 Bob 85 95 75 Charlie 70 80 60

输出为 Bob 85 95 75

标签:

[NKU]C++基础课(五)补充:结构体由讯客互联手机栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“[NKU]C++基础课(五)补充:结构体