アメリカで乗った車の時速計が、50マイルになっていた。 これを日本のキロメートルに換算して表示するプログラムを示します。 (なお、1mi(マイル)は 1609m です。)
#include <stdio.h> main() { printf("%fマイルは、" , 50.0); printf("%fキロメートル\n" , 50.0 * 1.609); }
上のプログラムを実行した結果の画面は次のようになります。
50.000000マイルは、80.450000キロメートル
printf関数は、標準出力(この場合は画面になる)と呼ばれる所へ、
括弧の中の文字列を送出する命令になっていますが、
単なる文字の並び出力するのでなく、
数値のデータや、計算結果を出力させる場合は、
次のように『,』でデータを区切って指定します。
●ここで、注意すべきところは、データを区切る時の区切りのコンマ , がなければならないことで、
これがないとコンパイルのエラーになります。
また、50.0 と書くべき所を、50 と書くと正しい表示が得られません。
(この表現を間違えた不具合の方が、コンパイルエラー指摘がないので、問題を見つけるのが
難しいです。注意しましょう)
●なお、2行目のprintf関数で指定するデータで、 50.0 * 1.609 の計算式を使っています。
これで、 50.0 掛ける 1.609 の計算をさせています。
一般の算術に使う×の印は使えません。掛け算には、半角の * を使います。
そして、割り算には、/ を使います。(÷の記号ではありません。)、
また、+ や - の演算が可能です。(日本語の全角文字の演算記号は使えません。)
* / + - は演算命令を指示するもので演算子と呼ばれています。
C言語において、演算子は、プログラマが指示可能な最も小さい命令の単位です。 (演算子の左右にある2つのデータが演算対象になることから、2項演算子呼ばれる演算子の分類に属します。)
なお、『* や / 』の方が、『 + や - 』より優先的に処理されます。
よって、次の演算式の演算結果は、14.0になります。
2.0 + 3.0 * 4.0
それは、+より * の方の演算が先行して行われ、*の結果の12.0 が 2.0と加算されるからです。
これに対して、2.0 + 3.0 の演算を先行させたい場合は、次のように括弧を使います。
(2.0 + 3.0) * 4.0
これにより括弧の中の演算が優先され、その結果の5.0 と 4.0が * の演算対象となり 結果は、20.0 になります。
★
なお、0を分母にする演算は数学的に不可ですが、
一般的にコンピュータの実行中で、この0で割る演算を行うと、エラーが発生します。
処理系によってはプログラムは中断し、終了する場合があります。