C初級:配列を使うメリット

C言語初級カテゴリのロゴ画像C言語初級
スポンサーリンク
スポンサーリンク

配列を使うメリット

配列は、1つのまとまった意味を持つ数値の扱いが得意

例えば10人分の身長を変数に代入して平均値を求めたいとします。

通常の変数で作ると

hairetsu_merit1.c

/* 10人分の身長の平均を求める */
#include <stdio.h>

int main(void)
{
	double	a = 160.4, b = 178.0, c = 153.5, d = 183.5, e = 164.3,
			f = 170.0, g = 192.1, h = 173.8, i = 169.0, j = 190.4;
	double heikin;

	heikin = (a + b + c + d + e + f + g + h + i + j) / 10.0;
	printf("平均は%fcmです\n", heikin);
	
	return 0;
}

実行結果

平均は173.500000cmです

などとなります。

上記のように10人分くらいであればなんとかなります。
しかし人数が100人や1000人となるとどうでしょうか?
変数名などを付ける際や、計算式の変更が大変です。

そこで配列の出番です。

配列を使うと

hairetsu_merit2.c

/* 10人分の身長の平均を求める */
#include <stdio.h>

int main(void)
{
	double	height[] ={160.4, 178.0, 153.5, 183.5, 164.3, 170.0, 192.1, 173.8, 169.0, 190.4, 0};
	double heikin;
	int i;
	
	for(i=0; i<10; i++){
		height[10] += height[i];
	}
	heikin = height[10] / 10.0;
	printf("平均は%fcmです\n", heikin);
	
	return 0;
}

のように表すことができます。

実行結果

上記と同じ

行数が変数の時よりも3行増えていますが、配列を使った場合人数が増えてもプログラムの構成はほぼ変わりません。
なにより変数名を付ける手間がありません。

上記例では、配列heightにすべての身長データを代入しています。
さらに身長の合計値を配列の最後尾に保存しています。(こんな使い方も有りです)

height[10] += height[i];

人数が増えてもこの計算式は基本的に変化しません。(添え字部分の10をのぞき)
これが配列を使うメリットです。

このように配列を利用するとまとまった数値扱う場合便利に使うことができます。

コメント