24节气的算法 c语言,制作二十四节气表的一个思路(C语言版)(原创)

本文介绍了如何使用C语言自制24节气数据表,通过半年36位,半年24位的二进制表示,降低存储需求。算法详细解释了如何根据日期计算节气,并给出了查询节气的函数示例,旨在提高单片机移植性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上学期在做老师布置的一个任务时,本打算在日历中再加上二十四节气的,不过上网搜索发现二十四节气的数据表实在太长,一行才表示一年,心想这一加上又是好几百行的代码,于是就没了兴头。

今天突然心血来潮,想自己动手做一个二十四节气的数据表,并且在脑中也形成了一个很好的思路。上网百科了一下,知道二十四节气中每个月上半月和下半月各有一个节气,并且在上半年中,上半月的是在3至7日,下半月的是在18至22日;而在下半年中,上半月在6至9号,下半月在21至24号。上半年是从3到7和从18到22,跨越的范围是5,用二进制数需要三位;下半年是从6至9和21至24,跨越的范围是4,用二进制数只需两位。

既然这样,我想我们就可以把数据分成两部分,一部分是上半年,一部分是下半年。在上半年中,上半月的日期设为3,那么以上半月节气的日期与三的差作为数据,而下半月的日期设为18,以下半月节气的日期与18的差作为数据。

如2010年1月5日是小寒,与3相差为2,用二进制表示是010(2);&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值