Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

C. Тема 1. Раздел 9

.pdf
Скачиваний:
16
Добавлен:
21.03.2016
Размер:
387.79 Кб
Скачать

Тема 1. Основные сведения о языке. Раздел 9. Ветвления

Операторы условного перехода

Оператор безусловного перехода

Часть 1

Синтаксис

if (выражение) оператор_истинного_выражения

else

оператор_ложного_выражения

Эквивалентные записи

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

if (выражение != 0)

Распространённая ошибка

if (выражение = 0)

К какому if относится else? if ( x > 0 )

if( x > y ) z = x;

else

z = y;

Где здесь может быть ошибка? if (x > 0)

for (i = 0; i < n; i++) if (s[i] > 0) {

printf("s[i] > 0"); return(i);

}

else printf("x = 0\n");

Это единственный тернарный оператор языка Си

Синтаксис

x > y ? x : y

Отличие от оператора if

Оператор ?: является выражением, результат которого можно использовать в операции присваивания

Синтаксис

if (выражение_1) оператор_1

else if (выражение_2) оператор_2

else if (выражение_3) оператор_3

else

оператор_невыполненных_условий

Синтаксис

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

{

case значение_1: оператор_1; break;

case значение_2: case значение_3:

оператор_2; break;

default:

оператор_3; break;

}

Пропуск break

Выполнение продолжится на следующем case без проверки его условия

Использование break в default

Не обязательно, но default не обязан быть последним условием

Рекомендуется всегда завершать условие оператором break

Для облегчения обслуживания кода

Для предотвращения возможных ошибок

Вместо break можно использовать return

int i = 3; switch (i)

{

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

default:

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

printf("1\n");

break;

}

Что будет напечатано на экране?

Default 1

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]