>>724さんレスありがとうございます。

>こういうこと?
そうです。

>初期化以外での代入は変数宣言を全て終えてからじゃないとだめだよ(変数宣言は全て関数の先頭で)。
そうなんですか。
コーディングし直してみます。

>>726
宣言と初期化を明示的に別にしたいんです。
大きい配列も扱っていることもあり、この場合forループを使って初期化しています。
変数と配列を同列に扱いたいというのがありまして。