русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Переключатели


Дата добавления: 2013-12-23; просмотров: 791; Нарушение авторских прав


Трассировочная таблица

 

 

Шаг выполнения Номер строки Значения переменных
    е k e1
1.0 - .
1.0  
м .
0.5 1.5
0.5 i 1.5
0.5 1.5
0.25 1.5
0.25 1.25
0.25 1.25
0.25 1.25
0.125 1.25 …

 

Основным средством для организации мультиветвления служит оператор-переключатель, формат которого имеет вид:

 

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

{ caseконстанта1: операторы_1;

caseконстанта2: операторы_2;

default:операторы;

}

 

В этом операторе используются три служебных слова: switch, case, default.Первое из них идентифицирует собственно оператор-переключатель. Служебное слово caseс последующей константой является в некотором смысле меткой. Константы могут быть целыми или символьными и все должны быть различными (чтобы метки были различимы). Служебное слово defaultтакже обозначает отдельную метку. При выполнении оператора (рис. 2.6, а) вычисляется выражение, записанное после switch,и его значение последовательно сравнивается с константами, которые помещены вслед за case.При первом же совпадении выполняются операторы, помеченные данной меткой. Если выполненные операторы не предусматривают какого-либо перехода (т.е. среди них нет ни goto,ниreturn,ни exit(),ниbreak),то далее выполняются операторы всех следующих вариантов, пока не появится оператор перехода или не закончится переключатель.

 

 

Рис. 2.6. Переключатель (а) и альтернативный выбор (6):

а - если выражение равно МК, то выполняются операторы Sk, Sk+1 Sn , S;



б - если выражение равно LK, то выполняются только операторы Sk

 

Операторы вслед за defaultвыполняются, если значение выражения в скобках после switchне совпало ни с одной константой после case.Метка defaultможет в переключателе отсутствовать. В этом случае при несовпадении значения выражения с константами переключатель не выполняет никаких действий. Операторы, помеченные меткой default,не обязательно находятся в конце (после других вариантов переключателя). Уточним, что defaultи"caseконстанта" не являются метками в обычном смысле. К ним, например, нельзя перейти с помощью оператора goto.

На рис. 2.6 приведены схемы переключателя (рис. 2.6, а) и оператора альтернативного выбора или селектора (рис. 2.6 , б), отсутствующего в языке Си.

На рис. 2.7 изображена схема альтернативного выбора, реализованная при помощи переключателя и дополнительных операторов, введенных в S1, S2,..., Sn.

 

Рис.2.7. Альтернативный выбор с использованием переключателя. В число операторов каждой группы Sk добавлен оператор выхода из переключателя

 

Для иллюстрации работы переключателя рассмотрим программу, которая читает любую десятичную цифру и выводит на экран ее название:

 

Пример результатов выполнения программы:

 

Программа прекращает выполнение, как только будет введен символ, отличный от цифры. Завершение программы обеспечивает оператор return;который в данном случае передает управление операционной системе, так как выполняет выход из функции main( ).

Переключатель вместе с набором операторов breakреализует в этой программе альтернативный выбор (см. рис. 2.7). Если удалить все операторы break,то работа переключателя в этой программе будет соответствовать схеме рис. 2.6, а.

Несколько "меток" caseс разными значениями констант могут помечать один оператор внутри переключателя, что позволяет еще больше разнообразить схемы построения операторов switch.



<== предыдущая лекция | следующая лекция ==>
Программа оценки машинного нуля. | L - для ввода значений типа long double (Lf, Le).


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.