- ベストアンサー
C言語の初歩的な質問です。
例えば、 ans = 23 / 31 というように代入したいのですが、この計算を10小数点以下10行で後は切り捨て(もしくは四捨五入)を行い、その値をansに代入するというようにするにはどうすればいいんでしょうか? pirntf("%.10f", 23.0 / 31.0); じゃだめなんです。 結構急いでいます。よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
round() か floor() を使用してはいかがでしょう。 double ans = round( (double)10000000000.0 * 23 / 31 ) / 10000000000.0; または double ans = floor( (double)10000000000.0 * 23 / 31 ) / 10000000000.0; ただし、状況によっては誤差が生じることがあるかもしれません。
お礼
回答ありがとうございます。 大変助かりました。