Оператор выбора (переключатель) 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Оператор выбора (переключатель)



Оператор switch (переключатель) предназначен для разветвления процесса вычислений на несколько направлений.

Формат оператора выбора:

switch (целочисленное_выражение)

{

case константа1: список_операторов1;

case константа2: список_операторов2;

… … …

default: список_операторов;

}

Последняя строка (default) может отсутствовать.

 

Вначале вычисляется выражение, значение которого должно быть целого или символьного типа. Это значение сравнивается со значениями констант и используется для выбора ветви, которую нужно выполнить.

Если значение выражения совпало с одной из перечисленных констант, то управление передается в соответствующую ветвь. После этого последовательно выполняются все остальные ветви.

Пример:

х=2; switch (x)

{

case 1:printf("1\n");

case 2:printf("2\n");

case 3:printf("3\n");

case 4:printf("4\n");

default: printf("0\n");

}

}

На экране будет выведено:

2

3

4

 

Все константы должны иметь разные значения, но быть одного и того же типа.

В случае несовпадения значения выражения ни с одной из констант выбора происходит переход на метку default либо, при ее отсутствии, к оператору, следующему за оператором switch.

Управляющий оператор break (разрыв) выполняет выход из оператора switch. Если по совпадению с каждой константой должна быть выполнена одна и только одна ветвь, схема оператора switch следующая:

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

{

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

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

… … …

case константаN: операторы N; break;

default: операторы (N+1);         

}

Пример:

х=2; switch (x)

{

case 1:printf("1\n");break;

case 2:printf("2\n");break;

case 3:printf("3\n");break;

case 4:printf("4\n");break;

default: printf("0\n");

}

}

На экране будет выведено:

2

 

 

13. Способы реализации циклических алгоритмов в ЯП Си: оператор цикла while (формат записи, алгоритм работы, примеры).

Операторы циклов

Циклы позволяют многократно выполнять отдельный оператор или последовательность операторов, причем при этом нет необходимости записывать в тексте программы одинаковые операторы несколько раз. Один проход цикла называется шагом или итерацией.

Существуют три типа операторов цикла: цикл с предусловием, цикл с постусловием и цикл с параметром.

Цикл с предусловием WHILE

Формат оператора цикла с предусловием:

while (выражение) оператор;

Перед каждым выполнением тела цикла вычисляется значение выражения (условие выполнения цикла). Если выражение в скобках – истина (не равно 0), то выполняется оператор (тело цикла). Это повторяется до тех пор, пока выражение не примет значение 0 (ложь). В этом случае происходит выход из цикла и выполняется оператор, следующий за конструкцией while. Если выражение в скобках изначально ложно (т.е. равно 0), то цикл не выполнится ни разу.

Тело цикла может включать любое количество операторов, которые нужно заключить в фигурные скобки, если их более одного.

Блок-схема:

Хотя бы 1 из операторов должен влиять на значение условия, иначе цикл будет выполняться бесконечно.

Если перед первым выполнением цикла значение выражения было ложно, тело цикла вообще не выполняется и происходит переход на следующий оператор.

Пример 1:

i=3;while (i<0){i++;printf("i=%d",i);}

Цикл не выполняется ни разу, т.к. условие изначально ложно.

Пример 2:

i=3;while (i>0){i++;printf("i=%d",i);}

Цикл выполняется бесконечное число раз, т.к. условие остается истинным постоянно.

Пример 3:

i=3;while (i>0){i--;printf("i=%d",i);}

Цикл выполняется 3 раза.

 

 

14. Способы реализации циклических алгоритмов в ЯП Си: оператор цикла do-while (формат записи, алгоритм работы, примеры).

Операторы циклов

Циклы позволяют многократно выполнять отдельный оператор или последовательность операторов, причем при этом нет необходимости записывать в тексте программы одинаковые операторы несколько раз. Один проход цикла называется шагом или итерацией.

Существуют три типа операторов цикла: цикл с предусловием, цикл с постусловием и цикл с параметром.



Поделиться:


Последнее изменение этой страницы: 2021-01-08; просмотров: 83; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.220.136.165 (0.007 с.)