Выполнение оператора происходит в следующем порядке:
1 вычисляется выражение;
2 полученное значение последовательно сравнивается с константами, помещенными после служебного слова case; при первом совпадении значений выполняются операторы, стоящие после двоеточия;
3 если ни с одной из констант совпадения не произошло, то выполнятся операторы после слова default. Для того чтобы «обойти» выполнение операторов на последующих ветвях, нужно принять специальные меры, используя операторы выхода или перехода.
Пример 1. Ввести номер дня недели и вывести соответствующий ему день недели на русском и английском языках.
Программа:
//-----------------!день недели!-----------------
#include <stdio.h>
void main()
{int N;
printf("\введите номер дня недели: ");
scanf(“%d”,&N);
switch (N)
{ case 1: printf("\t понедельник – monday !\n ");
break;
case 2: printf("\t вторник – tuesday \n");
break;
case 3: printf("\t среда – wednesday \n");
break;
case 4: printf("\t четверг – thursday \n");
break;
case 5: printf("\t пятница – friday \n");
break;
case 6: printf("\t суббота – saturday \n");
break;
case 7: printf("\t воскресенье – sunday \n");
break;
default: printf(“\tHет такого дня недели!\n”);
}
}
Результат выполнения программы: введите номер дня недели: 5
пятница – friday
Здесь используется еще один новый оператор break – оператор выхода. Его исполнение завершает работу оператора выбора, т. е. происходит «обход» других ветвей.