请编一个将浮点数四舍五入的函数fun,其功能是使浮点数保留2位小数,并对第3位进行四舍五入(规定实型数为正数)。 例如:实型数为1234.567,则函数返回1234.570000;实型数为1234.564,则函数返回1234.560000。
时间: 2024-10-16 13:08:31 浏览: 20
⑷浮点数输出-c语言教程
可以使用Python内置的`round()`函数结合字符串格式化来实现这个需求。下面是一个简单的函数实现:
```python
def fun(num):
# 将数字转换为字符串以便控制小数位数
str_num = "{:.3f}".format(num)
# 获取原始字符串和小数部分
int_part = str_num[:-3] if '.' in str_num else str_num
decimal_part = str_num[-3:]
# 判断第三位是否需要四舍五入
if decimal_part[2] >= '5':
rounded_decimal = str(int(decimal_part[:-1]) + 1) + '0'
else:
rounded_decimal = decimal_part
# 返回四舍五入后的结果
return float(int_part + rounded_decimal)
# 示例
print(fun(1234.567)) # 输出:1234.570000
print(fun(1234.564)) # 输出:1234.560000
```
这个函数首先将浮点数转换为字符串,然后处理小数部分,如果第三位大于等于5则加1并保持最后一位为0,否则直接保留原有值。最后,将整数部分和处理过的小数部分组合成新的字符串,再转换回浮点数返回。
阅读全文