计算输入的是当年的第几天
1 #include <stdio.h>
2 #include <stdlib.h>
3
4 int main()
5 {
6 int year,month,day,sum;
7
8 //输入年,月,日
9 printf("please input day in'year,month,day':");
10 scanf("%d,%d,%d",&year,&month,&day);
11 printf("\n%d,%d,%d\n",year,month,day);
12
13 //mine must have errors in below
14 /*if(month<3)
15 {
16 printf("It is the %dth day",day+50);
17 }
18 else
19 {
20
21 }*/
22
23 //计算基本的天数,关于润年的情况,在最后算。
24 switch(month)
25 {
26 case 1:
27 sum=0;
28 break;
29
30 case 2:
31 sum=31;
32 break;
33
34 case 3:
35 sum=59;
36 break;
37
38 case 4:
39 sum=90;
40 break;
41
42 case 5:
43 sum=120;
44 break;
45
46 case 6:
47 sum=151;
48 break;
49
50 case 7:
51 sum=181;
52 break;
53
54 case 8:
55 sum=212;
56 break;
57
58 case 9:
59 sum=243;
60 break;
61
62 case 10:
63 sum=273;
64 break;
65
66 case 11:
67 sum=304;
68 break;
69
70 case 12:
71 sum=335;
72 break;
73
74 default:
75 printf("month is error!");
76 exit(0);
77 }
78
79 //如果是润年,并且月数大于2那么要加回一天。
80 if((year%400==0) || (year%4==0&&year%100==0))
81 if(month>2)
82 {
83 sum+=1;
84 }
85
86 printf("it is the %dth day of the %dyear!\n",sum+day,year);
87
88 return 0;
89 }