代码改变世界

计算某天是所在年的第几天

2014-06-10 19:28  小八哥的Acm  阅读(169)  评论(0编辑  收藏  举报
 1 #include <stdio.h>
 2 #include <stdbool.h>
 3 int main()
 4 {
 5     int y,m,d;
 6     while(scanf("%d%d%d",&y,&m,&d)){
 7         printf("%d\n",dayOfYear(y,m,d));
 8     }
 9     return 0;
10 }
11 // 判断是否是闰年 
12 bool isLeapYear(int inputYear){
13     if((inputYear%4==0&&inputYear%100!=0)||inputYear%400==0){
14         return true;    
15     }
16     else {return false;}
17 }    
18 int dayOfYear(int year,int month,int day){
19     int day_of_year;
20     if(isLeapYear(year)){
21         day_of_year=((275 * month)/9)-((month + 9)/12)+day-30;
22     }else{
23         day_of_year=((275 * month)/9)-(((month + 9)/12)<<1)+day-30;
24     }
25     return day_of_year;
26 } 

说明

21行的275暂未解决