C言語(1) 変数を使った計算と表示

スポンサーリンク

Hello Worldのおさらい

Linux環境MSYS2でC言語のHello World! の回でHello World!と表示するプログラムを作成しました。

このときはプログラムを書く→コンパイル→実行という流れを説明しましたが、プログラムの中身については何も説明しなかったので、ここで少し解説します。

以前作成したhello.cは以下のようなプログラムでした。

変数と表示

変数とは、何かの情報を入れる箱のようなものと考えてください。

ここでは整数を入れる箱を例に説明していきます。

上図のようにvalという名前の整数を入れる箱に3を入れるイメージを持って下図のプロブラムtest.cを見てください。

gccによるコンパイル、a.exeの実行を行うと下図の右のように「num:3」と表示されます。

int val; の行でvalという整数を入れる箱を作って、続く val = 3; でvalという箱に3を入れています。

C言語では=は代入(入れること)を表しますので、数学のイコール(等しいの意味)ではないことに注意してください。

そして代入の向きは、=の右の内容を=の左の変数に代入となります。

次にHello Worldでも出てきたprintfを使っていますが、ここではvalの箱の中身を表示内容に埋め込むようになっているのが、これまでとは少し違う使い方になります。

“~”の間に%dを書き、”~”の後ろに , val と書くことで、%dの部分をvalの中身(上の例では3)で置き換えて表示することができます。

上の例では変数の名前をvalとしましたが、box_1のように英数字とアンダースコア(_)を組み合わせた名前が付けることができます。

ただし 1_box のように数字から始まる名前を付けることはできません。

整数の計算 

C言語の整数を使って四則演算をすることができます。四則演算とは足し算、引き算、かけ算、割り算のことです。

足し算は +、引き算は – を使います。これは学校で習う算数と同じですね。

例えば、以下のようにするとansには3が入ります。(以下では計算の部分だけ表示していておまじない部分等は省略しています。)

int a, b, ans;
a = 1;
b = 2;
ans = a + b;

最初の行で整数の変数としてaとbとansの3つを準備し、次の行でaに1を代入。その次の行でbに2を代入しています。

最後の行でansにaとbを足したものを代入しているので、ansには3が入ります。

かけ算はアスタリスク *、割り算はスラッシュ / を使います。
では以下の場合、ansは何になると思いますか?

int a, b, ans;
a = 5;
b = 2;
ans = a / b;

少数をすでに習っている人なら2.5かな?と思うかもしれませんが、C言語において整数の割り算では答えも整数になります。つまりansには2が入ります。

小学生の時にやった 5 ÷ 2 = 2 余り 1 と同じで、割り算の答えは2です。

実はC言語には割り算の余りを計算する記号として % があります。

以下のようにするとansには a ÷ b の余りとなる1が入ります。

#include <stdio.h>

void main()
{
    int a, b, ans;
    a = 5;
    b = 2;
    ans = a % b;

    printf("amari:%d¥n", ans);
}

上のプログラムをコンパイルして実行すると、以下のように表示されると思います。

amari:1

これで、整数を使った計算と表示までできるようになりました。

まとめ

本記事では以下のことを説明しました。

  • 変数とは値を入れる箱である
  • イコールは代入を表す
  • printfで表示を行う
  • 四則演算と余りの計算

これらの内容は多くのプログラミング言語で同様のため、他のプログラミング言語に挑戦する際にも役立つ知識です。

次のC言語(2) 分岐、くり返しへ進み、ステップアップしてください!

タイトルとURLをコピーしました