JustOj 1256: 成绩排名 (结构体排序)
2017-07-02 16:09
274 查看
1256: 成绩排名
时间限制: 1 Sec 内存限制: 128 MB
提交: 28 解决: 21
[提交][状态][讨论版]
题目描述
有N个学生,每个学生的数据包括学号、姓名、成绩,要求按成绩大小输出学生的姓名(若成绩相等,学号小的排名在前)
输入
第一行为学生数量N
接下来的N行为每个学生的学号、姓名、成绩
输出
学生姓名,每行一个
样例输入
样例输出
提示
来源
#include <iostream>
#include <algorithm>
using namespace std;
struct stu
{
int num;
char name[10];
int sum;
}s[100];
bool cmp(stu x,stu z)
{
if(x.sum>z.sum){
return 1;
}else if(x.sum==z.sum){
return x.num<z.num;
}else{
return 0;
}
}
int main()
{
int n,i;
cin>>n;
for(i=0;i<n;i++){
cin>>s[i].num>>s[i].name>>s[i].sum;
}
sort(s,s+n,cmp);
for(i=0;i<n;i++){
cout<<s[i].name<<endl;
}
return 0;
}
时间限制: 1 Sec 内存限制: 128 MB
提交: 28 解决: 21
[提交][状态][讨论版]
题目描述
有N个学生,每个学生的数据包括学号、姓名、成绩,要求按成绩大小输出学生的姓名(若成绩相等,学号小的排名在前)
输入
第一行为学生数量N
接下来的N行为每个学生的学号、姓名、成绩
输出
学生姓名,每行一个
样例输入
4 4 jx 97 2 ust 90 3 acm 97 1 oj 89
样例输出
acm jx ust oj
提示
来源
#include <iostream>
#include <algorithm>
using namespace std;
struct stu
{
int num;
char name[10];
int sum;
}s[100];
bool cmp(stu x,stu z)
{
if(x.sum>z.sum){
return 1;
}else if(x.sum==z.sum){
return x.num<z.num;
}else{
return 0;
}
}
int main()
{
int n,i;
cin>>n;
for(i=0;i<n;i++){
cin>>s[i].num>>s[i].name>>s[i].sum;
}
sort(s,s+n,cmp);
for(i=0;i<n;i++){
cout<<s[i].name<<endl;
}
return 0;
}
相关文章推荐
- 1193: 单科成绩排序(结构体专题)
- 结构体数组排序 (学生信息 按成绩排序 )
- 1004. 成绩排名 (20) (ZJUPAT 结构体)
- ZZULI-1194: 总成绩排序(结构体专题)
- HDU 1718 Rank 排序查找,成绩排名
- HDU--杭电--2093--考试排名--结构体排序
- 结构体简单排序练习 题目1014:排名
- 1193: 单科成绩排序(结构体专题)
- 学生成绩排序(结构体)
- *寒假水69——考试排名【结构体排序】【strstr函数】
- 有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序, 成绩, 年龄
- C语言,有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序
- 有5名学生保存在结构体数组中,编程按学生的成绩升序排序,按学生的姓名降序排序,按年龄从低到高排序
- JustOj 1404: 木木换班(又是一道结构体排序)
- HDU 2093 考试排名---结构体排序
- C/C++动态自定义结构体数组实例锻炼-学生成绩排序
- ZZULI-1193: 单科成绩排序(结构体专题)
- 成绩排序(结构体三级排序)
- 九度题目1014:排名 (结构体多级排序)
- 考试成绩和学号的(结构体)排序