- •ГЛАВА 7. ПРОГРАММИРОВАНИЕ.
- •Разветвление. Применяется, когда в зависимости от условия выполняется одно либо другое действие. Действия
- •Обход — частный случай разветвления, когда одна ветвь не содержит никаких действий.
- •Для того, чтобы производить выбор одного из нескольких вариантов используется оператор switch.
- •Оператор выполняется следующим образом:
- •Альтернатива default может отсутствовать, тогда не будет произведено никаких действий.
- •Множественный выбор — результат обобщения разветвления, когда в зависимости от значения некоторой переменной
- •Пример. Разработать программу, определяющую день недели по его введенному номеру. Программа должна реагировать
ГЛАВА 7. ПРОГРАММИРОВАНИЕ.
ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ
§7.6. Язык высокого уровня Си: программирование условий
Условный оператор if Общая форма записи: if(< выражение>)
<оператор 1>; [else
<оператор 2>;]
Если выражение истинно, то выполняется <оператор 1>, если выражение ложно, то выполняется <оператор 2> (при наличии опции else).
30.06.19 Доцент С.Т. Касюк |
2 |
Разветвление. Применяется, когда в зависимости от условия выполняется одно либо другое действие. Действия могут содержать несколько этапов (символов).
Пример: |
|
if(<Условие?>) |
if (key == 1) |
|
<Действие 1>; |
{ n = n + 1; |
|
else |
m = l + r; |
} |
<Действие 2>; |
else |
|
|
{ m = m - 1; |
|
|
n = l - r; |
} |
|
30.06.19 Доцент С.Т. Касюк |
3 |
Обход — частный случай разветвления, когда одна ветвь не содержит никаких действий.
if(<Условие?>)
<Действие>;
Пример:
if (key == 1)
printf("\n Выбран первый пункт.");
30.06.19 Доцент С.Т. Касюк |
4 |
Для того, чтобы производить выбор одного из нескольких вариантов используется оператор switch.
Общая форма записи: switch( <целое выражение> )
{
case <константное выражение1>: <оператор1>; break;
case <константное выражение2>: <оператор2>; break;
...
default: <оператор n+1>;
}
30.06.19 Доцент С.Т. Касюк |
5 |
Оператор выполняется следующим образом:
1) вычисляется выражение в скобках оператора switch;
2)полученное значение сравнивается с метками (константными выражениеми) в опциях case;
3)сравнение производится до тех пор, пока не
будет найдена метка, соответствующая данному значению, после этого выполнится оператор соответствующей ветви; 4) если соответствующая метка не найдена, то
выполнится оператор в опции default.
30.06.19 Доцент С.Т. Касюк |
6 |
Альтернатива default может отсутствовать, тогда не будет произведено никаких действий.
Опция break осуществляет выход из оператора switch и переход к следующему за ним оператору. При отсутствии опции break будут выполняться все операторы, начиная с помеченного данной меткой и кончая оператором в опции default.
Константые выражения (выражения, операнды которого константы) должны быть целого типа (включая char).
30.06.19 Доцент С.Т. Касюк |
7 |
Множественный выбор — результат обобщения разветвления, когда в зависимости от значения некоторой переменной выполняется одно из нескольких действий.
30.06.19 Доцент С.Т. Касюк |
8 |
Пример. Разработать программу, определяющую день недели по его введенному номеру. Программа должна реагировать на неверн введенный номер дня недели.
main( )
{int i;
printf("\nВведите номер дня недели: "); scanf("%u", &i);
switch( i )
{case 1: printf("\n Понедельник."); break; case 2: printf("\n Вторник."); break;
. . .
case 7: printf("\n Воскресенье."); break;
default: printf("\n Неверно введен номер дня недели.");
}
}
30.06.19 Доцент С.Т. Касюк |
9 |