结构体排序问题
来源:互联网 发布:网络理财 富通贷 编辑:程序博客网 时间:2024/06/08 11:26
此题涉及到:
结构体排序 000010的输出(%06d) 字符串的排序
题目链接:
https://cn.vjudge.net/problem/HDU-1862
AC代码:
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;struct aa{ int xx;//学号 int text;//成绩 char name[10];//姓名} a[100001];bool cmp(aa x,aa y){ return x.xx<y.xx;}bool cmp1(aa x,aa y){ if(strcmp(x.name,y.name)==0)//名字相同时,按照学号递增排序 return x.xx<y.xx; return strcmp(x.name,y.name)<0;//按照非递减字典序排序}bool cmp2(aa x,aa y){ if(x.text==y.text)//成绩相同时,按照学号递增排序 return x.xx<y.xx; return x.text<y.text;}int main(){ int n1,m1,sum; sum=1; while(~scanf("%d%d",&n1,&m1)) { if(n1==0) break; else { for(int i=0; i<n1; i++) scanf("%d %s %d",&a[i].xx,a[i].name,&a[i].text); if(m1==1) sort(a,a+n1,cmp);//学号排序 else if(m1==2) sort(a,a+n1,cmp1);//姓名排序 else if(m1==3) sort(a,a+n1,cmp2); printf("Case %d:\n",sum++);//成绩排序 for(int i=0; i<n1; i++) printf("%06d %s %d\n",a[i].xx,a[i].name,a[i].text); } }}
strcmp的用法:http://blog.csdn.net/gsd4_chenmeng/article/details/78368306
阅读全文
0 0
- 结构体排序问题
- 结构体排序问题
- 排序问题(结构体排序)
- 问题 C: 结构体--学生信息排序
- java 树形结构 排序问题
- c排序问题(结构体与文件)
- [StructLayout(LayoutKind.Sequential) ]是结构体排序问题;
- ACM中的格式化问题/结构体排序格式化输出/水果
- oj问题一-结构体---学生信息排序
- CodeForces 659 B. Qualifying Contest(结构体排序的问题)
- 结构体排序,多级排序
- 结构体成员排序
- 结构体数组排序
- 结构体排序
- 结构体学号排序
- 结构体数组排序
- HDU1031结构体排序
- qsort 排序结构体
- Qualcomm骁龙和vivo共同携手NBA 开启体育跨界新势力
- 亚马逊Echo新品技术解读,如何选择合适的麦克风阵列?
- 文章标题
- iOS 11用户调查报告显示:电池续航时间仅为iOS 10一半
- 李彦宏:《意见》是鼓舞企业家迎接全球创新“中国时刻”的号角
- 结构体排序问题
- ARP介绍
- 集合框架List\Set
- 使用PHP二维码生成类库PHP QR Code生成二维码
- caffe安装 Ubuntu 14.04 + CUDA8.0 + cuDNN v5 + caffe的简要版
- Spring项目转化Spring Web项目插件
- 云栖大会之前 阿里云解释企业云安全架构逻辑
- 英特尔推出全新自主学习芯片加速人工智能发展
- iPhone X会让苹果再次“复兴”么?