printf()関数を使えば,簡単にディスプレイ(標準出力)に表示できる.括弧内の最
初のクォーテーションで囲まれた部分が出力される.
Hello worldのプログラムでお
なじみであろう.変数に格納されたデータ--整数や実数,文字,文字列--を表示させた
ければ,変換仕様(p.320〜)を使う.教科書には,いろいろ書かれており,諸君にはわか
りにくいだろう.実際には,
printf("%d+%d=%d\n", a, b, result);
にように書く.この文の動作は,図
1のとおりである.
図 1:
ディスプレイに表示させるprintf関数の意味
|
ここで難しいのは,変換仕様の使い方である.本講義で使う変換仕様はそんなに多くなく,
表1にまとめることができる.この中でも,文字列は滅多に使わ
ないだろう.
あと,重要なことはエスケープシーケンス(p.27)である.エスケープシーケンスもいろい
ろあるが,'\n'と'\t'の使い方が分かれば,本
講義では十分である.
表 1:
型に依存する変数定義や入出力
型 |
表示方法 |
変換仕様 |
備考 |
整数 |
|
%d |
10進数に変換 |
実数 |
浮動小数点 |
%f |
小数点の表示.非常に大きな数値や小さ
い数値の表示には向かない. |
|
|
%20.15f |
合計20カラムで,小数点以下15桁で表示 |
|
指数表示 |
%e |
非常に大きな数値や小さい数値を含む場合に都合が良い. |
文字 |
|
%c |
ひとつの文字を表示する場合に使う. |
文字列 |
|
%s |
文字列を表示させる場合に使う. |
書式付き出力(
printf)を使うと,任意の形でデータを出力できる.教科書のP.320〜
325を読み,以下の練習問題を実施せよ.
- [練習1]
- 円周率を,いろいろなフォーマットで出力せよ.ただし,円
周率はmath.hの中でM_PIで定義されている.それ
は,リスト1のようにすれば表示できる.
- 通常の%fで表示せよ.
- 小数点以下,3桁で表示せよ.
- 小数点以下,10桁で表示せよ.
- 指数形式で表示せよ.
リスト1には,数学関数用のヘッダーファイル
math.hが使われているので,コンパイルには-lmオ
プションが必要である.例えば
gcc -lm -o fuga hoge.c
とする.
- [練習2]
- 整数の22446688を8進数で表示せよ.また,16進数で表
示せよ.
- [練習3]
- 円周率と円周率の2乗の両方を小数点以下,10桁で表示せよ.た
だし,2つの数値の間はタブ区切りとする.
1 #include <stdio.h>
2 #include <math.h>
3
4 int main(void){
5
6 printf("%f\n", M_PI);
7
8 return 0;
9 }
ホームページ:
Yamamoto's laboratory著者:
山本昌志
Yamamoto Masashi
平成18年6月6日