Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kompyuternye_tekhnologii_C.doc
Скачиваний:
8
Добавлен:
01.02.2015
Размер:
368.64 Кб
Скачать

4.3.1. Оператор switch

Оператор выбора switch используется для выполнения блоков кода для заранее определённых значений ключа. Ключ в оператореswitch может быть целого типа, символ, строка, логический. Чаще всего конструкциюswitch применяют для выбора действий при разборе списка событий, таких, как коды нажатия клавиш, например в играх. Аналогично приведенной ниже многоступенчатой конструкции оператораif можно использовать конструкциюswitch. Преимуществом оператораifявляется то, что можно использовать любое логическое выражение, но операторswitch может оказаться более наглядным и удобным при большом количестве вариантов ветвления.

if (условие)

оператор;

else if (условие)

оператор;

else if (условие)

оператор;

else if (условие)

оператор;

...

else

оператор;

Конструкция switch:

switch (выражение)

{

case константа1:

операторы;

break;

case константа2:

операторы;

break;

case константа3:

case константа4:

операторы;

break;

//...

default:

операторы;

break;

}

Константы после служебного слова case не должны повторяться в текущем оператореswitch. Каждый блок операторов заканчивается словомbreak илиgoto. Операторgoto может передать управление указанному блокуcase. Если ни одна из констант блоковcase не соответствует значению выраженияswitch, то выполняется блок операторовdefault. Если блокаdefault нет, то управление передаётся операторам, следующим после блокаswitch. Если в блокеcaseнет операторов, то его действие «проваливается» к следующему (допустимо только для пустых блоков), в таком случае один набор операторов используется для списка значений.Ниже, в программеProgram5 приведён пример выбора действия в зависимости от нажатой клавиши:

using System;

class Program5

{

static void Main()

{

Console.WriteLine("Нажмите клавишу управления курсором:");

ConsoleKeyInfo key;

key = Console.ReadKey(true);

switch (key.Key)

{

case ConsoleKey.UpArrow:

Console.WriteLine("Вы нажали стрелку вверх!");

break;

case ConsoleKey.DownArrow:

Console.WriteLine("Вы нажали стрелку вниз!");

break;

case ConsoleKey.LeftArrow:

Console.WriteLine("Вы нажали стрелку влево!");

break;

case ConsoleKey.RightArrow:

Console.WriteLine("Вы нажали стрелку вправо!");

break;

default:

Console.WriteLine("Вы нажали другую клавишу :)");

break;

}

Console.Write("Нажмите любую клавишу для завершения...");

Console.ReadKey(true);

}

}

5. Организация циклов

Организация циклов подразумевает повторяющееся выполнение операторов. Эта

методика является очень полезной, поскольку позволяет делать так, чтобы

необходимые операции выполнялись повторно столько, сколько требуется раз, без повторного написания одного и того же кода снова и снова.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]