Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
int.docx
Скачиваний:
6
Добавлен:
13.04.2015
Размер:
66.82 Кб
Скачать

4.5. Условный оператор ?

В отличие от других операторов языка С, которые могут быть унарными или бинарными, специфический оператор условия является тернарным оператором. Это означает, что у него может быть три операнда [4.1].

Общий формат записи оператора условия:

условие ? выражение_1 : выражение_2

Если в результате вычисления условия будет получено значение TRUE (истина, не нуль), то выполняется выражение_1, и результатом выполнения оператора условия будет значение, полученное при вычислении этого выражения. Если в результате вычисления условия будет получено значение FALSE (ложь, т.е. нуль), то выполняется выражение_2, и результатом выполнения оператора условия будет значение, полученное при вычислении выражение_2.

Оператор условия часто описывают как оператор ?. Тернарный оператор условия ? наиболее часто используется для присвоения переменной одного из двух значений в зависимости от некоторого условия.

4.6. Оператор break (от английского – прерывать)

Оператор или утверждение break служит для немедленного выхода из цикла, будь то while, for или do–while. После выхода из цикла выполнение программы продолжается с утверждения (фрагмента программы), непосредственно следующего за циклом.

Если оператор break встречается во вложенном цикле (вложенных циклах), то будет прекращено выполнение того цикла, в котором этот оператор встретился.

Необходимость в использовании оператора прерывания break в теле цикла возникает тогда, когда условие продолжения итераций нужно проверять не в начале цикла (как в циклах while и for) и не в конце тела цикла (как в цикле do–while), а в середине тела цикла [4.2].

Формат записи оператора break:

break;

4.7. Оператор continue (от английского – продолжать)

Оператор или утверждение continue служит для перехода к следующей итерации цикла [4.2].

Оператор continue противоположен по действию оператору break. Оператор continue позволяет в любой точке тела цикла (while, for или do–while) прервать текущую итерацию и перейти к проверке условий продолжения цикла. В соответствии с результатами проверки либо заканчивается выполнение цикла, либо начинается новая итерация. При этом все утверждения (фрагменты программы), которые следуют за оператором continue (ключевым словом), автоматически пропускаются.

Формат записи оператора continue:

continue;

4.8. Оператор goto

Сейчас во многих языках программирования оператор безусловного перехода типа goto не используется. Однако в языке программирования С он имеет место. Применение оператора goto не является хорошим стилем программирования. Но в некоторых случаях его применение бывает уместно. Иногда, при умелом использовании, оператор goto может оказаться весьма полезным, например, если нужно покинуть глубоко вложенные циклы [4.2].

Для оператора goto всегда необходима метка. Метка – это идентификатор с последующим двоеточием. Метка должна находиться в той же функции, что и оператор goto, переход в другую функцию невозможен.

Общий формат записи оператора goto:

goto метка;

.

.

.

метка: заданные действия.

Метка может находиться как до, так и после оператора goto. С помощью оператора goto можно не только выходить из цикла, но и организовать цикл.

Логические операторы отношения приведены в табл. 4.1.

Таблица 4.1.

широкая ячейка

№ п/п

Оператор

Операция

1)

&&

И

2)

||

ИЛИ

3)

!

НЕ, отрицание

Ниже приведены операции отношений в убывающей последовательности приоритетов [4.2]:

Наивысший !

> >= < <=

== !=

&&

Низший ||

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

Результат любой операции сравнения или логической операции есть 0 (нуль) или 1.

Одномерный массив – это список связанных однотипных переменных.

Общая форма записи одномерного массива [5.2]:

тип имя_массива[размер];

В приведенной записи элемент тип объявляет базовый тип массива. Количество элементов, которые будут храниться в массиве с именем имя_массива, определяется элементом размер.

В языке С индексация массива начинается с нуля. Например, если размер массива определен величиной 9, то в массиве можно хранить 10 элементов с индексацией 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Доступ к отдельному элементу массива осуществляется с помощью индекса. Индекс описывает позицию элемента внутри массива.

Все массивы занимают смежные ячейки памяти, т.е. элементы массива в памяти расположены последовательно друг за другом. Ячейка памяти с наименьшим адресом относится к первому элементу массива, а с наибольшим – к последнему.

Для одномерных массивов общий размер массива в байтах вычисляется по формуле:

всего байт = размер типа в байтах * количество элементов

В языке С нельзя присвоить один массив другому. Для передачи элементов одного массива другому необходимо выполнить присвоение поэлементно.