试题 历届试题 回文日期

在这里插入图片描述

代码

#include<stdio.h>
int main()
{
	int n,i;
	int y,m,d,f,lc,lb;
	char a[8],b[8],c[8];
	int x[13][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
	scanf("%d",&n);
	n++;
	while(1)
	{
		sprintf(a,"%d",n);
		sscanf(a,"%04d%02d%02d",&y,&m,&d);

		if( (y%400==0) || (y%4==0 || y%100!=0))
			f=1;
		else
			f=0;
			
		if(d>x[f][m] || m>12 || d==0 || m==0)
			n++;
		else
			break;
	}
	
	lb=0; lc=0;
	while(1)
	{
		sprintf(a,"%d%02d%02d",y,m,d);
		sscanf(a,"%04d%02d%02d",&y,&m,&d);
		
		if(lb==0)
		{
			if(a[0]==a[7] && a[1]==a[6] && a[2]==a[5] && a[3]==a[4] )
			{
				lb=1; sprintf(b,"%d%02d%02d",y,m,d); 
			}
		}
		
		if(lc==0)
		{
			if( a[0]==a[2] && a[0]==a[5] && a[0]==a[7] && a[1]==a[3] && a[1]==a[4] && a[1]==a[6])
			{
				lc=1; sprintf(c,"%d%02d%02d",y,m,d);
			}
		}
		
		if(lb && lc)
			break;
		
		if(d<x[f][m])
			d++;
		else if(m<12)
		{
			m++; d=1;
		}
		else
		{
			y++; d=1; m=1;
			if( (y%400==0) || (y%4==0 || y%100!=0))
				f=1;
			else
				f=0;
		}
		
	}
	printf("%s\n",b);
	printf("%s",c);
 } 
posted @ 2021-04-16 15:35  斯文~  阅读(28)  评论(0)    收藏  举报

你好!