Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Справочник по С.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
92.9 Кб
Скачать

Инструкция goto

Инструкция goto — это С#-инструкция безусловного перехода. При ее выполнении управление программой передается инструкции, указанной с помощью метки.

Метка — это действительный в С# идентификатор, за которым поставлено двоеточие. Метка должна находиться в одном методе с инструкцией goto, которая ссылается на эту метку. Например, с помощью goto можно организовать следующий цикл на 100 итераций:

х = 1;

loopl:

x++;

if(x < 100) goto loopl;

Инструкцию goto можно также использовать для перехода к case- или default-ветви внутри инструкции switch.

Арифметические оператор Арифметические операторы

Оператор

Действие

+

Сложение

-

Вычитание, унарный минус

*

Умножение

/

Деление

%

Деление по модулю

--

Декремент

++

Инкремент

После применения оператора деления (/) к целому числу остаток будет отброшен. Например, результат целочисленного деления 10/3 будет равен 3. Остаток от деления можно получить с помощью оператора деления по модулю (%). Этот оператор возвращает остаток от деления нацело. Например, 10 % 3 равно 1. В С# оператор % можно применить как к целочисленным типам, так и типам с плавающей точкой. Например, 10,0 % 3,0 также равно 1.

Инкремент и декремент

Операторы инкремента (++) и декремента (--) увеличивают и уменьшают значение операнда на единицу, соответственно.

х = х + 1; аналогична такой постфиксной форме: х ++; в виде префиксной формы ++ х;

х = х - 1; аналогична такой постфиксной форме: х --; в виде префиксной формы -- х;

Если такой оператор применен в префиксной форме, то С# сначала выполнит эту операцию, чтобы операнд получил новое значение, которое затем будет использовано остальной частью выражения. Если же оператор применен в постфиксной форме, то С# использует в выражении его старое значение, а затем выполнит операцию, в результате которой операнд обретет новое значение.

Рассмотрим фрагмент кода:

х = 10;

y = ++х;

В этом случае переменная у будет установлена равной 11. Но если в этом коде префиксную форму записи заменить постфиксной, переменная у будет установлена равной 10:

х = 10;

у = х++;

В обоих случаях переменная х получит значение 11. Разница состоит лишь в том, в какой момент она станет равной 11 (до присвоения ее значения переменной у или после).

Инструкция у = х + х++; сначала суммирует значения х и х, после чего присваивает результат переменной у. Только затем она инкрементирует переменную х. Но инструкция у = х + ++х; сначала получает (и запоминает) исходное значение переменной х, затем инкрементирует его, суммирует новое значение с исходным, а результат суммирования присваивает переменной у.

Нетрудно заметить, что простая замена элемента х++ элементом ++х меняет числовой ряд, генерируемый программой, с четного на нечетный.

В выражении: х + ++х; значение переменной х суммируется с инкрементированным значением той же переменной х.