#include "stdio.h"
#include "string.h"
#include "math.h"
int panduan(int a,int b,int c) // a年b月c日
{
if(b<=0||b>12)
{
printf("每年为12个月份,你所输入的%d不在这范围内",b);
return 0;
}
if(b==1||b==3||b==5||b==7||b==8||b==10||b==12)
if(c<=0||c>31)
{
printf("你输入的为%d月,本月共31天,你输入的%d不在此范围内",b,c);
return 0;
}
if(b==4||b==6||b==9||b==11)
if(c<=0||c>30)
{
printf("你输入的为%d月,本月共30天,你输入的%d不在此范围内",b,c);
return 0;
}
if((a%4==0&&a%100!=0)||a%400==0)
if(b==2)
if(c<=0||c>29)
{
printf("你输入的为闰年的2月,本月共29天,你输入的%d不在此范围内",c);
return 0;
}
if(b==2)
if(c<=0||c>28)
{
printf("你输入的不是闰年的2月,本月共28天,你输入的%d不在此范围内",c);
return 0;
}
if(a==1582&&b==10&&c>4&&c<15)
{
printf("因为特殊原因,不存在你所输入的1582年10月%d日",c);
return 0;
}
char weak[7][5]={"周三","周四","周五","周六","周日","周一","周二"};
long long sum=365*(a-1)+c;
int p=a/100,m=a/400;
for(int l=1;l2)
sum++;
}
else
printf("你输入的%d年不是闰年\n",a);
if(a>1582)
sum-=10;
else if(a==1582&&b>10)
sum-=10;
else if(a==1582&&b==10&&c>=15)
sum-=10;
else
sum;
int k=sum%7;
printf("你输入的%d年%d月%d日为%s",a,b,c,weak[k]);
}
int danhang(int a)
{
int c[12]={31,28,31,30,31,30,31,31,30,31,30,31};
if((a%4==0&&a%100!=0)||a%400==0)
c[1]++;
int sum=(a-1)*365;
if(a>1582)
sum-=10;
for(int i=1;i1582)
sum-=10;
for(int i=1;i