c - 将 float 舍入为 int

标签 c rounding

自学coding(这里是菜鸟),一道练习题答案如下:

amount = (int) round (c);

c 是一个 float 。 可以肯定地说这一行通过舍入将 float 转换为整数吗? 我尝试研究将 float 转换为整数的方法,但没有人使用上述语法。

最佳答案

你应该看看round的返回值。
如果它返回一个 float ,那么您的 int 转换将不会丢失精度并将 float 转换为 int
如果它返回一个 int,那么转换就发生在函数中,不需要再次尝试转换。

当然,如果您确实希望对数字进行四舍五入。如果你想让10.8变成11,那么你的代码是一个可能的解决方案,但是如果你想让它变成10,那么只需转换(将它转换为 int

关于c - 将 float 舍入为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45404302/

相关文章:

c - 使用 strcpy 进行冒泡排序

C 指针到指针。为什么需要有两个星号?

python - 将序列四舍五入为 N 位有效数字

c# - 如何在 C# 中以人性化的方式舍入 double ?

javascript - 使用 Math.Round 获取可被 5 整除的数字

c++ - HDF5 复合类型 Native 与 IEEE

c - 内存未满时Linux内核模块OOM

c - C 指针中不兼容的指针类型

MySQL 防止小数字段四舍五入

c++ - 为什么小数字的答案是错误的?与MPIR