判断是一年中的第几天

本题要求实现一个函数,在主函数中输入一个日期的年、月、日的值(空格分隔),然后在被调函数中求出这一天是当年的第几天,在主函数中输出结果。

#include <stdio.h>
int sumdays(int y,int m,int d);
int main(void)
{
  int year,month,day,days;
  scanf("%d%d%d",&year,&month,&day);
  days=sumdays(year,month,day);
  printf("%d",days);
  return 0;
}

//这里是函数
int sumdays(int y,int m,int d) { int sum = 0; //1 2 3 4 5 6 7 8 9 10 11 12 int mounth_1[12]={31,28,31,30,31,30,31,31,30,31,30,31}; int mounth_2[12]={31,29,31,30,31,30,31,31,30,31,30,31}; if((y %4 == 0 && y% 100 != 0)|| y % 400 ==0) { for(int i = 0; i < m-1; i++) { sum+=mounth_2[i]; } sum+=d; } else { for(int i = 0; i < m-1; i++) { sum+=mounth_1[i]; } sum+=d; } return sum; }

猜你喜欢

转载自www.cnblogs.com/zhang-zsq/p/12816739.html