
- •1).Net Framework: общая характеристика, основные компоненты.
- •2).Net Framework: виртуальная машина и управляемый код
- •3) Алфавит языка c#. Лексемы: идентификаторы, ключевые слова, неименованные компоненты.
- •4) Типы данных языка с#: концепция, основные типы.
- •5) Переменные: правила описания, инициализация.
- •Область видимости переменных
- •6) Операции языка c#. Правила вычисления выражений.
- •1) Операция присваивания
- •2) Арифметические операции
- •3) Поразрядные операции
- •4) Операции отношения:
- •5) Логические операции:
- •6) Операция «приведение к типу»:
- •7) Строковые преобразования. Класс Convert:
- •8) Понятие исключения:
- •7) Операторы языка c#. Составной оператор. Блок. Метки
- •1) Оператор присваивания:
- •2) Вызов метода:
- •3) Блок или составной оператор:
- •4) Операторы ветвления:
- •5) Операторы цикла:
- •5.1. Оператор for:
- •5.2. Оператор while:
- •5.3. Оператор foreach:
- •6) Операторы перехода:зззззззззззззз
- •6.1. Оператор goto:
- •6.2. Операторы break и continue:
- •6.3. Оператор return:
- •9) Операторы цикла.
- •5.1. Оператор for:
- •5.2. Оператор while:
- •5.3. Оператор foreach:
- •10) Операторы передачи управления.
- •11) Логические и поразрядные операции языка с#.
- •12) Классы. Основные понятия, спецификаторы доступа.
- •13) Создание объектов. Понятие ссылки.
- •14) Массивы: одномерные, многомерные, невыровненые, массивы объектов.
- •Инициализация
- •Инициализация в цикле программы
- •Класс System.Array
- •15) Строковый тип данных string.
- •16) Методы: назначение, определение, вызов.
- •17) Возврат методом значений. Тип void.
- •18) Рекурсивные методы.
- •19) Перегрузка методов.
- •20) Конструкторы. Назначение, определение, вызов.
- •Вызов конструктора из других конструкторов
- •Конструкторы производных классов
- •21) Деструкторы. Назначение, определение, вызов.
- •Деструкторы Dispose() и Close()
- •22) Способы передачи параметров методу.
- •23) Статические компоненты классов.
- •24) Ссылка this.
- •25) Копирование объектов.
5) Операторы цикла:
5.1. Оператор for:
Синтаксис оператора:
for (инициализаторы; условие; список_выражений) оператор
Оператор, стоящий после круглой закрывающей скобки, задаёт тело цикла. В большинстве случаев телом цикла является блок, но может быть и любой одиночный оператор. Сколько раз будет выполняться тело цикла, зависит от трёх управляющих элементов, заданных в скобках. Инициализаторы задают начальное значение одной или нескольких переменных, часто называемых счётчиками или просто переменными цикла. В большинстве случаев цикл for имеет один счётчик, но иногда бывает полезно иметь несколько счётчиков. Значение условия определяет, должен продолжаться цикл или должен завершиться. Если значение условия true, то цикл продолжается. Если false, то цикл завершается. Список выражений, записанный через запятую, показывает, как меняются счётчики цикла на каждом шаге выполнения.
Выполнение начинается с выполнения инициализаторов. Затем проверяется условие. Если условие цикла истинно, то выполняется тело цикла, затем изменяются значения счётчиков и снова проверяется условие. Как только условие становится ложным, цикл завершает свою работу. В цикле for тело цикла может ни разу не выполняться, если условие цикла ложно после инициализации, а может происходить зацикливание, если условие всегда остаётся истинным. В нормальной ситуации тело цикла выполняется конечное число раз. Счётчики цикла зачастую объявляются непосредственно в инициализаторе и, соответственно, являются переменными, локализованными в цикле, так что после завершения цикла они перестают существовать. Пример записи оператора – вычисление факториала натурального числа:
for (int i = 1, r = 1; i <= n; i++) { r = r*i; }
5.2. Оператор while:
Цикл while является универсальным видом цикла, включаемым во все языки программирования. Тело цикла выполняется до тех пор, пока остаётся истинным выражение while. В языке C# у этого вида цикла две модификации – с проверкой условия в начале (цикл с предусловием) и в конце цикла (цикл с постусловием). Первая модификация имеет следующий синтаксис:
while (выражение) оператор
Эта модификация соответствует стратегии: "сначала проверь, а потом делай". В результате проверки может оказаться, что и делать ничего не нужно. Тело такого цикла может ни разу не выполняться. Конечно же, возможно и зацикливание. В нормальной ситуации каждое выполнение тела цикла – это очередной шаг к завершению цикла. С помощью этого вида цикла факториал вычисляется так:
i = 1; r = 1; while (i <= n) { r = r * i; i++; }
Цикл, проверяющий условие завершения в конце, соответствует стратегии: "сначала делай, а потом проверь". Вот синтаксис этой модификации:
do оператор while(выражение);
Тело такого цикла выполняется, по меньшей мере, один раз. Пример записи цикла:
i = 1; r = 1; do { r = r * i; i++; }while (i <= n)
5.3. Оператор foreach:
Новым видом цикла, не унаследованным от С++, является цикл foreach, удобный при работе с массивами. Рассмотрим его подробно в другой моей статье при изучении массивов Массивы в c#.