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; }