Login
Immutable PageDiscussionInfoAttachments
alstamber/Clanguage/calculate

MMA

プログラムに計算をさせる

まず書いてみよう

前回、画面に予め決まった文字列を表示させるというプログラムを書きました。これはこれで立派なプログラムなのですが、今回はもう少し進んだことをやってみましょう。
今回はプログラムを使って何らかの計算をすることを目標にします。

最初ですし、1+1の結果を表示するプログラムを作ってみることにします。エディタを使って下のソースコードを打ち込んでみてください。

   1 #include <stdio.h>
   2 
   3 int main (void)
   4 {
   5         printf("%d\n", 1+1);
   6 
   7         return 0;
   8 }

これを前回と同じようにコンパイルして、実行してみましょう。このプログラムの名前を仮にfooとすると

% ./foo
2

となって1+1の答えである2が出力されたのがわかると思います。
とりあえずこのプログラムが1+1の答えを出力するプログラムであるということがわかった所で、なぜこのプログラムが1+1の答えを出力できるのか考えてみましょう。

printfの変換指定子

前回のプログラムと違うのはprintfのとこだけです。つまりここに1+1の答えを出力する真髄があるわけです。
まず見たいのが、%d\nというところです。\nは前回見たとおり改行を表す文字ですが、%dとは何でしょうか。
実はこの%dというのはその後ろにあるものを10進数で出力しなさいという意味なのです。この場合その後ろにあるものというのは1+1のことです。
全体をまとめれば、1+1の計算結果を10進数で出力しなさい、という意味になっているわけです。だからこのプログラムを実行した時1+1の答えである2が出力されるのです。
変換指定子にはいろいろなものがありますが、今は%dだけ覚えれば良いと思います。

基本的な演算子

C言語ではもちろん足し算以外の計算も出来ます。足し算の+のようなものを演算子といいますが、ここで覚えておいたほうがいい演算子を列挙しておきます。

種類

記号

足し算

+

引き算

-

掛け算

*

割り算

/

剰余

%

演習問題

alstamber/Clanguage/calculate (last edited 2011-10-07 16:53:45 by alstamber)