C言語 | フロー制御 | for文

for 文は、ループの初期化、条件、更新式を1つの構文にまとめます。

カウンタ制御ループ

構文は次のとおりです。

for (初期化式; 条件式; 更新式) 

次の while 文と対応します。

初期化式;
while (条件式) {
  ;
  更新式;
}

3つの式はすべて省略できます。条件式がなければ無限ループです: for (;;) { ... }

#include <stdio.h>

int main(void) {
  int iMax, iCount;
  printf("繰り返し回数を入力してください。 >");
  for (scanf("%d", &iMax), iCount = 0; iCount < iMax; iCount++)
    printf("%d回目の繰り返しです。\n", iCount);
  return 0;
}

scanf() の引数間にあるカンマは区切り文字です。scanf(...)iCount = 0 の間にあるカンマは、式を左から右へ評価するカンマ演算子です。for の式では便利ですが、多用すると読みづらくなります。

ループは入れ子にできます。

for (iOp1 = 1; iOp1 < 10; iOp1++) {
  for (iOp2 = 1; iOp2 < 10; iOp2++)
    printf("%2d ", iOp1 * iOp2);
  printf("\n");
}

このコードは九九表を表示します。