题目链接:https://vjudge.net/contest/274223#problem/J
#include <iostream>
using namespace std;
struct FUN
{
int day, month, year;
};
int main()
{
int i, sum;
FUN a;
char p[2];
while (cin >> a.year>>p[0]>> a.month >>p[1]>> a.day)
{
sum = 0;
if(a.year%400==0)
for (i = 1; i < a.month; i++)
switch (i)
{
case 1:sum = sum + 31;
break;
case 2:sum = sum + 29;
break;
case 3:sum = sum + 31;
break;
case 4:sum = sum + 30;
break;
case 5:sum = sum + 31;
break;
case 6:sum = sum + 30;
break;
case 7:sum = sum + 31;
break;
case 8:sum = sum + 31;
break;
case 9:sum = sum + 30;
break;
case 10:sum = sum + 31;
break;
case 11:sum = sum + 30;
break;
case 12:sum = sum + 31;
break;
default:
break;
}
else if(a.year%4==0&&a.year%100!=0)
for (i = 1; i < a.month; i++)
switch (i)
{
case 1:sum = sum + 31;
break;
case 2:sum = sum + 29;
break;
case 3:sum = sum + 31;
break;
case 4:sum = sum + 30;
break;
case 5:sum = sum + 31;
break;
case 6:sum = sum + 30;
break;
case 7:sum = sum + 31;
break;
case 8:sum = sum + 31;
break;
case 9:sum = sum + 30;
break;
case 10:sum = sum + 31;
break;
case 11:sum = sum + 30;
break;
case 12:sum = sum + 31;
break;
default:
break;
}
else for (i = 1; i < a.month; i++)
switch (i)
{
case 1:sum = sum + 31;
break;
case 2:sum = sum + 28;
break;
case 3:sum = sum + 31;
break;
case 4:sum = sum + 30;
break;
case 5:sum = sum + 31;
break;
case 6:sum = sum + 30;
break;
case 7:sum = sum + 31;
break;
case 8:sum = sum + 31;
break;
case 9:sum = sum + 30;
break;
case 10:sum = sum + 31;
break;
case 11:sum = sum + 30;
break;
case 12:sum = sum + 31;
break;
default:
break;
}
sum = sum + a.day;
cout << sum;
cout << '\n';
}
}