Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Do тело while (выражение); ⇐ ПредыдущаяСтр 4 из 4
Применяется, когда необходимо, чтобы тело цикла выполнилось хотя бы один раз. Если выражение истинно, то тело цикла опять выполняется, а если ложно, то осуществляется выход из цикла. Пример вывода квадратов чисел от 1 до 10: i=1; do { printf(“%2d%4d\n”, i, i*i); i++; }while(i< =10); Операторы переходов 1. Переход по метке – goto метка. Пример: goto m1; m1:; {… или m1: оператор; Переход по метке возможен только внутри блока, функции. 2. О ператор продолжения – continue. Оператор вызывает остановку текущей итерации цикла и вызывает новую итерацию. Пример (вывод четных чисел от 0 до 100): for (i=0; i< 100; i++) {if (i%2) continue; printf (“%d\n”, i); } 4. Оператор разрыва – break. Используется в операторах цикла и в операторе переключателе. Приводит к выходу из конструкции. Если используются вложенные циклы, то происходит выход из самой внутренней. Оператор «переключатель» Этот оператор предназначен для организации выбора одного из множества вариантов. Формат оператора: Switch (выражение) { case метка 1: оператор; ... case метка N: оператор; default: оператор; } Выражение может быть одним из основных типов (лучше целые или символьные константы). Каждая ветвь помечается словом «case», и рядом с ним стоит метка. Значение выражения сравнивается с меткой, и если они совпали, выполняется оператор. Если совпадений с ветками не произошло, то выполняется ветвь default. Одна ветвь может быть помечена сразу несколькими метками: case м1: case м2: case м3: оператор; Операторов в ветви может быть несколько, и их не нужно брать в блок за исключением default. Пример: case м10: оператор1; оператор2; оператор3; case м11: Если произошло совпадение по метке, то далее будут выполнены все операторы, начиная с указанного оператора и до default. Поэтому в конце каждой ветви ставится оператор «break».
switch (выражение) { case M1: оператор; break; ... case MN: оператор; break; default: оператор; } Пример: Фрагмент программы выполнения операции над числами по заданному знаку. Считаем, что знак операции хранится в переменной «sign», а числа в x и y. switch (sign) {case ‘-‘: z=x-y; break; case ‘+’: z=x+y; break; case ‘*’: z=x*y; break; case ‘/’: z=x/y; break; default: printf(“Неизвестная операция! \n”); }
int i=2; switch (i) { case 1: i += 2; case 2: i *= 3; case 0: i /= 2; case 4: i -= 5; default: ; } Выполнение оператора switch начинается с оператора, помеченного case 2. Таким образом, переменная i получает значение, равное 6, далее выполняется оператор, помеченный ключевым словом case 0, а затем case 4, переменная i примет значение 3, а затем значение -2. Оператор, помеченный ключевым словом default, не изменяет значения переменной. Оператор return Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающую функцию, в точку, непосредственно следующую за вызовом. Функция main передает управление операционной системе. Формат оператора: return [выражение]; Значение выражения, если оно задано, возвращается в вызывающую функцию в качестве значения вызываемой функции. Если выражение опущено, то возвращаемое значение не определено. Выражение может быть заключено в круглые скобки, хотя их наличие не обязательно. Если в какой-либо функции отсутствует оператор return, то передача управления в вызывающую функцию происходит после выполнения последнего оператора вызываемой функции. При этом возвращаемое значение не определено. Если функция не должна иметь возвращаемого значения, то ее нужно объявлять с типом void. Таким образом, использование оператора return необходимо либо для немедленного выхода из функции, либо для передачи возвращаемого значения. Пример: int sum (int a, int b) { renurn (a+b); }Функция sum имеет два формальных параметра a и b типа int, и возвращает значение типа int, о чем говорит описатель, стоящий перед именем функции. Возвращаемое оператором return значение равно сумме фактических параметров. Пример: void prov (int a, double b) { double c; if (a< 3) return; else if (b> 10) return; else { c=a+b; if ((2*c-b)==11) return; } }В этом примере оператор return используется для выхода из функции в случае выполнения одного из проверяемых условий.
|
Последнее изменение этой страницы: 2019-06-08; Просмотров: 190; Нарушение авторского права страницы