从键盘输入一个日期,格式为y-m-d。
要求计算该日期与1949年10月1日距离多少天。
例如:
用户输入:1949-10-2
程序输出:1
用户输入:1949-11-1
程序输出:31
输入格式
输入年份,月份,日期,每两个数之间由一个-隔开,保证数据合法。
输出格式
一个数,表示这个日期离新中国的建国日有多少天。
#include<stdio.h>
int main()
{
int y,m,d,day,d1=0,d2=0,d3=0,x;
scanf("%d-%d-%d",&y,&m,&d);
x=y-1949;
if(x>0)
{
switch(m-1)
{
case 11:d1+=30;
case 10:d1+=31;
case 9:d1+=30;
case 8:d1+=31;
case 7:d1+=31;
case 6:d1+=30;
case 5:d1+=31;
case 4:d1+=30;
case 3:d1+=31;
case 2:d1+=28;
case 1:d1+=31;break;
}
if(m>2&&y%4==0&&y%100!=0||y%400==0)
d1++;
d2=(x-1)*365;
if(x/4>1)
d2+=x/4;
d3=91;
day=d1+d2+d3+d;
}
else
{
if(m-10>0)
{
switch(m-1)
{
case 11:d1+=60;break;
case 10:d1+=30;break;
}
day=d1+d;
}
else
day=d-1;
}
printf("%d\n",day);
}