アプリ版:「スタンプのみでお礼する」機能のリリースについて

C言語のプログラミングの勉強をしているのですが、

5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか??ネットを探してみてもよく分からなくて困っています(><)よろしくお願いします。

A 回答 (4件)

整数型の変数に代入するだけで少数部は切り捨て(正確には丸め)られますよ。


例えば、
----------
float a = 5.4f;
int b = 0;

b = (int)a;
printf("a1 = %f\n", a);
printf("a2 = %d\n", b);
----------
    • good
    • 0
この回答へのお礼

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

お礼日時:2009/07/24 15:20

>5.4のような小数点以下ありの数値の整数値を表示させる関数ってありますか??



  5.999999 であっても、5 と表示したいということですよね・・。
 「キャスト」が簡単かと思います(下の (int) 部分)。

  double dVal = 5.999999;

  printf( "%d\n", (int)dVal );
    • good
    • 0

浮動小数点数の整数部と小数部を分離したいのであれば、modf関数を使ってください。



整数部だけを文字列にしたいのであれば、printf系関数で書式指定を"%.0f"にすればOKです。ただし、端数の丸め方は(多くの実装では)いわゆるJIS丸めになります。
    • good
    • 0

実数の整数部だけ取り出すにはfloor、またはceilを使います。


前者は切り捨て、後者は切り上げです。負の値では絶対値が逆に
なります。まぁ、百聞は一見にしかずなので、やってみてください。

http://msdn.microsoft.com/ja-jp/library/x39715t6 …
http://msdn.microsoft.com/ja-jp/library/atdhw2dx …
    • good
    • 0
この回答へのお礼

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

お礼日時:2009/07/24 18:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!