📄 zp2420.cpp
字号:
//---------------------------------------------------------------------------
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
#include <stdio.h>
int leapif(int y)
{
if (y % 4)
return 0;
else
if (y % 400==0)
return 1;
else
if (y % 100==0)
return 0;
else
return 1;
}
int monthly(int m,int y)
{
if (m==1 || m==3|| m==5|| m==7|| m==8|| m==10|| m==12)
return 1;
else
if (m==4 || m==6 || m==9 || m==11)
return 0;
else
if (m==2 && leapif(y))
return -1;
else
return -2;
}
int main(int argc, char* argv[])
{
int n,day,year,month;
while (scanf("%d",&n) && n>=0)
{
day=n%7;
n++;
year=2000;
while (n>365+leapif(year))
n-=365+leapif(year++);
month=1;
while (n>30+monthly(month,year))
n-=30+monthly(month++,year);
printf("%d-",year);
//cout<<year<<'-';
if (month<10)
printf("0%d",month);
//cout<<0<<month;
else
printf("%d",month);
//cout<<month;
printf("-");
//cout<<'-';
if (n<10)
printf("0%d",n);
//cout<<0<<n;
else
printf("%d",n);
//cout<<n;
printf(" ");
//cout<<' ';
switch (day)
{
case 0:printf("Saturday"); break;
case 1:printf("Sunday"); break;
case 2:printf("Monday");break;
case 3:printf("Tuesday");break;
case 4:printf("Wednesday");break;
case 5:printf("Thursday");break;
case 6:printf("Friday");break;
}
printf("\n");
//cout<<endl;
}
return 0;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -