int i = 1;
while (i <= 10) {
printf("hello lanou\n");
i++;
}
適用於「次數未知、條件驅動」場景。注意避免死迴圈(條件永真)。
for (int i = 1; i <= 10; i++) {
printf("%d ", i);
}
適用於「已知次數、計數器驅動」場景。C99 支援迴圈內宣告變數。
int i = 0;
do {
printf("%d ", i);
i++;
} while (i < 10);
適用於「菜單選擇、輸入驗證」等必須先執行一次的場景。
break:跳出整個迴圈continue:跳過本次迭代,直接進入下一次判斷// 只輸出 0 和 9
for (int i = 0; i < 10; i++) {
if (i > 0 && i < 9) continue;
printf("%d ", i);
}
for (int i = 1; i < 10; i++) {
for (int j = 1; j <= i; j++) {
printf("%dx%d=%-2d ", i, j, i*j); // %-2d 左對齊佔2寬
}
printf("\n");
}
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
for (int k = 0; k < 3; k++)
printf("(%d,%d,%d) ", i, j, k);
for (int i = 0; i < 5; i++) {
for (int j = 0; j <= i; j++)
printf("*");
printf("\n");
}
printf 變數值配合 if (condition) break; 可在特定條件下中斷調試。
// [n, m] 範圍隨機數
int rand_num = arc4random() % (m - n + 1) + n;
// 產生 n 個隨機數並求最大值
int max = 0;
for (int i = 0; i < n; i++) {
int val = arc4random() % 41 + 30; // [30, 70]
printf("%d ", val);
if (val > max) max = val;
}
printf("\nmax=%d", max);
掌握三種迴圈適用場景、break/continue 語義差異、巢狀迴圈控制變數範圍、隨機數生成公式,是 C 語言流程控制的核心功力。多練習圖形列印、數學計算、陣列處理等典型題型,建立直覺。