Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


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



 

Применяется, когда необходимо, чтобы тело цикла выполнилось хотя бы один раз.

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

Пример вывода квадратов чисел от 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; Просмотров: 170; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.01 с.)
Главная | Случайная страница | Обратная связь