http://ac.jobdu.com/problem.php?cid=1040&pid=7
-
题目描述:
-
输入年、月、日,计算该天是本年的第几天。
-
输入:
-
包括三个整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。
-
输出:
-
输入可能有多组测试数据,对于每一组测试数据,输出一个整数,代表Input中的年、月、日对应本年的第几天。
-
样例输入:
-
1990 9 20 2000 5 1
-
样例输出:
-
263 122
#include<stdio.h>
int Runyear(int yy)
{
if(yy%4==0&&(yy%100!=0||yy%400==0))
return 1;
return 0;
}
int Count(int yy,int mm,int dd)
{
int sum=0;
if(mm>1)
sum+=31;
if(mm>2)
if(Runyear(yy))
sum+=29;
else
sum+=28;
if(mm>3)
sum+=31;
if(mm>4)
sum+=30;
if(mm>5)
sum+=31;
if(mm>6)
sum+=30;
if(mm>7)
sum+=31;
if(mm>8)
sum+=31;
if(mm>9)
sum+=30;
if(mm>10)
sum+=31;
if(mm>11)
sum+=30;
sum+=dd;
return sum;
}
int main()
{
int yy,mm,dd;
while(scanf("%d%d%d",&yy,&mm,&dd)==3)
printf("%d\n",Count(yy,mm,dd));
return 0;
}