用以下三个函数实现;
(1) IsLeapYear()--- 输入一个数,判断是否为闰年,是返回1,否则返回0
(2) SummaryDays()--- 输入月、日,求该天是第几天
(3) SummaryDaysOfYear() --- 输入年、月、日,求该天是当年的第几天
/******************************************************************************************* ** 函数名称: IsLeapYear() ** 作 者: 张月华 ** 版 本: 1.0.0 ** 日 期: 2011-6-16 ** 功能描述: 输入一个数,判断是否为闰年,是返回1,否则返回0 ** 被本函数调用的函数清单: ** 调用本函数的函数清单: 1. SummaryDaysOfYear() ** 被访问的表: 无 ** 被修改的表 : 无 ** 输 入: int year --- 输入年数 ** 输 出: 无 ** 返 回 值: 1 -- 闰年 0 -- 非闰年 ** 其 他: 判断闰年:(1)能被4整除,但是不能被100整除,或者: (2)能被100整除,也能被400整除 ** 修改历史: 1. 修改时间: 修 改 者: 版 本: 修改简述: 2. ...... *********************************************************************************************/ int IsLeapYear(int year) { int is_leap; /* 闰年的标志位 */ if ((year % 4 == 0 && year % 100 != 0) || ( year % 100 ==0 && year % 400 ==0) ) { is_leap = 1; } else is_leap = 0; return is_leap; }
/******************************************************************************************* ** 函数名称: SummaryDays() ** 作 者: 张月华 ** 版 本: 1.0.0 ** 日 期: 2011-6-16 ** 功能描述: 输入月、日,求该天是第几天 ** 被本函数调用的函数清单: ** 调用本函数的函数清单: 1. SummaryDaysOfYear() ** 被访问的表: 无 ** 被修改的表 : 无 ** 输 入: int month --- 输入月 int day --- 输入日 ** 输 出: 无 ** 返 回 值: 天数 ** 其 他: ** 修改历史: 1. 修改时间: 修 改 者: 版 本: 修改简述: 2. ...... *********************************************************************************************/ int SummaryDays(int month, int day) /* 由月、日计算天数 */ { int day_table[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; int liv_i; /* 求天数,循环控制变量 */ for (liv_i = 1; liv_i < month; liv_i++) { day = day + day_table[liv_i]; } return day; }
/******************************************************************************************* ** 函数名称: SummaryDaysOfYear() ** 作 者: 张月华 ** 版 本: 1.0.0 ** 日 期: 2011-6-16 ** 功能描述: 输入年、月、日,求该天是当年的第几天 ** 被本函数调用的函数清单: ** 调用本函数的函数清单: ** 被访问的表: 无 ** 被修改的表 : 无 ** 输 入: int year --- 输入年 int month --- 输入月 int day --- 输入日 ** 输 出: 无 ** 返 回 值: 天数 ** 其 他: ** 修改历史: 1. 修改时间: 修 改 者: 版 本: 修改简述: 2. ...... *********************************************************************************************/ int SummaryDaysOfYear(int year, int month, int day) { int days = 0; days = SummaryDays(month,day); /* 由月、日计算天数 */ if ( IsLeapYear(year) ) /* 判断是否为闰年 */ { days = days + 1; } return days; }