いよいよプログラムを実行する
ようやくプログラムの実行文本体にたどりつきました。順に1行ずつ実行して動作を確認していきましょう。1行実行ボタンをクリックして、また1行実行させてください。図21のように、58行目の代入文a = 100 ;を実行して、マーカが59行目に移動します。
さあ、ここでローカル変数ウィンドウを見てみましょう。図22のように、変数aの値が100になっているのがわかります。つまり、58行目のプログラムを実行することによって、変数aに値「100」が代入されたわけです。

また1行実行させて、今度はb = 8;を実行します。さきほどと同様に、今度は変数bの値が8に変わります(図23)。

続けて、1行ずつ実行しながらローカル変数ウィンドウで動作を確認していきましょう。次はc = a + b ;です。実行すると、図24のように変数cの値がa+b、つまり100+8で108になるのがわかります。

整数しか扱えない型
次はc = c / 5 ;です。変数cは今108ですから、これを5で割ると21.6になるはずですね。実行してみたのが図25です。

このように、小数点以下は消えてなくなっています。intやcharは、整数しか扱うことのできない変数型なのです。演算の結果にもし小数点以下が含まれる場合は、このように「切り捨て」られてしまいます。
別の見方をしますと、108÷5は、商(割り算の答)が21で余りが3です。演算結果は1つの変数にしか入れることができないので、割り算の場合余りがでるとそれは切り捨てられてしまう(入れ場所がなくて消えてしまう)のです。
実は、商とは逆に余りだけを求める演算子というのがあります。商を求めるときは「/」でしたが、余りを求めるときは「%」を使います。
もし興味があれば、あとで今回のプログラムの61行目c = c / 5 ;を、c = c % 5 ;に書き換えて、同様にビルド→SM+で実行を試してみてください。きっとcには演算の余りに相当する「3」が代入されるはずです。
あと残り2行ですので一気にいきましょう。次はc = c - 41;です。図26のように、結果はちゃんとマイナスになります。

最後はかけ算です。c = c * 5;は、-20を5倍するので、図27のように答は-100になります。

以上、お疲れさまでした。単純な演算だけではありますが、C言語のプログラムが実行される様子を実感できたでしょうか。最後に[ファイル]メニューから[終了]を選んでSM+を終了させますと、図28のようなメッセージが出ます。ここは[いいえ(N)]をクリックして終了させてください。

次回は論理演算子について解説を行います。それではまた。

