用c语言解决闰年问题的详细解释

由于现在经常看见有关闰年的程序,风式各样,眼花缭乱,些许凌乱,观来顿感疲惫。在此希望通过最常用的3种语言(c,c++,java)详细的解释闰年的计算,希望不会误人子弟!
题目:写一个判断输入的年份是闰年的程序!
分析:众所周知,闰年是每4年一个,怎么来的呢?由于1年365天,但是根据地球绕太阳旋转算出地球绕太阳旋转一周要365天多一点,多这一点通过4年的累加便成为了1天,这一天(由于时间在科研等重要领域都有一定的重要性)不能轻易略去,所以便把这一天加到了2月去,形成了2月29天也就是闰年,也就是说(年份/4)就是闰年。但是由于地球绕太阳旋转一周并不是简单的精确时间,在前面说的基础上(每400年)又会多出一点,多的这一点恰好是1天,于是便把这一天加到了400年(后)的这一年上。于是(年份/400)也是闰年。
举个例子:200年:200/4=50 不是闰年,但是400(400/4=100)是闰年。这怎么办?怎么让200不是闰年而400是闰年呢?于是我们想到一个表达式:设n为年份,(n/4=整数并且(&&)n/100不等于整数)或者(||)n/400是整数。这样让200不是闰年,而400确实整数。比如n=1996;n/4=499(整数)并且1996/100=19.96(不是整数)这样1996就是闰年。加入n=2000呢?2000/4=500,2000/100=20。于是2000不是闰年,但是2000/400=5;于是假和真的或者(||)是真,于是2000是闰年。当然在程序中我们就得把/换为%(取余)。(如果还是没看明白请百度链接为:http://baike.so.com/doc/5366944-5602688.html)

c语言程序如下:(环境为vc6.0)


输入数据检验:

可能有些朋友对vc6.0的安装和使用不太熟悉,没关系,最近我将介绍vc6.0,有问题和疑问欢迎各位大神来找我,大家一起学习,进步。欢迎大家来找我交流!关注我的博客哦,谢谢!

  • 10
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值