最初の例は, あまりに簡単すぎるのでもう少し違う例を述ます.
次のプログラムを 2-2.c という名前で作成して下さい. 出来たら, コンパイルして実行してみて下さい.
/* File name 2-2.c */ /* Declaration of variables */ #include <stdio.h> main() { int a, b; /* 変数 a,b が整数型であることを宣言 */ int sum, diff, prod, quot; /* 同じく型宣言 */ a = 5; /* a に 5 を代入しています */ b = 3; /* 同じく代入しています */ sum = a + b; /* sum に a+b を代入します */ diff = a - b; /* diff に a-b を代入します */ prod = a * b; /* 掛け算は * という記号を使います */ quot = a / b; /* 割算は / という記号を使います */ /* printf は"で囲まれた書式に従って出力します */ printf("summation = %d, difference = %d\n", sum, diff); printf("product = %d, quotient = %d\n", prod, quot); }
printf
の新しい使い方が出てきました.
関数 printf
に渡されるパラメータは, 2重引用符(")で囲まれた文字列,
変数 sum, 変数 diff の3つです.
(プログラミングでは関数のパラメータを引数ともいいます.)
最初の引数("で囲まれた文字列)の中の最初の%
という文字と
それに続く文字は2番目の引数の値が代入されます.
同様に, 2つ目の%
という文字とそれに続く文字は,
3番目の引き数の値に取って代わられます.
1行目の最初の%d
は整数sumの値を出力せよ, という意味です.
2番目の%d
は整数diffの値を出力せよ, という意味です.
2行目のprintf
文についても同様です.
実数型(double)の変数の出力には%f
を使います.
この様に, 関数printf
の最初の引数は, 文字列を出力する
だけでなく, 2番目以降の引数の値の表示方法を指定します.
余裕のある人は上のprintf
の中の書式指定において
%d
を%f
に変えて実験してみましょう.
変数 sum も diff も最初に整数型と宣言してあるのに, printf の書式指定であらためて整数型であることを指定する必要はないのでは ないかと思う人もいるかもしれませんが, C言語の場合,代入した引き数の型を 代入された関数は知らないということを覚えておきましょう.