
C言語入門|条件分岐を体験する:if 文で行動を変える仕組みを学ぶ
ここからは、プログラムに同じ処理を何度も実行させる方法を学んでいきます😊
これまでに学んできたプログラムは、
- 上から順番に処理する(順次)
- 条件によって処理を変える(分岐)
といった流れが中心でした。
しかし実際のプログラムでは、
- 条件が続く間、同じ処理を繰り返したい。
- ある状態が終わるまで待ち続けたい。
といった場面がとても多く登場します💡
そこで活躍するのが 繰り返し処理(ループ) です。

日常生活にある「繰り返し」📚
今回は、次のような日常の行動を考えてみましょう。
テスト前なので、
制限時間が残っている間は、
問題を解き続ける。
この行動も、立派な 繰り返し処理 です😊
ポイントを整理すると、こうなります。
| 要素 | 内容 |
|---|---|
| 条件 | 制限時間が残っているか |
| 条件が成立している間 | 問題を解く |
| 条件が成立しなくなったら | 勉強を終了する |
「~の間は、同じ行動を続ける」
これが while 文の考え方そのもの なんです✨
繰り返しをフローチャートで考える🔁
この行動をフローチャートで表すと、次のようになります。

条件をチェックし、
YES の間は「問題を解く」を何度も繰り返し、
NO になったら処理を終えます。
while 文は、
この判断と繰り返しをそのままコードにした命令 です😊
while 文で繰り返しを書いてみよう💻
では、この「勉強する行動」を
C言語のプログラムで表してみましょう。
サンプルプログラム
プロジェクト名:4-3-1 ソースファイル名: sample4-3-1.c
#include <stdio.h>
#include <stdbool.h>
int main(void)
{
bool timeLeft = true;
while (timeLeft == true) {
printf("問題を解いています\n");
}
return 0;
}実行結果の例
timeLeft が true の場合
問題を解いています
問題を解いています
問題を解いています
(同じ表示がずっと続く)timeLeft が false の場合
(何も表示されない)このように、条件が true のままだと
処理は何度も繰り返され続けます⚠️
実行を止めたい場合は、
Ctrl + C キーでプログラムを強制終了してください。
while 文はどんな命令?🤔
while は英語で、
👉 「~の間は」
という意味を持っています。
while 文の基本形
while (繰り返しを続ける条件) {
繰り返し実行する処理
}日本語にすると、こう読めます👇
条件が成立している間は
→ この処理を何度でも繰り返す
とても素直な命令ですね😊
条件はいつチェックされるの?⏱️
while 文では、次の順番で処理が行われます。
- 条件をチェック
- true なら処理を実行
- 再び条件をチェック
| 条件の結果 | 動作 |
|---|---|
| true | 中の処理を実行して、また条件判定へ |
| false | 繰り返しを終了 |
最初の条件判定で false だった場合は、
1回も処理が実行されない ことも覚えておきましょう💡
なぜ無限に繰り返されるの?🔄
先ほどの例では、
bool timeLeft = true;となっており、
プログラムの途中で timeLeft を false にしていません。
そのため、
- 条件がずっと true
- while が終わらない
という 無限ループ が発生します😅
実際のプログラムでは、
- カウンタを減らす
- 条件を変化させる
といった処理を入れて、
いつか false になるように設計 します。
while 文は「終わるまで任せる係」🧑💼
while 文は、
- 同じ処理を
- 条件が続く限り
- 自動で何度も
実行してくれる便利な仕組みです😊
人にたとえるなら、
「時間が残っている間は、問題を解き続けてね」
と指示しているようなものですね✨
順次・分岐・繰り返しがそろった🎉
これで、
- 順次
- 分岐(if)
- 繰り返し(while)
という プログラムの三大構造 がそろいました。
この3つを組み合わせるだけで、
どんなに複雑な処理も作れるようになります💪
もし次に
- カウンタ付き while
- 無限ループを安全に止める方法
- for 文との違い
につなげたい場合も、すぐ対応できますよ✨
