码迷,mamicode.com
首页 > 其他好文 > 详细

1177

时间:2018-12-18 20:55:04      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:sam   总数   out   结束   scan   mon   ++   des   return   

Problem Description 
 
对于输入的一些日期,日期格式为“MM/DD/YYYY”。编程将其按日期从小到大排列。(本问题只有一组测试数据,日期总数不超过100个)

当输入00/00/0000时,表示测试输入的结束(本行不处理)

Sample Input
12/31/2005
10/21/2003
02/12/2004
11/12/1999
10/22/2003
11/30/2005
00/00/0000
Sample Output
11/12/1999
10/21/2003
10/22/2003
02/12/2004
11/30/2005
12/31/2005



#include<algorithm> #include<cstdio> using namespace std; struct riqi { int day; int month; int year; }r[100]; int compare(riqi a,riqi b) { if(a.year==b.year) { if(a.month==b.month) { return a.day<b.day; } else { return a.month<b.month; } } else { return a.year<b.year; } } int main() { int i=0,j; while (scanf("%d/%d/%d",&r[i].month,&r[i].day,&r[i].year)!=EOF&&r[i].month!=00&&r[i].day!=00&&r[i].year!=0000) { i++; } sort(r,r+i,compare); for(j=0;j<i;j++) { printf("%02d/%02d/%d\n",r[j].month,r[j].day,r[j].year); } }

 

1177

标签:sam   总数   out   结束   scan   mon   ++   des   return   

原文地址:https://www.cnblogs.com/ilovetheworld/p/10139869.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!