• ベストアンサー

C言語で。。。。。

C言語のプログラミングの勉強をしているのですが、 5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか??ネットを探してみてもよく分からなくて困っています(><)よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

整数型の変数に代入するだけで少数部は切り捨て(正確には丸め)られますよ。 例えば、 ---------- float a = 5.4f; int b = 0; b = (int)a; printf("a1 = %f\n", a); printf("a2 = %d\n", b); ----------

nishinori
質問者

お礼

そんな方法があったとは! ありがとうございます。助かりました。

その他の回答 (3)

  • yama5140
  • ベストアンサー率54% (136/250)
回答No.4

>5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか??   5.999999 であっても、5 と表示したいということですよね・・。  「キャスト」が簡単かと思います(下の (int) 部分)。   double dVal = 5.999999;   printf( "%d\n", (int)dVal );

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

浮動小数点数の整数部と小数部を分離したいのであれば、modf関数を使ってください。 整数部だけを文字列にしたいのであれば、printf系関数で書式指定を"%.0f"にすればOKです。ただし、端数の丸め方は(多くの実装では)いわゆるJIS丸めになります。

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

実数の整数部だけ取り出すにはfloor、またはceilを使います。 前者は切り捨て、後者は切り上げです。負の値では絶対値が逆に なります。まぁ、百聞は一見にしかずなので、やってみてください。 http://msdn.microsoft.com/ja-jp/library/x39715t6.aspx http://msdn.microsoft.com/ja-jp/library/atdhw2dx.aspx

nishinori
質問者

お礼

なるほど!そうやるのか!ありがとうございます!

関連するQ&A

専門家に質問してみよう