配列 練習問題3 解答解説

練習問題3: 終端記号 END をもつ整数型配列の,データ長を返す関数 int dataLength(int data[]) を作れ。

 始めに関数仕様をきちんと書いておく。

int dataLength(int data[]) の仕様
終端記号 END をもつように約束された整数型配列 data を引数にとり,そのデータ長を返す.
int dataLength(int data[])
{
    int i;
   
    for (i = 0; data[i] != END; i++);
    return i;
}

 この関数中の for 文は, data[i] の値が終端記号 END でない間,繰り返される.for 分が終了したときには,data[i] の値は END になっている.この i の値が,データの長さであるから,これを関数の戻り値とすればよい.