ページ 11

%4.2fの使い方の意味が解らない

Posted: 2013年5月04日(土) 23:02
by サブマリン砲
#include<stdio.h>

int main(){
double shincho = 1.72, taiju = 65.2;

printf("BMIは体重(Kg)を身長(m)の2乗で割ったものです\n");
printf("これが25を超えると肥満です\n");
printf("たとえば身長%4.2fmで体重%4.2fkgの人では\n", shincho, taiju);
printf("BMI = %4.2f ÷ (%4.2f x %4.2f)で計算します\n", taiju, shincho, shincho);
printf("その結果は%4.1fでした\n", taiju / (shincho * shincho));

return 0;
}

そのつど、作成した変数を表示するのは、解るのですが、
%4.2fmや%4.2fの使い方が解りません。
なぜ4.2fmや%4.2fで変数が表示されるのでしょうか?
4.2の数値やfmの記号の意味は一体何なのでしょうか?(fの意味は解ります。)

Re: %4.2fの使い方の意味が解らない

Posted: 2013年5月04日(土) 23:10
by softya(ソフト屋)
出力書式というのですが、勉強に使っているサイトや書籍には書かれていませんか?
参考に、その書籍やサイトを教えて下さい。ページが分かるかもしれません。

Re: %4.2fの使い方の意味が解らない

Posted: 2013年5月04日(土) 23:11
by box
4.2とは、当該の浮動小数点数全体を出力する際、
小数点を含めて「最小で」4桁分を使う。
そのうち、小数点以下が2桁である、という意味です。
fはfloatの略。
mは書式制御文字ではありません。今回の場合、「メートル」のことです。

Re: %4.2fの使い方の意味が解らない

Posted: 2013年5月04日(土) 23:19
by サブマリン砲
ソフト屋さん、boxさん回答ありがとうございます。

本の方は、猫でもわかるC言語プログラミングという本です。

色々すみません。

Re: %4.2fの使い方の意味が解らない

Posted: 2013年5月04日(土) 23:39
by softya(ソフト屋)
「猫でもわかるC言語プログラミング」の詳細目次でも探せなかったので、サイトを紹介しておきます。

幾つか例を見て実際に試してみてください。

「標準入出力関数(1)」
http://www9.plala.or.jp/sgwr-t/c/sec05.html
「フォーマット指定子一覧」
http://www.k-cube.co.jp/wakaba/server/format.html
「printf の書式指定(詳細)」
http://www.seiai.ed.jp/sys/text/csb/chs05/c05b050.html
「Comp Prog DosC Note 631」
http://chausson.eng.kagawa-u.ac.jp/Comp ... te631.html

Re: %4.2fの使い方の意味が解らない

Posted: 2013年5月04日(土) 23:49
by サブマリン砲
回答ありがとうございます。