当前位置:网站首页>【C语言】浮点数四舍五入
【C语言】浮点数四舍五入
2022-08-10 10:01:00 【安苒_】
目录
二、补充:ceil,floor,强制类型转换,round,四舍五入法对比及其应用场景
一、浮点数实现四舍五入
以保留3位数为例
1.直接实现【不利用库函数】
int (x*1000+0.5)/1000.0;【特别注意,这里一定除以的是1000.0】
2.间接实现【利用math函数库中的round】
二、补充:ceil,floor,强制类型转换,round,四舍五入法对比及其应用场景
#include <stdio.h>
#include <math.h>
int main()
{
double x=3.863479, ret;
//①ceil
ret = ceil(x);
printf("%lf\n", ret);
//②floor
ret = floor(x);
printf("%lf\n", ret);
//③强制类型转化——这里涉及了隐式转换
ret = (int)x;
printf("%.0lf\n", ret);
//④round
ret = round(x);
printf("%lf\n", ret);
//⑤四舍五入,比如说保留2位小数——两种实现方法
//(1)round函数
ret = round(x * 100) / 100.0;
printf("%.2lf\n", ret);
//(2)加减+强制类型转换
ret =(int)(x*100+0.5) / 100.0;
printf("%.2lf\n", ret);
return 0;
}
让我们一起来看一下运行结果吧~
很显然,可以的得出以下结论
重要结论1
操作 | 效果 |
ceil函数 | 求大于等于当前数值的最大整数(浮点表示形式) |
floor函数 | 求出不超过当前数值的最大整数(浮点表示形式) |
round函数 | 求出距离当前数值最近的整数 |
强制类型转换 | 舍去精度【其实功能与floor相似,但有区别】 |
四舍五入 | 浮点数四舍五入【与数学中的思路一样】 |
另外:这是cpluscplus对于ceil函数的解释,很容易看出,返回值和参数都是浮点型,但是它的功能为大于等于不超过当前数值的最大整数
同理,floor和round也是类似的
重要结论2
floor函数和强制类型转换的区别——得到的结果为一个为整形,另外一个为浮点型
再叨叨几句:
1.ceil求不超过当前值的最大整数,返回值为浮点数
2.floor和强制类型int转换求不大于当前值得最大整数,返回值一个为浮点型一个为整型
3.round求距离当前值得最近的整数值
4.浮点数四舍五入有强制类型转换和round函数两种解法
边栏推荐
猜你喜欢
【数据架构】概念数据模型和逻辑数据模型有什么区别
The first offline workshop in 2022!Data application experience day for application developers is coming | TiDB Workshop Day
傅立叶级数与傅里叶变换
Payment x Aggregation x Ledger Separation - The Way to Avoid Risk of "Erqing" on the Return Platform
Numpy学习
07 【动态组件 组件注册】
「应用架构」TOGAF建模:企业可管理性图
"Microservice Architecture" Arrangement and Choreography - Different Models for Making Systems Work Together
「业务架构」TAGAF建模:业务服务/信息图
「业务架构」TOGAF建模:组织分解图(组织映射)
随机推荐
【Software Exam System Architect】System Reliability Analysis and Design ① System Reliability Analysis
VBA:获取指定数值在指定一维数组中的位置
在“企业通讯录”的盲区,融云的边界与分寸
Chapter 3 Search and Graph Theory (3)
2022-08-09 第六小组 瞒春 学习笔记
14道高频手写JS面试题及答案,巩固你的JS基础
LeetCode Algorithm 914. 卡牌分组
ES复杂操作搜索
[Metaverse Omi Says] See how UCOUCO integrates performance art into the Metaverse
BUUCTF problem solving PWN 】 【 record (4-6 pages continuously updated)
Relearn bubble sort
「微服务架构」编曲与编舞——让系统协同工作的不同模式
shell------ commonly used gadgets, sort, uniq, tr, cut
2022 首期线下 Workshop!面向应用开发者们的数据应用体验日来了 | TiDB Workshop Day
「业务架构」TOGAF建模:业务功能分解图
如何理解BIO、NIO、AIO的区别
第三章 搜索与图论(三)
shell iterates over folders and outputs
【Prometheus】Node Exporter常用查询PromQL 语句大总结
C语言题解:倒置字符串