C语言如何判断当前日期是否为当月的最后一天

来源:百度知道 编辑:UC知道 时间:2024/05/24 19:20:12
譬如说,从系统取得的当前日期是2008-12-15,C语言如何判断15号是不是当前12月的最后一天?因为2月牵涉到闰年平年的问题,所以这方面也请考虑。

1、采用枚举的方式,将每个月的天数储存,并考虑平年闰年的。

2、例程:

struct Date 

int month; 
int day; 
int year; 
}; 
函数是:
/*
Lastday.CPP
*/
#include <stdio.h>
#define leap(year) (((year%4==0)&&(year%100!=0))||((year%4==0)&&(year%400==0))) 
//判断闰年 
struct Date 

int month; 
int day; 
int year; 
}; 
void Lastday(struct Date * data) 

 if(data->month>13)
 {//如果日期的月份大于13,则结束函数的执行
  printf ("Date(month) Error!");
 }
 long int dataCount =0; 
 int month12[12] = {31,28,31,30,31,30,31,31,30,31,30,31}; 
 if(!leap(data->year))//不是闰年
 {
  if(data-