第3回 変数と代入 (4/28)


今週の内容

プログラムの重要な要素の一つ 変数 と,いつまでも間違えやすい 代入 について学習しよう.


変数 (箱)

プログラムで,数値や文字をしまっておく箱のようなものを 変数 と呼びます.


例:

#include <stdio.h>
void main()
{
    int a;
    a = 10;
    printf("変数の値は%dです\n", a);
}

このプログラムを,一行ずつ見てみよう.

int a;

   整数型 を格納する変数を用意し,a  という 名前 を付ける と宣言しています.

a = 10;

   用意した変数に数字を 代入 しています.

printf("変数の値は%dです\n", a);

   変数の値を画面に表示する.%d には,変数 a の値 が割り当てられ,表示されます.


型 (箱の大きさ)

変数の扱える数の大きさを  とよび,大きく分けて,整数型 と 浮動小数点型 があります.

種類 名前 サイズ 範囲
整数型 int システムにより異なる
unsigned int
short 2バイト -32768〜32767
unsigned short 2バイト 0〜65535
long 4バイト -2147483648〜2147483647
unsigned long 4バイト 0〜4294967295
浮動小数点型 float 4バイト -3.4E38〜3.4E38
double 8バイト -1.7E308〜1.7E308

どのような数値を扱うかをあらかじめ予想し,適した型を使います.


名前 (箱の名前)

変数には,人間にわかりやすいように名前を付けます.ただし,名前の付け方にはルールがあります.

 名前に使えるのは,英字・数字・アンダーバー(_)です.

 数字で始めることはできません.

 大文字・小文字は区別されます.

 C言語が予約している,予約語(第1回参照)は使えません.

よい例 悪い例
a 12a
abc return
ab_c ab-c

    コンピュータの内部では,名前を数字(アドレス(番地))に置き換えて,実行します.


代入

変数に値を記憶させることを 代入 とよび,記号 = で示します.

   変数 = 値;

これは,変数に値を代入する という意味で,数学の 等しい とは異なり,一方通行です.

   × 値 = 変数;

従って,上のようなことはできません.

たとえば,変数 a の値を 1 増やしたい場合はどうしたら良いでしょう?

   

注意: a の値が a+1 と等しいということではありません.


いろいろな宣言の書き方

二つの同じ型の変数を宣言する int a;
int b;
int a, b;
一つの変数の宣言と初期化 int a;
a = 2;
int a= 2;
二つの同じ型の変数の宣言と初期化 int a; int b;
a = 2; b = 3;
int a=2, b=3;


printf()関数による変数の値の出力

 

変数の値を出力するためには,先週練習したprintf()関数を用います.


演算

コンピュータでは,数学で使う「+」や「×」などの 算術演算子 ,値を比べる 比較演算子 条件判断に使う 論理演算子 などがあります.

これら 演算子 の働きについて学習します.


算術演算子

数の計算に用いる演算子を下の表にまとめます.

演算子
はたらき
使い方
意味
たす
a = b + c;
b と c をたした値を a に代入
ひく
a = b - c;
b から c をひいた値を a に代入
かける
a = b * c;
b と c をかけた値を a に代入
わる
a = b / c;
b を c でわった値を a に代入(c が 0 の時はエラー)
あまり
a = b % c;
b を c でわったあまりを a に代入
代入
a = b;
b のを a に代入

式の値を表示する例:

#include <stdio.h>

void main()
{
    printf("1+2は%dです\n", 1+2);
    printf("3X4は%dです", 3*4);
}

変数の値で計算し表示する例:

#include <stdio.h>

void main()
{
    int a, b;

    a = 2;
    b = 3;

    printf("a = %d\n", a);
    printf("b = %d\n", b);
    printf("a+b = %d", a+b);

}

代入演算子

代入で説明した,

    a = a + 1;

を,代入演算子を使うと

    a += 1;

と書くこともできます.

演算子
使い方
意味
+=
a += b;
a = a + b;
−=
a -= b;
a = a - b;
*=
a *= b;
a = a * b;
/=
a /= b;
a = a / b;
%=
a %= b;
a = a % b;

演習

a = 6, b = 5 のとき,次の各計算結果を表示するプログラムを作成せよ.

a + b

a − b

a × b

a ÷ b

a ÷ b のあまり

底辺が a, 高さ b の三角形の面積

a2 + ab