Cでfloatを変換または出力して、出力の精度が小数点以下2桁(それ以上ではない)になるようにする簡単で迅速な方法はありますか?
例:
100.456 -> 100.46
100.32 -> 100.32
100.7046 -> 100.7
100.00 -> 100
float x;
があり、実行するとしましょうprintf(%.2f, x)
。float は小数点以下 2 桁の最大精度で出力されるため、これは最初の要件を満たします。ただし、問題は、 forx=100.00
または100.7046
がそれぞれ100.00
およびになることです100.70
。
「g」をフォーマットとして使用しても問題は解決しません。何か案は?