第几天?
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 124314 Accepted Submission(s): 45109
Problem Description
给定一个日期,输出这个日期是该年的第几天。
Input
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
Sample Input
1985/1/20 2006/3/12
Sample Output
20 71
数组存起来每个月几天,注意二月就行了
#include <stdio.h>
int r[12]={31,29,31,30,31,30,31,31,30,31,30,31};
int p[12]={31,28,31,30,31,30,31,31,30,31,30,31};
void print(int a,int b,int c)
{
int sum=0;
if((a%4==0)&&(a%100!=0)||(a%400==0))
{
for(int i=1;i<b;i++)
sum+=r[i-1];
printf("%d\n",sum+c);
}
else
{
for(int i=1;i<b;i++)
sum+=p[i-1];
printf("%d\n",sum+c);
}
}
int main()
{
int a,b,c;
while(scanf("%d/%d/%d",&a,&b,&c)!=EOF)
print(a,b,c);
return 0;
}