数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 7000|回复: 21

[other] 初学C语言,终于写出了一个RX8025T的时钟显示和设置的程序

[复制链接]
发表于 2021-6-18 16:36:03 | 显示全部楼层
本帖最后由 freemancn 于 2021-6-18 16:38 编辑

这个switch嵌套if的写法要改.
你可以定义一个有12个元素的常量数组,依次对应每个月的天数.然后使用月数做为数组下标直接读出月数.

打赏

参与人数 1家元 +10 收起 理由
广东梁百万 + 10 谢谢分享经验

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2021-6-18 16:55:13 | 显示全部楼层
没有运行风险,只是代码冗长,会增加出错的概率以及后期代码维护的负担.
我按你代码的大意给你一个实例代码,这段代码不见得直接能用,但能表达出我的意思

const unsigned char Days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30 ,31};

unsigned Month, Day;

Month = MONTH10 * 10 + MONTH1;
Day = DAY10 * 10 +DAY1;

if(Month == 2)
{
        //做2月的特殊处理
}
else if(Day > Days[Month]) Day = 1;

DAY10 = Day / 10;
DAY1= Day %10;

打赏

参与人数 1家元 +10 收起 理由
广东梁百万 + 10 非常感谢

查看全部打赏

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-18 17:55 , Processed in 0.249601 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表