实验12:Problem I: 成绩排序
2024-08-28 07:45:04
Home | Web Board | ProblemSet | Standing | Status | Statistics |
Problem I: 成绩排序
-->
Problem I: 成绩排序
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 490 Solved: 403
[Submit][Status][Web Board]
Description
定义Student类:
1. 数据成员string name和int score表示一个学生的姓名、成绩。
2. 无参构造函数。
3. void setStudent(string,int)方法,用于设置一个学生的属性值。
4. 重载>(大于运算符)。Student类的对象A和B的大小关系,A>B定义为A.score>B.score,或者A.score=B.score但A.name<B.name。
5.重载运算符<<用于输出学生信息:先输出成绩再输出姓名,中间用一个空格隔开。
Input
分多行。第一个M>0表示有M个学生信息。
之后有M行,每一行是一个学生信息。第一部分是学生姓名,第二部分是学生成绩。
Output
输出为M行,按照从大到小的顺序依次输出每个学生的成绩、姓名。假定不存在重名的学生。
Sample Input
5
Tom 98
Jack 97
Mary 98
Sherry 99
Dock 97
Tom 98
Jack 97
Mary 98
Sherry 99
Dock 97
Sample Output
99 Sherry
98 Mary
98 Tom
97 Dock
97 Jack
98 Mary
98 Tom
97 Dock
97 Jack
HINT
string类有个方法:int compare(const string &s) const;用于比较当前字符串和s的大小,其原理等同于C语言的库函数strcmp。
Append Code
-->
한국어<中文فارسیEnglishไทยAll Copyright Reserved 2010-2011SDUSTOJTEAMGPL2.02003-2011HUSTOJ ProjectTEAM
Anything about the Problems, Please Contact Admin:admin
#include<iostream>
#include<cstring>
#include<string>
#define null ""
using namespace std;
class Student{
public:
string name;
int score;
Student(string n=null,int s=):name(n),score(s){}
void setStudent(string n,int s)
{
name=n;
score=s;
}
int operator>(Student &s)
{
if(score>s.score)
return ;
else if(score==s.score&&name<s.name)
return ;
else
return ;
} friend ostream &operator<<(ostream &os,Student &s);
};
ostream &operator<<(ostream &os,Student &s)
{
os<<s.score<<" "<<s.name;
return os;
}
int main()
{
int cases;
string name;
int score;
cin>>cases;
Student students[cases], temp;
for (int i = ; i < cases; i++)
{
cin>>name>>score;
students[i].setStudent(name, score);
}
for (int i = ; i < cases; i++)
{
for (int j = ; j < cases - i - ; j++)
{
if (!(students[j] > students[j + ]))
{
temp = students[j];
students[j] = students[j + ];
students[j + ] = temp;
}
}
}
for (int i = ; i < cases; i++)
cout<<students[i]<<endl;
return ;
}
最新文章
- 删除流氓软件McAfee
- Codeforces632E Thief in a Shop(NTT + 快速幂)
- Linux的学习之路
- 123——Appium Girls活动
- JavaScript hasOwnProperty() 函数详解
- 帮你选处理器:CPU T9500-p9500-T9400-T9300-p8700对比分析!
- [反汇编练习] 160个CrackMe之014
- SQL Server常见问题总结
- awk 多分隔符
- org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0x0) was found in the CDATA sectio
- getBoundingClientRect获取元素在页面上的位置
- ABAP开发规范
- Class create, device create, device create file【转】
- BZOJ 3498: PA2009 Cakes 一类经典的三元环计数问题
- redis有序集合性能 列表、集合、有序集合
- redis 的 docker 镜像使用
- T-SQL查询的逻辑处理过程
- ";Unchecked-Send";漏洞分析
- WordPress主题开发:数据调用
- php curl-class post