独闷闷网

 找回密码
 立即注册
搜索
查看: 2591|回复: 1
打印 上一主题 下一主题
收起左侧

[原创] 单片机C程序上如何对小数点进行如何四舍五入的处理?已解答。

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-2 11:37:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

x
Tony--青岛:
C程序上如何对小数点进行如何四舍五入的处理?


鸿哥-深圳:
先把带小数点的数转换成用两个变量表示的数,一个unsigned long 变量记录它的数值,另外一个 unsigned char 变量记录它的小数点位数。然后把这个unsigned long变量先加5,然后再整除10,这样 相当于减少了一个小数点,所以另外一个unsigned char记录小数点总数的变量就要减去1。这样就相当 于四舍五入了,去掉了最右边的数。
比如1.86要四舍五入保留一位小数点:
  1. unsigned long a=186;
  2. unsigned char b=2; //相当于原来是2位小数点
  3. a=a+5;
  4. a=a/10;
  5. b=b-1; //减去一个小数点总数。
复制代码



乐于分享,勇于质疑!
沙发
发表于 2015-1-4 14:29:20 | 只看该作者
好牛逼啊,鸿哥思想叼炸天了~
乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-4-26 01:08 , Processed in 0.167772 second(s), 16 queries .

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