
- •Переменные
- •Использование точки с запятой и оформление текста программы
- •Ключевые слова с#
- •Идентификаторы
- •Библиотеки классов с#
- •Типы значений в с#
- •Вывод данных
- •Литералы
- •Управляющие последовательности символов
- •Строковые литералы
- •Инициализация переменной
- •Динамическая инициализация
- •Преобразование и приведение типов
- •Автоматическое преобразование типов
- •Приведение несовместимых типов
- •Приведение типов в выражениях
- •Оператор присваивания
- •Инструкция if
- •If (условие) инструкция1;
- •If (условие) {последовательность инструкций}
- •Использование блоков кода
- •Конструкция if - else - if
- •If (условие) инструкция;
- •Инструкция switch
- •Цикл for
- •Цикл while
- •Цикл do - while
- •Инструкция goto
- •Арифметические оператор Арифметические операторы
- •Инкремент и декремент
- •Операторы отношений и логические операторы
- •Оператор присваивания
- •Составные операторы присваивания
- •Поразрядные операторы
- •Операторы сдвига
- •Оператор ?
- •Одномерные массивы
- •Инициализация массива
- •Массивы трех и более измерений
- •Инициализация многомерных массивов
- •Использование свойства Length
- •Создание строк
- •Работа со строками
- •Наиболее часто используемые методы обработки строк
Инструкция 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 (до присвоения ее значения переменной у или после).
Инструкция у = х + х++; сначала суммирует значения х и х, после чего присваивает результат переменной у. Только затем она инкрементирует переменную х. Но инструкция у = х + ++х; сначала получает (и запоминает) исходное значение переменной х, затем инкрементирует его, суммирует новое значение с исходным, а результат суммирования присваивает переменной у.
Нетрудно заметить, что простая замена элемента х++ элементом ++х меняет числовой ряд, генерируемый программой, с четного на нечетный.
В выражении: х + ++х; значение переменной х суммируется с инкрементированным значением той же переменной х.