Description
你知道,2012-1-1是该年的第1天,而9999-9-9呢?给你一个具体的日期,计算该日期是该年的第几天。
Input
输入一个日期,格式为:Year-month-day。year是小于9999的正整数。
Output
一个整数,表示该日期是该年的第几天。
Sample Input
2012-3-1
Sample Output
61
HINT
Source
本来觉得代码比较简单,所以就不发了,但意外发现scanf输入的问题,决定还是发一下。
加减乘除作为char型,可以输入int中,当然运行结果来看,加减视为正负号,乘除不清楚,感兴趣的小伙伴可以试一下。空格与回车无法输入int型。。。(我是这样理解的,不知道有没有错误)
#include <stdio.h>
#include <stdlib.h>
int main()
{
int year,month,day;
int y[13]= {0,31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d%d%d",&year,&month,&day);
if((year%400==0)||(year%4==0&&year%100!=0))
y[2]++;
int i;
int sum=0;
for(i=0;i<month;i++)
{
sum+=y[i];
}
sum+=day;
printf("%d",sum);
return 0;
}