首页 > 技术文章 > C语言实现通过日期计算这是一年中的第几天

newtol 2017-09-07 23:07 原文

C语言实现通过日期计算这是一年中的第几天


用户通过输入具体的年月日,来计算这是一年中的第几天,具体代码如下:

#include <stdio.h>
int  DayofYear(int year, int month, int day) {
 int i,mm,days=0;
 int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};

 /*判断是否为闰年*/
  if((year%4==0 && year%100!=0) || (year%400==0)){
    mm=1;
  } 
  else{
    mm=0;
  }

  /*如果为闰年,则改变二月份的天数*/   
  if(mm==1){
    a[1]=29;
  }

  /*因为数组第一个是由0开始,并由month-1个月遍历,所以为month-2*/
  for(i=month-2;i>=0;i--){
    day=a[i];
    days+=day;
  }
    return days;
  }

main(){
  int year,month,day;
  printf("Please enter year, month, day:");
  scanf("%d,%d,%d",&year,&month,&day);
  day=day+DayofYear(year,month,day);
  printf("yearDay = %d\n",day);
}


这里写图片描述
扫码关注作者个人技术公众号,有关技术问题后台回复即可,不定期将有学习资源分享

推荐阅读