2237 - 日期排序

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

有一些日期,日期格式为“MM/DD/YYYY”。编程将其按日期大小排列。

题目输入

题目输出

输入/输出样例

输入格式

15/12/1999
10/21/2003
10/22/2003
02/12/2004
11/30/2005
12/31/2005

输出格式

15/12/1999
10/21/2003
10/22/2003
02/12/2004
11/30/2005
12/31/2005

C++解答

#include<stdio.h>
#include<algorithm>
using namespace std;
struct riqi
{
    int day;
    int month;
    int year;
}r[1000];
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 y,m,d,i=0,j;
    while(scanf("%d/%d/%d",&d,&m,&y)!=EOF)
    {
        r[i].day=d;
        r[i].month=m;
        r[i].year=y;
        i++;
    }
    sort(r,r+i,compare);
    for(j=0;j<i;j++)
    {
        printf("%02d/%02d/%d\n",r[j].day,r[j].month,r[j].year);
    }
}