c语言自动生成时间计算天数,C语言计算某月的天数(附带源码)

  • Post author:
  • Post category:其他

这是一个C语言编程实例:给定年份和月份,求该月共有多少天。

问题分析

输入:年份(整数)和月份(整数)。

输出:该月份的天数(整数)。

一年有 12 个月,其中一、三、五、七、八、十、十二月各有 31 天,四、六、九、十一月各有 30 天。二月比较特殊,闰年的二月有 29 天,平年的二月有 28 天,要确定二月的天数,就要先判断当年是否为闰年。

某年是否为闰年可以依据“四年一闰,百年不闰,四百年闰”来进行判断。也就是说在能被 4 整除的年份当中,除了那些能被 100 整除但不能被 400 整除的年份外,其余的都是闰年(见图 1)。判断一个数能否被另一个数整除可以用 C 语言的求模运算符(%)来实现。

1b1d582476d13f3c561035dbbfadeb6f.gif

图 1:判断某年是否为闰年

用 xxxx 表示年份,则凡是不能被 4 整除(xxxx%4!=0)的年份都是平年;而在能被 4 整除的年份中,那些能被 100 整除但不能被 400 整除((xxxx%100==0)&&(xxxx%400!=0))的年份也是平年。

(xxxx%4 != 0) || ((xxxx%100 == 0) && (xxxx%400 != 0))

凡是能被 400 整除(xxxx%400==0)的年份都是闰年;能被 4 整除但不能被 100