Оператор ветвления switch является альтернативой оператору if … else. Его обычно использую в случаях, когда имеется более сложный набор условий, состоящий из нескольких вариантов. Суть его работы состоит в следующем: программа ищет значение, которое соответствует переменной для сравнения и далее выполняет указанные инструкции. Структура оператора выглядит так:
switch (выражение)
{
сase возможный вариант выражения:
инструкции;
break; //место выхода из case
case возможный вариант выражения:
инструкции;
break; //место выхода из case
…
}
Рассмотрим пример использования оператора switch.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
int a;
// предлагаем ползователю выбрать число из списка
Console.WriteLine("Выберите число:\n 100 \n 200\n 300");
//сохраняем набранное пользователем число в переменную «а»
a = Convert.ToInt32(Console.ReadLine());
//далее идет выбор варианта действий в зависимости от выбора пользователя
switch (a)
// если пользователь набрал 100
case 100:
Console.WriteLine("Вы выбрали число 100");
break;
//если пользователь набрал 200
case 200:
Console.WriteLine("Вы выбрали число 200");
break;
//если пользователь набрал 300
case 300:
Console.WriteLine("Вы выбрали число 300");
break;
//если пользователь набрал число не из списка
default:
Console.WriteLine("Выберите число из списка0");
break;
}
//ждем от пользователя нажатия любой клавиши для завершения работы программы
Console.ReadKey();
}
}
}
Рис. 12. Результат работы программы.
Результат работы программы:
В консоль выводятся строки: «Выберите число: 100, 200, 300»
Допустим, пользователь выбирает 100
В консоль выводится строка: «Вы выбрали число 100»
Если пользователь выберет другой вариант, в ответ он получит соответствующую строку («Вы выбрали 200» или «Вы выбрали 300»).
Если пользователи введет число не из предложенного списка, в консоль выводится строка: «Выберите число из списка»