C/C++实现四舍五入保留指定小数位

C/C++实现四舍五入保留指定小数位

number:传入的原始数
bits:小数点后保留的维数

double round(double number, unsigned int bits) {
    LL integerPart = number;
    number -= integerPart;
    for (unsigned int i = 0; i < bits; ++i)
        number *= 10;
    number = (LL) (number + 0.5);
    for (unsigned int i = 0; i < bits; ++i)
        number /= 10;
    return integerPart + number;
}

尴尬的是,最后发现printf会自动四舍五入
在这里插入图片描述

发布了100 篇原创文章 · 获赞 4 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39827677/article/details/104968093
今日推荐