日期模块

// 日期函数
int days[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
typedef struct Date {
	int year, month, day;
}Date;
// 判闰年
inline int leap(int year) {
	return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}
// 判合法性
inline int legal(Date date) {
	if (date.month < 0 || date.month>12)
		return 0;
	if (date.month == 2)
		return date.day > 0 && date.day <= 28 + leap(date.year);
	return date.day > 0 && date.day <= days[date.month - 1];
}
原文地址:https://www.cnblogs.com/CSE-kun/p/14048720.html