请你计算出 xx 年 yy 月 zz 日是 xx 年的第几天。
请注意闰年对答案的影响。
输入格式
一行三个整数,xx,yy 和 zz。(1583≤x≤2100)。数据保证输入合法。输出格式
一个整数,表示是第几天。
- Sample Input
- 2016 3 1
- Sample Output
- 61
- Sample Input 2
- 1900 3 1
- Sample Output 2
- 60
1. #include<stdio.h>
2. int main(){
3. int year,month,day,sum;
4. scanf("%d %d %d",&year,&month,&day);
5. switch(month){//根据月份,加进去天数,所以用开关
6. case(1): sum=0;break;
7. case(2):sum=31;break;
8. case(3):sum=59;break;
9. case(4):sum=90;break;
10. case(5):sum=120;break;
11. case(6):sum=151;break;
12. case(7):sum=181;break;
13. case(8):sum=212;break;
14. case(9):sum=243;break;
15. case(10):sum=273;break;
16. case(11):sum=304;break;
17. case(12):sum=334;break;
18. default: break;
19. }
20.if(year%4==0&&year%100!=0&&month>2||year%400==0)//判断闰年
21.sum=sum+day+1;
22.else
23.sum=sum+day;
24.printf("%d",sum);
25.return 0;
26.}
先思考月份问题,月份规律难寻找,就用开关语句来完成天数的增加,最后判断闰年,并且月份注意需要大于2,因为天数会提供。