c++ - 在 C 中截断 double 而不进行舍入

标签 c++ c

假设我们有一个double R = 99.999999;(这可能是通过一些其他计算的结果获得的),现在期望的输出是99.99

我尝试使用 printf("%.2lf",R); 但它对值进行了四舍五入。如何获得所需的输出? (最好使用 printf)

最佳答案

#include <math.h>
...
    printf("%.2f", floor(100 * R) / 100);

关于c++ - 在 C 中截断 double 而不进行舍入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2556256/

相关文章:

c++ - C 的轻度 linux/gcc 扩展? (例如,前向扫描、opt args)

c++ - 为什么可以通过 const 左值引用传递右值?

c++ - c++中list、vector等容器中如何快速交换对象

c++ - 如何在 std::map 类中定义迭代器

c - 在 C 中使用指针确定数据类型大小

c - 在c中同时沿两个方向移动二进制数的那些

c - libpcap 格式 - 数据包 header - incl_len/orig_len

c++ - 多线程,OpenMP,C

c - 在 C 中将时间戳存储为二进制分数

c - malloc 一个 char[][]