Добавил:
ПОИТ 2016-2020 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
59
Добавлен:
29.04.2018
Размер:
1.63 Mб
Скачать

13. Оператор перехода goto. Оператор return.

Оператор перехода goto  Использование оператора безусловного перехода goto в практике программирования C++ настоятельно не рекомендуется, так как он затрудняет понимание программы и возможность их  модификации. Формат оператора следующий:  goto имя_метки;  . . .  имя_метки: оператор;  Оператор goto передаёт управление на оператор, помеченный меткой имя_метки. Помеченный оператор должен находится в той же функции, что и оператор goto, а используемая метка должна быть уникальной, т.е. одно имя_метки не может быть использовано для разных операторов программы.  Оператор перехода return  Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающую функцию, в точку, непосредственно следующую за вызовом. Функция main передаёт управление операционной системе. Формат операции:  Return [выражение];  Значение выражения, если оно задано, возвращается в вызывающую функцию в качестве значения вызываемой функции

14. Управляющие конструкции С/С++. Переключатель switch.

Управляющие конструкции позволяют организовывать циклы и ветвления в программах. Одним из способов организации выбора из множества различных вариантов является использование специального оператора выбора switch. Формат оператора следующий:

switch (переменная или выражение)

 {

 [case константное выражение1]:[список операторов1];

break;

[case константное выражение2]:[список операторов2];

 break;

. . . . . .

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

 }

Выражение, следующее за ключевым словом switch в круглых скобках, может быть любым выражением, допустимым в языке С/C++, значение которого должно быть целым. Значение этого выражения является ключевым для выбора из нескольких вариантов. Тело оператора switch состоит из нескольких операторов, помеченных ключевым словом case с последующим константным выражением. Обычно в качестве константного выражения используются целые или символьные константы. Все константные выражения в операторе switch должно быть уникальны. Кроме операторов, помеченных ключевым словом case, может быть, но обязательно один, фрагмент, помеченный ключевым словом default.

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

Можно использовать свои локальные переменные, объявления которых находятся перед первым ключевым словом case, однако в объявлениях не должна использоваться инициализация.

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

15. Управляющие конструкции С/С++. Циклы while, do-while.

16. Управляющие конструкции С/С++. Цикл for.

Цикл for - это итерационный цикл, т.е. цикл управляемый счетчиком. Структура следующая:

for ( инициализация; условие; операция )

{ операторы }

Первый параметр инициализирует счетчик, второй - условие при истиности которого выполняются операторы, третий - операция выполняемая перед новой итерацией.

Рассмотрим на примере вычисления факториала числа:

printf("вычисление факториала");

const int N = 5;

int i, f = 1;

for (i = 1; i <= N; i++)

{

f *= i;

printf("%d! = %d", i, f);

}

В качестве операции в примере используется постфиксная форма интремирования (увеличение переменной на 1). Цикл повторяется до тех пор, пока i меньше или равно N. Операция f *= i (присваение с умножением) эквивалентна форме f = а * i.

Соседние файлы в папке Пустовалова 1 сем