我想输出数据看起来像这样
input : 1999.99
output: 999.99
我想剪掉多余的数据。
我已经使用过这种C格式
%.2f ==> 10.44, 23.23, 5.67
现在我需要在小数点前减少。
有什么解决方法吗?
额外高位数字:
void format_3_2(double input) {
printf("%.2f", fmod(input, 1000.0));
}
输入:1999.99
输出:999.99
但是请注意,您还应该使用
fmod()
函数对输入值之前进行四舍五入,以避免出现这种情况:
printf("%.2f", fmod(1999.999, 1000.0));
->1000.00
。为此请使用round
功能:void format_3_2(double input) { printf("%.2f", fmod(round(input * 100.0)) / 100.0, 1000.0)); }
输入:1999.999
输出:0.00