C++ 实现小数四舍五入保留指定位数
以下是一个 C++ 代码,用于输入一个小数 `a` 并对其进行四舍五入保留指定位数: ```cpp #include <iostream> #include <iomanip> #include <cmath> // 四舍五入函数,保留指定小数位数 double roundToDecimal(double num, int decimalPlaces) { double multiplier = std::pow(10, decimalPlaces); return std::round(num * multiplier) / multiplier; } int main() { double a; int decimalPlaces; // 提示用户输入小数 std::cout << "请输入一个小数: "; std::cin >> a; // 提示用户输入要保留的小数位数 std::cout << "请输入要保留的小数位数: "; std::cin >> decimalPlaces; // 调用四舍五入函数 double c = roundToDecimal(a, decimalPlaces); // 输出结果 std::cout << "四舍五入保留 " << decimalPlaces << " 位小数后的结果是: " << std::fixed << std::setprecision(decimalPlaces) << c << std::endl; return 0; } ``` ### 代码解释: 1. **`roundToDecimal` 函数**: - 此函数接受两个参数,`num` 为要进行四舍五入的小数,`decimalPlaces` 为要保留的小数位数。 - 先计算一个乘数 `multiplier`,其值为 `10` 的 `decimalPlaces` 次幂。 - 将 `num` 乘以 `multiplier`,再使用 `std::round` 函数进行四舍五入,最后除以 `multiplier` 得到结果。 2. **`main` 函数**: - 提示用户输入一个小数和要保留的小数位数。 - 调用 `roundToDecimal` 函数进行四舍五入计算。 - 使用 `std::fixed` 和 `std::setprecision` 确保输出结果保留指定的小数位数。 ######[AI问答 | 496点数解答 | 2026-05-22 19:30:50]
- Java 实现:从点类到圆类,计算圆心坐标(50,30)、半径 4 的圆周长与面积(字节豆包 | 246点数解答 | 2024-11-11 16:36:30)361
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)392
- Python 编程:轻松计算飞机行李收费(含代码详解)(字节豆包 | 250点数解答 | 2026-01-29 17:07:02)49
- Python 实现浮点数转百分比并保留 2 位小数(字节豆包 | 181点数解答 | 2026-03-14 18:09:36)26
- Python:轻松提取10.0到99.0小数的整数部分(字节豆包 | 136点数解答 | 2026-01-11 19:23:18)61
- 【基础】数值计算的 C++ 实现(字节豆包 | 359点数解答 | 2026-04-12 13:41:24)26
- 基础数值计算:C++实现数字位数、逐位输出及逆序输出(字节豆包 | 395点数解答 | 2026-04-12 13:41:46)26
- C++ 实现根据部分橘子重量估算整箱橘子重量(字节豆包 | 371点数解答 | 2026-04-11 13:12:51)22
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)360
- 帮胖虎小夫70周年友谊派对分派,精准计算两种输出方案!(阿里通义 | 672点数解答 | 2024-10-20 21:46:18)216
- C++ 助力胖虎小夫 70 周年派对派分难题!精准输出派的分配大小(阿里通义 | 523点数解答 | 2024-10-20 21:46:33)184
- C++ 助力胖虎小夫 70 周年友谊派对:精准分派难题迎刃而解!(阿里通义 | 570点数解答 | 2024-10-20 21:47:23)228