#include <stdio.h>
typedef struct
{
int year;
int month;
int day;
}time;
int panduan(int i);
int main()
{
time a;
int counter;
scanf("%d %d %d",&a.year,&a.month,&a.day);
int b=panduan(a.year);
if(b==366)
{
switch(a.month)
{
case 1:
counter=a.day;break;
case 2:
counter=a.day+31;break;
case 3:
counter=a.day+31+29;break;
case 4:
counter=a.day+31+29+31;break;
case 5:
counter=a.day+31+29+31+30;break;
case 6:
counter=a.day+31+29+31+30+31;break;
case 7:
counter=a.day+31+29+31+30+31+30;break;
case 8:
counter=a.day+31+29+31+30+31+30+31;break;
case 9:
counter=a.day+31+29+31+30+31+30+31+31;break;
case 10:
counter=a.day+31+29+31+30+31+30+31+31+30;break;
case 11:
counter=a.day+31+29+31+30+31+30+31+31+30+31;break;
case 12:
counter=a.day+31+29+31+30+31+30+31+31+30+31+30;
}
}
if(b==365)
{
switch(a.month)
{
case 1:
counter=a.day;break;
case 2:
counter=a.day+31;break;
case 3:
counter=a.day+31+28;break;
case 4:
counter=a.day+31+28+31;break;
case 5:
counter=a.day+31+28+31+30;break;
case 6:
counter=a.day+31+28+31+30+31;break;
case 7:
counter=a.day+31+28+31+30+31+30;break;
case 8:
counter=a.day+31+28+31+30+31+30+31;break;
case 9:
counter=a.day+31+28+31+30+31+30+31+31;break;
case 10:
counter=a.day+31+28+31+30+31+30+31+31+30;break;
case 11:
counter=a.day+31+28+31+30+31+30+31+31+30+31;break;
case 12:
counter=a.day+31+28+31+30+31+30+31+31+30+31+30;
}
}
//printf("%d %d %d\n",a.year,a.month,a.day);
printf("%d\n",counter);
return 0;
}
int panduan(int i)//判断是否是闰年
{
int days;
if(i%4==0||i%400==0)
days=366;
else days=365;
return days;
}
运行截图: