Do Whileループ
CoddyのCジャーニー「Fundamentals」セクションの一部 — レッスン 39/63。
do-whileループはwhileループに似ていますが、1つの重要な違いがあります。それは、コードブロックが少なくとも1回は実行され、その後に条件がチェックされるという点です。
do-whileループを作成します:
do {
// 実行されるコード
} while (condition);ユーザーに正の数の入力を求めるプログラムを作成しましょう:
int number;
do {
printf("Please enter a positive number: ");
scanf("%d", &number);
} while (number <= 0);
printf("You entered: %d\n", number);この例では:
- 最初にdoブロック内のコードが実行され、入力を求めます
- 入力を取得した後、条件
number <= 0がチェックされます
- 条件が真(true)の場合(数値が正ではない)、ループが繰り返されます
- 条件が偽(false)の場合(数値が正である)、ループが停止します
do-while文は、条件に関係なく、少なくとも1回はコードを実行する必要がある状況に最適です。
チャレンジ
簡単do-while ループを使用して、次の処理を行うプログラムを作成してください。
- 変数
sumを 0 に初期化します。 - 変数
numberを 1 に初期化します。 - 各反復で、
numberをsumに加算します。 - 各反復で
numberを 2 ずつ増やします(例:1, 3, 5, ...)。 numberとsumを出力します:Sum is: [The sum value]Num is: [The number value]numberが 50 以下の間、ループを継続します。- ループ終了後に
sumの最終値を出力します:Final Sum: [The final sum value]
チートシート
do-whileループは、コードを少なくとも1回実行してから、条件をチェックします:
do {
// 実行されるコード
} while (condition);正の入力を求める例:
int number;
do {
printf("Please enter a positive number: ");
scanf("%d", &number);
} while (number <= 0);
printf("You entered: %d\n", number);do-whileループは、条件をチェックする前に少なくとも1回コードを実行する必要がある場合に最適です。
自分で試してみよう
#include <stdio.h>
int main() {
// 変数を初期化する
int sum = 0;
int number = 1;
// ここにコードを記述してください
// 最終的な合計を出力する
printf("Final Sum: %d\n", sum);
return 0;
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。