如何提取大于10位数的每一位

[复制链接]
1659|3
 楼主| 瑞生 发表于 2015-7-22 23:51 | 显示全部楼层 |阅读模式
这个问题,在你学单片机驱动数码管显示大于10位数的时候,就会遇到。

举个栗子:

在三位数码管上显示一个三位数。比如这个数x=186,怎么把1显示到第一个数码管,8显示到第二个数码管,6显示到第三个数码管?

看起来是不是很简单?

想着简单,做起来难!

这里要学习两个算术运算符:% /

%:是取余数,例如:52除以10的余数是2,那么52%10=2。

/:是除完以后的商,例如:52除以10的商是5。

由此得出:

百位数=x/100;
十位数=x%100/10;
个位数=x%100%10;

例如:

百位数计算:186/100=1;
十位数计算:186%100=86  86/10=8;
个位数计算:186%100=86  86%10=6;

如果是4位数呢?

千位数=x/1000;
百位数=x%1000/100;
十位数=x%1000%100/10;
个位数=x%1000%100%10;



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
duhemayi 发表于 2015-10-5 09:04 | 显示全部楼层
很好!
xbin1981 发表于 2015-10-5 13:00 来自手机 | 显示全部楼层
手机客户端点击收藏竟然是收藏版块,不是收藏帖子,无语了
hcfatjh 发表于 2015-10-8 15:14 | 显示全部楼层
个位直接%10就行了,没那么麻烦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:我的QQ/微信:253057617,头像就是我的个人微信号。

22

主题

61

帖子

79

粉丝
快速回复 在线客服 返回列表 返回顶部