Discuz! Board

 找回密码
 立即注册
查看: 253|回复: 1

10.21 结构体练习

[复制链接]

54

主题

66

帖子

574

积分

高级会员

Rank: 4

积分
574
发表于 2022-10-21 20:02:02 | 显示全部楼层 |阅读模式
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int n;
  4. string t;
  5. struct a
  6. {
  7.         string yea;
  8.         string mon;
  9.         string day;
  10. }s[10000];
  11. bool cmp(a i,a j)
  12. {
  13.         if(i.yea!=j.yea) return i.yea<j.yea;
  14.         if(i.mon!=j.mon) return i.mon<j.mon;
  15.         else return i.day<j.day;
  16. }
  17. int main()
  18. {
  19.         cin>>n;
  20.         for(int i=0;i<n;i++){
  21.                 cin>>t;
  22.                 s[i].yea=t.substr(6,4);
  23.                 s[i].mon=t.substr(0,2);
  24.                 s[i].day=t.substr(3,2);
  25.         }
  26.         sort(s,s+n-1,cmp);
  27.         for(int j=0;j<n;j++){
  28.                 cout<<s[j].mon<<"/"<<s[j].day<<"/"<<s[j].yea<<" ";
  29.         }
  30.         return 0;
  31. }
复制代码
回复

使用道具 举报

574

主题

758

帖子

243万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2435189

烈空座 Lv:100
发表于 2022-10-21 22:24:47 | 显示全部楼层
sort(s,s+n-1,cmp);
改为
sort(s,s+n,cmp);
sort函数的第二个参数应为末尾数据地址的下一个地址
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-2-13 10:38 , Processed in 0.052500 second(s), 32 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.. 技术支持 by 巅峰设计

快速回复 返回顶部 返回列表