C++ 継続ステートメント
C++ の continue ステートメント
このチュートリアルでは、例を使用して、continue ステートメントとループの操作について学習します。
コンピュータ プログラミングでは、continue
ステートメントはループの現在の反復をスキップするために使用され、プログラムの制御は次の反復に移ります。
continue
の構文 ステートメントは:
continue;
continue ステートメントについて学ぶ前に、
- C++ for ループ
- C++ if...else
- C++ while ループ
C++ の continue ステートメントの動作
<図>例 1:for ループを続行
for
で ループ、continue
現在の繰り返しをスキップし、制御フローは update
にジャンプします
// program to print the value of i
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; i++) {
// condition to continue
if (i == 3) {
continue;
}
cout << i << endl;
}
return 0;
}
出力
1 2 4 5
上記のプログラムでは、for
を使用しました。 i の値を出力するためのループ 各反復で。ここで、コードに注目してください。
if (i == 3) {
continue;
}
これは
- いつ私
3
に等しい 、continue
ステートメントは現在の反復をスキップし、次の反復を開始します - では、私
4
になります 、 そしてcondition
再評価されます。 - したがって、
4
と5
次の 2 回の反復で印刷されます。
注意 :continue
statement はほとんどの場合、意思決定ステートメントで使用されます。
例 2:while ループを続行する
while
で ループ、continue
現在の反復をスキップし、プログラムの制御フローを while
に戻します condition
.
// program to calculate positive numbers till 50 only
// if the user enters a negative number,
// that number is skipped from the calculation
// negative number -> loop terminate
// numbers above 50 -> skip iteration
#include <iostream>
using namespace std;
int main() {
int sum = 0;
int number = 0;
while (number >= 0) {
// add all positive numbers
sum += number;
// take input from the user
cout << "Enter a number: ";
cin >> number;
// continue condition
if (number > 50) {
cout << "The number is greater than 50 and won't be calculated." << endl;
number = 0; // the value of number is made 0 again
continue;
}
}
// display the sum
cout << "The sum is " << sum << endl;
return 0;
}
出力
Enter a number: 12 Enter a number: 0 Enter a number: 2 Enter a number: 30 Enter a number: 50 Enter a number: 56 The number is greater than 50 and won't be calculated. Enter a number: 5 Enter a number: -3 The sum is 99
上記のプログラムでは、ユーザーは数字を入力します。 while
ループは、入力された数値が 50
を超えない限り、ユーザーが入力した正の数値の合計を出力するために使用されます .
continue
の使用に注意してください
if (number > 50){
continue;
}
- ユーザーが
50
より大きい数値を入力した場合 、continue
ステートメントは現在の反復をスキップします。次に、プログラムの制御フローはcondition
に進みますwhile
の ループ。 - ユーザーが
0
未満の数値を入力した場合 、ループが終了します。
注意 :continue
ステートメントは do...while
に対しても同じように機能します ループします。
ネストされたループを続ける
continue
のとき 入れ子になったループで使用すると、内側のループの現在の反復をスキップします。たとえば、
// using continue statement inside
// nested for loop
#include <iostream>
using namespace std;
int main() {
int number;
int sum = 0;
// nested for loops
// first loop
for (int i = 1; i <= 3; i++) {
// second loop
for (int j = 1; j <= 3; j++) {
if (j == 2) {
continue;
}
cout << "i = " << i << ", j = " << j << endl;
}
}
return 0;
}
出力
i = 1, j = 1 i = 1, j = 3 i = 2, j = 1 i = 2, j = 3 i = 3, j = 1 i = 3, j = 3
上記のプログラムでは、continue
ステートメントが実行されると、内側のループで現在の反復がスキップされます。そして、プログラムの制御は更新式に移動します
したがって、 j =2 の値 出力には表示されません。
注意 :break ステートメントは、ループを完全に終了します。ただし、continue
ステートメントは現在の反復のみをスキップします。
C言語