for文

 前回は、同じ処理を何度も書くのは面倒くさいので、繰り返し処理用の命令を書いていきましょうというお話をさせていただきました。今回からは、繰り返し処理の命令について解説します。今回は、その中でも使用頻度が一番高く、基本となるfor文をご紹介します。

 まずは早速、for文を用いたプログラムを見て下さい。以下のソースを書いて実行してみましょう。

#include <stdio.h>

int main(int argc, const char * argv[])
{
    
    // insert code here...
    int array[3];
    array[0] = 2;
    array[1] = 5;
    array[2] = 9;
    
    for(int i = 0; i < 3; i++) {
        printf("%d\n", array[i]);
    }
    
    return 0;
}

 このプログラムの結果は、以下のとおりです。

2
5
9

 このプログラムは、配列の各要素をfor文にて表示させるプログラムです。for文の中で、各配列要素にアクセスしています。

 ここで1点、説明しておかないとならない点は、for文の括弧の内容です。

 for(int i = 0; i < 3; i++)

 この変数iは、配列の要素(何番目の要素にアクセスするか)を指定するもので、カウンタと呼ばれています。さて、このfor文の括弧の中を「;」で分けると3つのフィールドに分けられます。一つ目はカウンタの初期値(始発点)です。変数iを使う事を宣言し、iは0を初期値とする、という意味です。配列にアクセスしたいので、配列の1番目である「0」を初期値にしました。何を初期値にするかは、どういうプログラムを作りたいかに依ります。二つ目はカウンタの終点(を条件式で表したもの)です。条件を満たさなかった場合に繰り返しの処理を終了します。上の例の場合、「i < 3」とあるので、iが3未満の場合までfor文の中を実行することになります。三つ目はカウンタの増減量です。処理がfor文の最後まで辿り着いた場合に、増減量の分だけカウンタの値を増やして(減らして)、for文の最初に戻って処理実行、となります。

 つまり、上のプログラムでは、iが0としてfor文の中を実行→iを1増やしてfor文の先頭に戻る→iが1としてfor文の中を実行→iを1増やしてfor文の先頭に戻る→iが2としてfor文の中を実行→iを1増やしてfor文の先頭に戻る→「i < 3」の条件を満たさないので、for文の処理は終了。for文の下に戻って本線の処理を行う。このような処理の流れになります。

■スポンサーリンク

このページの先頭へ