C++ оператор продолжения
С++ оператор continue
В этом руководстве мы узнаем об операторе continue и его работе с циклами с помощью примеров.
В компьютерном программировании continue оператор используется для пропуска текущей итерации цикла, и управление программой переходит к следующей итерации.
Синтаксис continue утверждение:
continue; Прежде чем вы узнаете об операторе continue, убедитесь, что вы знаете о,
- С++ для цикла
- C++, если...иначе
- цикл while C++
Работа оператора 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;
} Это означает
- Когда i равно
3,continueоператор пропускает текущую итерацию и запускает следующую итерацию - Затем i становится
4, иconditionоценивается снова. - Следовательно,
4и5печатаются в течение следующих двух итераций.
Примечание :continue заявление почти всегда используется с заявлениями о принятии решения.
Пример 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