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

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
サブマリン砲

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

#1

投稿記事 by サブマリン砲 » 13年前

#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の意味は解ります。)

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

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

#2

投稿記事 by softya(ソフト屋) » 13年前

出力書式というのですが、勉強に使っているサイトや書籍には書かれていませんか?
参考に、その書籍やサイトを教えて下さい。ページが分かるかもしれません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

box
記事: 2002
登録日時: 15年前

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

#3

投稿記事 by box » 13年前

4.2とは、当該の浮動小数点数全体を出力する際、
小数点を含めて「最小で」4桁分を使う。
そのうち、小数点以下が2桁である、という意味です。
fはfloatの略。
mは書式制御文字ではありません。今回の場合、「メートル」のことです。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

サブマリン砲

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

#4

投稿記事 by サブマリン砲 » 13年前

ソフト屋さん、boxさん回答ありがとうございます。

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

色々すみません。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

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

#5

投稿記事 by softya(ソフト屋) » 13年前

「猫でもわかる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
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

サブマリン砲

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

#6

投稿記事 by サブマリン砲 » 13年前

回答ありがとうございます。

閉鎖

“C言語何でも質問掲示板” へ戻る