Книга: Конец холивара. Pascal vs C
2.1.3. Оператор варианта (переключатель)
2.1.3. Оператор варианта (переключатель)
Переключатель в C существенно отличается от подобного в Pascal. Например, в нём нельзя в одном варианте выбора предлагать через запятую несколько констант. Зато у переключателя в C есть вариант по умолчанию. Поэтому, я привожу для разбора другой, но тоже простой и наглядный, пример.
Пример 2.3: При вводе номера дня недели программа сообщает название рабочего дня или сообщение “Выходной!”
#include <stdio. h>
int main ()
{
int n;
printf (“Введите номер дня неделиn”);
scanf (”%d”, &n);
switch (n)
{
case 1: printf (“Понедельникn”); break;
case 2: printf (“Вторникn”); break;
case 3: printf (“Средаn”); break;
case 4: printf (“Четвергn”); break;
case 5: printf (“Пятницаn”); break;
case 6: printf (“Выходной!n”); break;
case 7: printf (“Выходной!n”); break;
default: printf (“Вы заработались :-) n”);
}
getchar ();
return 0;
}
Как видите, данный оператор не может похвастаться хвалёной компактность записи, столь свойственной C. В Pascal подобная структура реализована куда элегантней. Вообще, современные среды программирования сводят на нет преимущество в экономии нажатий клавиш, поскольку все они обладают опцией автозавершения. Но данному монстру из C завоевать любовь программистов не поможет даже это.
SWITCH – переключатель, железнодорожная стрелка.
CASE – случай, обстоятельство.
BREAK – прервать.
DEFAULT – отсутствие, исключение, по умолчанию.
- 2.1. Ветвление (выбор)
- 2.1.1. Альтернатива (условный оператор)
- 2.1.2. Неполный условный оператор
- 2.1.3. Оператор варианта (переключатель)
- 2.2. Повторение (операторы цикла)
- 2.2.1. Цикл типа “пока” (цикл с предусловием)
- 2.2.2. Цикл, который выполняется не меньше одного раза
- 2.2.3. Цикл с параметром (со счётчиком)
- 2.1.2. Неполный условный оператор
- Оператор-переключатель switch
- 2.1.1. Альтернатива (условный оператор)
- 2.2. Повторение (операторы цикла)
- Арифметические операторы
- 1.2.4. Операторы и приоритеты
- Условные операторы
- 1. Оператор Select – базовый оператор языка структурированных запросов
- Поразрядные операторы
- Оператор цикла foreach
- Не отображаются скрытые файлы. При установке переключателя в положение Показывать скрытые файлы и папки ничего не происх...
- Логические операторы