今日の検定問題より。〜トレース〜

今日受けた某マルチメディア検定の問題に
トレースの問題があったのですが、
とても素晴らしかったので紹介します。
また、問題自体はフローチャートでしたが、
表現がだるいのでCに書き直します。
ご了承ください。


void main (void)
{
 int a;
 int x = 0,y = 0;
 int c = -9;
 char buf[10];


 fgets(buf, (sizeof(buf) - 1), stdin);
 sscanf(buf, "%d", &a);


 while(1){
  draw(x,y); //座標x,yを黒く塗る関数。
  x++;
  if(x >= 10){
   break;
  }
  c += a;
  if(c >= 9){
   y++;
   c = c - (2 * 9);
  }
 }
}


でトレースするのは終了までのxの値なわけです。
で、この問題の選択肢。
ア.0→1→2→3→4→5→6→7→8→9→10
イ.0→1→10
ウ.0→1→7→13
エ.0→6


もう一度よく見てみよう。
無限ループの中にあって、xが10以上になるとbreak。
xは0で初期化されており、ループ1回につき
1度インクリメントされる。


選択肢ねぇぇぇえぇぇ。
なんか不安になってきた。
これアだよね?