Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы алгоритмизации и программирование.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.73 Mб
Скачать

2.5Выражения в языке Си.

Главной частью языка Си являются операторы, они управляют процессом выполнения программы.

Операторы состоят из ключевых слов и выражений. Выражения, в свою очередь, состоят из операндов, знаков операций и скобок, задающих порядок вычисления. Операнд выражения - это константа, переменная или обращение к функции. Примеры выражений: a+b/2 , c-sin(a+1) > 3.0 .

Выражения можно условно разделить на арифметические и логические.

2.5.1Арифметические операции и выражения.

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

  1. Действия в скобках (), начиная от самых внутренних;

  2. Вычисление функций;

  3. Унарный минус (-), это значит, что он применяется к одному операнду, например, -3;

  4. бинарные *, / и % (деление по модулю, т.е. остаток от целочисленного деления, - только для целых аргументов) Выполняются слева направо в порядке следования. Например, 12%5 дает 2, а 4%2 дает 0;

  5. бинарные “-“ и “+”. Выполняются слева направо в порядке следования.

Правила записи арифметических выражений:

  1. Все знаки операций проставляются. Перенос на следующую строку производится без дополнительных знаков операций;

  2. Если оба операнда в бинарных операциях одного типа, то результат будет того же типа. Деление целых даёт целое, которое получается отбрасыванием дробной части, например, 5/2 дает 2.

  3. Если операнды разных типов, то перед выполнением действия "младший" тип приводится к более "старшему". Например, 5./2 дает 2.5, поскольку целое 2 преобразуется сначала в вещественное 2.0 .

Пример:

(1.+n)/(1.-1./(2*(1.+n)))

2.5.2Логические операции и выражения.

Логические выражения обычно имеют вид

арифм.выражение1 операция отношения арифм.выражение2

Операции отношения могут быть следующими :

Смысл

Обозначение

Больше

>

Больше или равно

>=

Меньше

<

Меньше или равно

<=

Равно

==

Не равно

!=

При выполнении операции отношения сравниваются значения двух выражений. Если результат сравнения - истина, то результатом логического выражения будет число 1, иначе - 0. Например, 5>3 дает 1, а 5<3 дает 0.

Поскольку результатом логического выражения в Си является число (0 или 1), то нет разницы с точки зрения результата между арифметическим и логическим выражениями. Будем их называть просто выражениями. Условием будем называть любое выражение. Если его результат равен 0, то условие ложно, если не равен 0, то истинно.

Более сложные выражения получаются соединением двух простых знаками логических операций:

  • && логическое “и” (AND) - конъюнкция:

Выражение условие1 && условие2 равно 1, если оба условия истинны, если же хоть одно из них ложно, то результат равен 0. Например, 2+3 && 5>3 равно 1, а 2+3 && 5= =3 равно 0.

  • || - логическое “или” (OR) - дизъюнкция:

Выражение условие1 || условие2 равно 1, если хоть одно из условий истинно, если же оба ложны, то результат равен 0. Например, 2+3 || 5=3 равно 1, а 0 && 5= =3 равно 0.

  • ! - логическое “не” (NOT) - отрицание;

Выражение !условие равно 1, если условие ложно, и равно 0 в противном случае. Например, !(5= =3) равно 1, а !(5>3) равно 0.