输入某年某月某日,判断这一天是这一年的第几天

时间:2022-04-22
本文章向大家介绍输入某年某月某日,判断这一天是这一年的第几天,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

题目:输入某年某月某日,判断这一天是这一年的第几天? 1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。 2.程序源代码:

 1 #include<stdio.h>
 2 int main()
 3 {
 4 int day,month,year,sum,leap;
 5 printf("nplease input year,month,dayn");
 6 scanf("%d,%d,%d",&year,&month,&day);
 7 switch(month)/*先计算某月以前月份的总天数*/
 8 {
 9  case 1:sum=0;break;
10  case 2:sum=31;break;
11  case 3:sum=59;break;
12  case 4:sum=90;break;
13  case 5:sum=120;break;
14  case 6:sum=151;break;
15  case 7:sum=181;break;
16  case 8:sum=212;break;
17  case 9:sum=243;break;
18  case 10:sum=273;break;
19  case 11:sum=304;break;
20  case 12:sum=334;break;
21  default:printf("data error");break;
22 }
23 sum=sum+day;  /*再加上某天的天数*/
24  if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/
25   leap=1;
26  else
27   leap=0;
28 if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
29 sum++;
30 printf("It is the %dth day.",sum);
31 return 0;
32 }