```cpp #include <iostream> #include <cmath> // 用于四舍五入函数round() int main() { int X; std::cin >> X; // 输入包裹重量 double Y; // 运费可能为小数,需四舍五入 if (X <= 15) { Y = X * 6; // 不超过15公斤,每公斤6元 } else { Y = 15 * 6 + (X - 15) * 9; // 超过部分每公斤9元 } std::cout << static_cast<int>(round(Y)) << std::endl; // 四舍五入输出整数 return 0; } ``` 额外需要注意的逻辑点: 1. 重量X的输入范围是1≤X≤100,但程序未做输入验证,实际应用中需增加边界检查。 2. 使用`double`类型存储运费以确保中间计算精度,避免整数运算导致的截断误差。 3. `round()`函数处理四舍五入时,对于恰好在中间的值(如2.5)会向偶数舍入,但题目未明确说明这种情况的处理方式。 [2025-07-25 16:55:00 | AI写代码神器 | 252点数解答]