- ベストアンサー
C言語で。。。。。
C言語のプログラミングの勉強をしているのですが、 5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか??ネットを探してみてもよく分からなくて困っています(><)よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
整数型の変数に代入するだけで少数部は切り捨て(正確には丸め)られますよ。 例えば、 ---------- float a = 5.4f; int b = 0; b = (int)a; printf("a1 = %f\n", a); printf("a2 = %d\n", b); ----------
その他の回答 (3)
- yama5140
- ベストアンサー率54% (136/250)
>5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか?? 5.999999 であっても、5 と表示したいということですよね・・。 「キャスト」が簡単かと思います(下の (int) 部分)。 double dVal = 5.999999; printf( "%d\n", (int)dVal );
- jacta
- ベストアンサー率26% (845/3158)
浮動小数点数の整数部と小数部を分離したいのであれば、modf関数を使ってください。 整数部だけを文字列にしたいのであれば、printf系関数で書式指定を"%.0f"にすればOKです。ただし、端数の丸め方は(多くの実装では)いわゆるJIS丸めになります。
- nda23
- ベストアンサー率54% (777/1415)
実数の整数部だけ取り出すにはfloor、またはceilを使います。 前者は切り捨て、後者は切り上げです。負の値では絶対値が逆に なります。まぁ、百聞は一見にしかずなので、やってみてください。 http://msdn.microsoft.com/ja-jp/library/x39715t6.aspx http://msdn.microsoft.com/ja-jp/library/atdhw2dx.aspx
お礼
なるほど!そうやるのか!ありがとうございます!
お礼
そんな方法があったとは! ありがとうございます。助かりました。