インターネットエクスプローラで学ぶC言語(入門編)

レッスン16:配列(宣言と代入)

このレッスンで学ぶことは?
このレッスンでは、配列の宣言と代入について説明します。
クイックジャンプ: プログラム | プログラム説明 | 形式 | 動作確認 | 
次のレッスンでは

プログラム
次のプログラムでは、配列を宣言し、値を代入しています。
[注意]左端の番号は、プログラムの一部ではありません。各行を区別するために付けた番号です。

  1. void main(void)
  2. {
  3.   int i;
  4.   int a[.3];
  5.   for(i=0;i<=2;i=i+1)
  6.     a[i]=100+i;
  7. }



配列の宣言

 3行目で整数型の変数iを宣言しています。4行目では整数型の配列を宣言しています。この配列の要素数が3つですから箱が3つ用意されます。それぞれの箱に整数型の値が入ります。3つの箱全体に名前がaと付けられています。配列の添え字は0から2です。

配列への代入

 配列の添え字は0から2ですので、aの1番目の箱はa[0]、2番目の箱はa[1]、3番目の箱はa[2]で参照できます。a[0]=100とすれば、1番目の箱に100を入れることができます。
 5行目6行目forブロックでは、繰り返し処理により、aの1番目の箱に100を、2番目の箱に101を、3番目の箱に102を入れています。この繰り返しの処理を詳しく見てみましょう。
 まず、5行目for文にi=0とありますので、iの値は0になります。

 次に、6行目のa[i]=100+iが実行されます。iが0ですので、右辺は100+0、すなわち、100になります。左辺はa[0]になります。この代入文により、aの1番目の箱に100が入ります。

 5行目に戻ってiを1つ増やして1にし、6行目でa[i]:=100+iを計算します。この代入文により、aの2番目の箱に101が入ります。

 再び、5行目に戻ってiを1つ増やして2にし、6行目でa[i]=100+iを計算します。

 5行目に戻ってiを1つ増やして3にしますが、条件のi<=2を満足しませんので、これ以上繰り返しは行われません。

形式

配列の宣言形式

 配列の宣言は次のようにします。
    型  配列名 [要素数];
例えば、int data[100];としますと、100の要素からなる配列が用意され、名前はdataと付けられることになります。

配列要素の参照

 配列要素の参照は次のようにします。
   配列名[添え字番号]
data[10]は、添え字番号が10の要素を参照します。この添え字番号は、0以上で要素数-1以下でなければなりません。例えば、int data[100]と宣言されたとき、添え字番号は0から99まででなければならず、data[-1]やdata[100]はエラーになります。

動作確認
Cシミュレータを使って、上のプログラムの動作を確認してみましょう。

Cシミュレータ
Cシミュレータによる動作確認をするときは上の絵をクリック
[注意]このリンク先のページはInternet Explore 3.0以降で正しく表示されます。

次のレッスンでは?
これで復習は終りです。次のレッスン17では、応用的なプログラムを見てみましょう。[レッスン17へ]


TitleLineAnim.gif (2453 バイト)
http://or-lab.asahi-u.ac.jp/

このページの最終更新日は 00/01/25 です。
このページに関するご意見・コメントは板谷雄二(itaya@alice.asahi-u.ac.jp)までお願いします。

(C) 板谷雄二