暑期集训之EXCEL排序
来源:互联网 发布:西北工业大学矩阵论 编辑:程序博客网 时间:2024/06/06 10:42
Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。
行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,同组测试中没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩(闭区间[0, 100]内的整数)组成,每个项目间用1个空格隔开。当读到 N=0 时,全部输入结束,相应的结果不要输出。
时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则按他们的学号递增排序。
3 1000007 James 85000010 Amy 90000001 Zoe 604 2000007 James 85000010 Amy 90000001 Zoe 60000002 James 984 3000007 James 85000010 Amy 90000001 Zoe 60000002 James 900 0
Case 1:000001 Zoe 60000007 James 85000010 Amy 90Case 2:000010 Amy 90000002 James 98000007 James 85000001 Zoe 60Case 3:000001 Zoe 60000007 James 85000002 James 90000010 Amy 90
这道题在做的时候也没遇到什么困难,只是在sort排序当中多加了个字符串的排序,具体用法详见代码,没啥讲的,我这个菜鸡都做了出来,代码如下:
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;struct stu{char num[10];char name[10];int fenshu;}p[100005];bool cmp1(stu a,stu b){int t;t=strcmp(a.num,b.num);if(t==1)return true;elsereturn false;}bool cmp2(stu a,stu b){int t;t=strcmp(a.name,b.name);if(t==1)return true;else if(t==0){int k;k=strcmp(a.num,b.num);if(k==1)return true;elsereturn false;}elsereturn false;}bool cmp3(stu a,stu b){ if(a.fenshu==b.fenshu){int k;k=strcmp(a.num,b.num);if(k==1)return true;elsereturn false;}elsereturn a.fenshu>b.fenshu;}int main(){ int N,C,i,e=1; while(scanf("%d%d",&N,&C)&&N!=0) { for(i=0;i<N;i++) { scanf("%s",&p[i].num); scanf("%s",&p[i].name); scanf("%d",&p[i].fenshu);}if(C==1){sort(p,p+N,cmp1);printf("Case %d:\n",e);for(i=N-1;i>=0;i--)printf("%s %s %d\n",p[i].num,p[i].name,p[i].fenshu);}else if(C==2){sort(p,p+N,cmp2);printf("Case %d:\n",e);for(i=N-1;i>=0;i--)printf("%s %s %d\n",p[i].num,p[i].name,p[i].fenshu);}else if(C==3){sort(p,p+N,cmp3);printf("Case %d:\n",e);for(i=N-1;i>=0;i--)printf("%s %s %d\n",p[i].num,p[i].name,p[i].fenshu);}e++;}return 0;}
阅读全文
0 0
- 暑期集训之EXCEL排序
- 暑期集训之稳定排序
- 暑期集训之最小公倍数
- 暑期集训之cake
- 暑期集训之Array
- 暑期集训之ZOJ
- 暑期集训之哈夫曼树
- 暑期集训之Subsequence
- 暑期集训之pie
- 暑期集训之Highways
- 暑期集训之感
- 暑期集训之最大公约数问题
- 暑期集训之立方求和
- 暑期集训之寻找大富翁
- 暑期集训之阶乘之和
- 暑期集训
- 暑期集训之美素数问题
- 暑期集训之一般素数的判断
- MySQL数据的主从复制、半同步复制和主主复制详解
- 稀疏矩阵存储格式总结+存储效率对比:COO,CSR,DIA,ELL,HYB
- 深入类加载器----线程上下文类加载器
- http接口测试工具——RESTClient
- nRF51822低功耗睡眠函数应用
- 暑期集训之EXCEL排序
- ACM中卡特兰数整理
- 【HDU】5723
- 求数组中出现次数超过一半的数字
- Javascript中的this
- sort+结构体练习_稳定排序 2008浙大研究生复试热身赛(2)——全真模拟
- 3PC
- 3643. 【GDOI2014】拯救莫莉斯
- 用分数的形式输出两个数相除的商——java实现