解题思路:将日期年月日,存入结构体中,然后用sort对结构体排序
注意事项:
参考代码:
#include <iostream> #include <string> #include <algorithm> #include <cmath> using namespace std; struct Date{ int y; int m; int d; }; Date date[10005]; bool cmp(Date d1,Date d2){//注意cmp函数书写多用!=去判断,以免漏掉情况 if(d1.y!=d2.y)return d1.y<d2.y;//如果年份不一样,直接返回年份的比较 else {if(d1.m!=d2.m)return d1.m<d2.m;//如果年份相同,在判断月,如果还相同,就判断日 else return d1.d<d2.d; } }; int main(){ int i=0; while(~scanf("%d/%d/%d",&date[i].m,&date[i].d,&date[i].y)){ i++; } sort(date,date+i,cmp); for(int j=0;j<i;j++){ printf("%02d/%02d/%d\n",date[j].m,date[j].d,date[j].y); } return 0; }
0.0分
0 人评分