#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#include <string.h>
struct Date
{
int year;
int month;
int day;
}Date;
int main()
{
int sum=0,day,temp,year,month;
printf("请选择:\n1、请输入年月日:\n2、请输入年份和天数:\n");
scanf("%d",&temp);
if(temp == 1)
{
scanf("%d %d %d",&Date.year,&Date.month,&Date.day);
if((Date.year%400 ==0)||(Date.year%100!=0&&Date.year%4==0))
{
for(int i=1;i<Date.month;i++)
{
switch(i)
{
case 1:day = 31;break;
case 2:day = 29;break;
case 3:day = 31;break;
case 4:day = 30;break;
case 5:day = 31;break;
case 6:day = 30;break;
case 7:day = 31;break;
case 8:day = 31;break;
case 9:day = 30;break;
case 10:day = 31;break;
case 11:day = 30;break;
case 12:day = 31;break;
}
sum+=day;
}
sum+=Date.day;
}
else {
sum+=Date.day;
for(int i=1;i<Date.month;i++)
{
switch(i)
{
case 1:day = 31;break;
case 2:day = 28;break;
case 3:day = 31;break;
case 4:day = 30;break;
case 5:day = 31;break;
case 6:day = 30;break;
case 7:day = 31;break;
case 8:day = 31;break;
case 9:day = 30;break;
case 10:day = 31;break;
case 11:day = 30;break;
case 12:day = 31;break;
}
sum+=day;
}
sum+=Date.day;
}
printf("%d",sum);
return 0;
}
if(temp == 2)
{
int a[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d",&year);
scanf("%d",&day);
while(1)
{
for(month =1;;month++)
{
if(day>a[month])
day -=a[month];
else break;
}
if(day<=a[month])
break;
}
if(((year%400 ==0)||(year%100!=0&&year%4==0))&&month>2)
day++;
if(day>a[month])
{
day = 1;
month++;
}
}
printf("%d月%d日",month,day);
return 0;
}