
【6日でできるC言語入門】continue文
C言語でループ処理を行う際、「ある条件のときだけ残りの処理をスキップして、すぐ次の繰り返しに進みたい」という場面があります。
このときに活用できるのが continue(コンティニュー)文 です。continue文はbreak文のようにループ自体を終了させるのではなく、「現在のループの残りの処理を飛ばして次の繰り返しに進む」ために使います。
ここではcontinue文の使い方、動作、実践例、注意点などを解説します。

1.continue文の基本
1.1. continue文の動作
continue文は、for・while・do~whileなどの繰り返し構造の内部で使います。
continueに到達した時点で、その時のループ処理の残りをスキップし、次の繰り返しへ移動します。
| 構文例 | 動作 |
|---|---|
| for(…){…continue;} | 増分処理 → 条件判定 → ループ継続または終了 |
| while(…){…continue;} | 条件判定 → ループ継続または終了 |
1.2. サンプルプログラム:特定の値だけスキップ
プロジェクト/ファイル名: Lesson30_1/main.c
#include <stdio.h>
int main(void) {
int i;
for (i = 1; i <= 5; i++) {
if (i == 3) {
continue; // 3のときはスキップ
}
printf("iの値: %d\n", i);
}
return 0;
}実行結果
iの値: 1
iの値: 2
iの値: 4
iの値: 5この例では「i==3」のときだけprintfが実行されず、3が表示されません。
2.while文・do~while文でのcontinue
2.1. while文での利用例
プロジェクト/ファイル名: Lesson30_2/main.c
#include <stdio.h>
int main(void) {
int n = 0;
while (n < 5) {
n++;
if (n == 2) {
continue; // 2のときは残りをスキップ
}
printf("nの値: %d\n", n);
}
return 0;
}実行結果
nの値: 1
nの値: 3
nの値: 4
nの値: 52のときだけprintfがスキップされています。
2.2. 実践例:偶数だけ表示する
プロジェクト/ファイル名: Lesson30_3/main.c
#include <stdio.h>
int main(void) {
int i;
for (i = 1; i <= 6; i++) {
if (i % 2 == 1) {
continue; // 奇数はスキップ
}
printf("%dは偶数です\n", i);
}
return 0;
}実行結果
2は偶数です
4は偶数です
6は偶数です3.continue文の注意点
- continueの直後の処理はスキップされるため、増分や状態更新が正しく行われているかに注意しましょう。
- 複雑な処理の中で多用すると、プログラムの可読性が下がることがあります。
| 項目 | 注意点 |
|---|---|
| for文でのcontinue | 増分処理はcontinue後にも必ず行われる。 |
| while文でのcontinue | 増分処理をスキップしないように注意 |
まとめ
continue文は「条件によってその回の残り処理だけをスキップし、次の繰り返しに進む」ための制御文です。
- break文と違い、ループ自体は継続される
- 使い方を間違えると予期せぬ無限ループやバグの原因になることもある
正しい使い方と注意点を理解し、ループの流れをコントロールできるようになりましょう。
