C语言编程高手:输入年份year和月month,求该月有多少天。用C语言写程序。谢咯

如题所述

int GetDays(int nYear, int nMonth)
{
//参数越界检查(nMonth输入为1~12)
if (nMonth <= 0 || nMonth > 12)
{
return 0;
}

//每个月的天数
int anMonthDay[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

//闰年的2月是29天
if((nYear % 4 == 0) && (nYear % 100 != 0) || (nYear % 400 == 0))
{
anMonthDay[1] = 29;
}

//返回这个月的天数
return anMonthDay[nMonth - 1];
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-18
给你解题思路:
1.先判断Month是否是二月,
1.1.若是则判断Year是否为闰年,求出 Year年在Month月的最后一天的日期。
判断方法:
MonthDay = ( (Year % 4 == 0) && (Year % 100 != 0) || (Year % 400 == 0) ) ? 29 : 28.
2.Month是1,3,5,7,8,10,12, MonthDay = 31
3.Month是4,6,9,11, MonthDay = 30
相似回答