Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_практикум_ч1_2007.DOC
Скачиваний:
15
Добавлен:
10.11.2019
Размер:
379.9 Кб
Скачать

Оператор условия if

Полная форма оператора условия if следующая:

If (условие) оператор;

else оператор;

Если значение условия "истинно", то выполняется оператор (им может быть составной оператор - блок), следующий за условием. Если же условие принимает значение "ложно", то выполняется оператор, следующий за клю­чевым словом else. В записи оператора if вторая часть (т. е. оператор еlse) может отсутствовать. Тогда, если условие принимает значение "ложно", выполняется сразу следующий оператор программы. Существенно то, что проверка условия всегда выполняется в начале цикла. Это значит, что тело цикла может ни разу не выполниться, если условие выполнения сразу будет ложным.

Пример:

/* оператор условия */

#include <stdio.h>

#include <conio.h>

main()

{

int x;

printf("Введите число "); // вывод на экран сообщения

scanf("%d",&x);// ввод с клавиатуры значения переменной х

if (x>0)

printf(" это число положительное %d",x);

if (x= =0)

printf(" это число равно нулю %d",x);

if (x<0)

printf(" это число отрицательное %d",x);

getch(); }

Другие формы условного оператора if

Часто встречается необходимость использовать конструкцию if - else if.

If (условие) оператор;

еlsе if (условие) оператор;

еlse if (условие) оператор;

еlse оператор;

В этой форме условия операторов if проверяются сверху вниз. Как только какое-либо из условий принимает значение "истинно", выполнится оператор, следующий за этим условием, а вся остальная часть конструкции будет проигнорирована.

if (x>0)

printf("это число положительное\n", x);

else if (x= =0)

printf("это число равно нулю \n", x);

else

printf("это число отрицательно\n", x);…

Вложенным оператором if называется следующая конструкция:

if (х)

{

if (у) оператор 1;

}

еlse оператор 2;

Оператор выбора switch

Язык С имеет встроенный оператор множественного выбора, называ­емый switch. Основная форма оператора имеет такой вид:

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

{

саsе constant 1:

последовательность операторов

break;

саsе constant 2:

последовательность операторов

break;

….

саse constant N:

последовательность операторов

break;

default

последовательность операторов

}

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

Допускается конструкция оператора switch, когда слово default и соот­ветствующая последовательность операторов может отсутствовать.

Оператор break

Когда после последовательности операторов встречается ключевое слово break, то вы­полнение оператора break приводит к выходу из оператора switch и пере­ходу к следующему оператору программы. Наличие оператора break в опе­раторе switch необязательно. Оператор break заканчивает последовательность операторов, относя­щихся к каждой метке. Далее выполняется следующий оператор про­граммы. Если же оператор break отсутствует, то выполнение продолжается до первого оператора break или до конца оператора switch.

Пример:

/* оператор выбора и break*/

#include <stdio.h>

#include <conio.h>

#include <iostream.h>

main() {

char ch;

printf(" Введите букву латинского алфавита \n");

ch=getchar();

if (ch>='a'&&ch<='z')

switch (ch)

{

case 'a':

printf("alekseev\n ");

break;

case 'b':

printf("bulgakov\n ");

break;

case 'g':

printf("gogol\n ");

break;

default:

printf("Другие писатели\n ");

break;

}

else

printf("Введите букву правильно! \n ");

getch();

}

Циклы

Циклы необходимы, когда следует повторить некоторые действия не­сколько раз, как правило, пока выполняется некоторое условие. В языке С известно три вида оператора цикла: for, while, do while.