Основы языка C# 2005. Евсеева О.Н - 80 стр.

UptoLike

Составители: 

84
Console.WriteLine("Операция не определена");
break;
}
Console.WriteLine("{0} ({1}, {2}) = {3}", operation, arg1, arg2, result);
} //ExprResult
5.5. Операторы перехода
5.5.1. Оператор goto
Оператор goto имеет простой синтаксис и семантику:
goto [метка|case константное_выражение|default];
Все операторы языка C# могут иметь меткууникальный
идентификатор, предшествующий оператору и отделенный от него символом
двоеточия. Передача управления помеченному операторуэто классическое
использование оператора goto. Два других способа использования goto
(передача управления в case или default-ветвь) используются в операторе switch,
о чем шла речь выше.
Применение данного оператора не рекомендуется концепцией
структурного программирования, так как нарушает структурированность кода и
затрудняет понимание последовательности выполнения операторов.
5.5.2. Операторы break и continue
В структурном программировании признаются полезными «переходы
вперед», позволяющие при выполнении некоторого условия выйти из цикла, из
оператора выбора, из блока. Для этой цели можно использовать оператор goto,
но лучше применять специально предназначенные для этих целей операторы
break (прекратить выполнение текущего блока программы и выйти из него на 1
уровень вложенности блоков программы вверх) и continue (продолжить).
Оператор break может стоять в теле цикла или завершать case-ветвь в
операторе switch. Пример его использования в операторе switch уже
демонстрировался. При выполнении оператора break в теле цикла завершается
выполнение самого внутреннего цикла. В теле цикла, чаще всего, оператор
break помещается в одну из ветвей оператора if, проверяющего условие
преждевременного завершения цикла:
public void Jumps() {
int i = 1, j = 1;
for (i = 1; i < 100; i++) { // for i
for (j = 1; j < 10; j++) { // for j
if (j >= 3) break;
} // for j
Console.WriteLine("Выход из цикла j при j = {0}", j);
if (i >= 3) break;