配列の基本


配列は変数の集まりである。

配列の添字は、0 ~ (配列の大きさ -1)である。

では、まず簡単なサンプルプログラムを見てみましょう。

ソースコード

源文件
  1|/* array01.c */
  2|                                                                                      
  3|#include <stdio.h>
  4|
  5|int main(void)
  6|{
  7|  int a[4], i;
  8|
  9|  a[0] = 1;
 10|  a[1] = 2;
 11|  a[2] = 100;
 12|  a[3] = 50;
 13|
 14|  for(i = 0; i < 4; i++){
 15|    printf("a[%d] = %d\n", i, a[i]);
 16|    }
 17|  return 0;
 18|}

実行結果

a[0] = 1
a[1] = 2
a[2] = 100
a[3] = 50

このプログラムのように配列の要素に値を代入するのは、いかにも面倒くさいですね。何かいい方法はないでしょうか。

int a[4] = {1, 2, 100, 50};

と書けば、配列の宣言と同時に各要素に値が代入され初期化されます。また、要素の数を省略して

int a[] = {1, 2, 100, 50};

ように書くこともできます。この場合自動的に要素の数は4となります。また、

int a[4] = {1, 2};

とした場合、a[0]は1, a[1]は2となるのはわかりますが、a[2]とかa[3]はどうなっているでしょうか。実はa[2], a[3]は0が代入されます。

配列は宣言と同時に初期化することができる。


では、array01.c をもう少し簡潔に書き直しましょう。

ソースコード

源文件
  1|/* array01.c */
  2|
  3|#include <stdio.h>
  4|
  5|int main(void)
  6|{
  7|  int a[] = {1, 2, 100, 50}, i;
  8|                                                                                      
  9|  for(i = 0; i < 4; i++){
 10|    printf("a[%d] = %d\n", i, a[i]);
 11|    }
 12|  return 0;
 13|}

実行結果

a[0] = 1
a[1] = 2
a[2] = 100
a[3] = 50
Chapte7 @ C言語目録 @ HomeWork List @ 昭亮's Homepage