c - 如何将 double 舍入为 0.00005?
问题描述
我有一个双精度值,我想使用 C89/ANSI C 向下舍入到值 0.00000/0.00005。所以:
1.10984 becomes 1.10980
1.10985 becomes 1.10985
1.10986 becomes 1.10985
1.10988 becomes 1.10985
1.10989 becomes 1.10985
1.10990 becomes 1.10990
1.10991 becomes 1.10990
我努力了:
roundedDouble = doubleToRound - (doubleToRound % 0.00005);
但是 % 运算符仅适用于整数。
解决方案也适用于以下四舍五入的情况:
0.000000 / 0.000025 / 0.000050 / 0.000075
和
0.00001 / 0.00002 / 0.00003 / 0.00004 / ... / 0.00008 / 0.00009
解决方案
推荐阅读
- css - 如何在弹性框中水平对齐项目?
- firebase - setBackgroundMessageHandler 仅来自后台模式,而不是退出
- javascript - Angular:映射等待多个api调用时如何等待方法的最终结果?
- vue.js - 使用 chartjs-plugin-annotation 和 vue-chartjs 绘制垂直阈值
- python - 如何打印添加的项目 ID 动态编程背包 Python
- activemq - ActiveMQ:如何获取消费者 IP 地址
- ios - 如何为 UISearchBar 添加accessibilityIdentifier?
- c# - .net 核心对 http GET 和发送正文的错误请求
- vb.net - 如何让我的程序一个接一个地问问题
- jquery - wordpress 添加帖子图片不显示