找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

请教这段C语言代码如何做一个循环?

查看数: 1985 | 评论数: 8 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-10-4 01:16

正文摘要:

见下图,这段C语言代码要做一百多个if选择,程序每运行一次会进入其中一个if语句,全部写完会有上千行代码,现在我已经写出了两个if选择,用什么样的代码才能省掉这上千行代码,同时又能实现程序功能呢?请大家指教 ...

回复

ID:822598 发表于 2020-10-5 14:25
使用定时器可能效果更佳
ID:525582 发表于 2020-10-5 09:01
qingyemurong 发表于 2020-10-4 22:31
如果你的目的是把ADC值显示出来,不需要那么多代码吗,也不需要要和数组对比,直接显示不就可以了。

之前做的电压表,确实不需要那么多数值,ADC可以直接显示,不过现在我做的温度计,热敏电阻是非线性的,所以要加这么多数值
ID:606388 发表于 2020-10-4 22:31
yytda 发表于 2020-10-4 09:38
是用的数码管显示,我是新手,定时器没用过,还不会用。我是把一百多个数值放在一个数组里面,temp是ADC ...

如果你的目的是把ADC值显示出来,不需要那么多代码吗,也不需要要和数组对比,直接显示不就可以了。
ID:525582 发表于 2020-10-4 09:38
qingyemurong 发表于 2020-10-4 08:31
那个判断语句应该都有问题,   
if(3.146>=temp&&temp>3.137)

是用的数码管显示,我是新手,定时器没用过,还不会用。我是把一百多个数值放在一个数组里面,temp是ADC采样值,用temp的值和数组里面那一百多个数值做对比,对应上哪一个,就把哪一个显示出来,就是不知道怎样做一个循环,让它自己扫描数组里面的值,我主贴里面截图那种方法是最笨的方法,要复制一百多段,上千行代码
ID:525582 发表于 2020-10-4 09:28
有一百多个数值,被封装在一个数组里面,用选择语句扫描这一百多个数值,看temp的值对应数组里面哪一个数值,不知道该如何写这个循环的代码
ID:606388 发表于 2020-10-4 08:31
本帖最后由 qingyemurong 于 2020-10-4 08:40 编辑

那个判断语句应该都有问题,   
if(3.146>=temp&&temp>3.137)

目测你应该是使用了数码管显示,可不可以考虑数码管刷新放在定时器里面,定义全局变量保存读取的数值,那样代码就可以减少很多。
使用if嵌套,那样应该是可以少定义一部分变量的,也可以减少代码。
ID:606388 发表于 2020-10-4 08:27
判断语句不应该是这样吗
ID:213173 发表于 2020-10-4 07:50
用对分查表法。

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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