Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие С(часть1-3).doc
Скачиваний:
23
Добавлен:
12.02.2015
Размер:
854.02 Кб
Скачать

4. Основные операции языка с

Знаки операций в языках программирования обеспечивают формирование и последующие вычисление выражений. Все операции делят на унарные и бинарные. Следует учитывать, что один и тот же символ может обозначать как унарную, так и бинарную операцию в зависимости от контекста. Например, символ “–” может быть унарным или бинарным минусом. Кратко опишем основные операции:

+

плюс, унарный и бинарный (+x; x+y);

минус, унарный и бинарный (–x; x–y);

++

увеличение на единицу (инкремент): (x++ – увеличение значения переменной x после ее использования, ++x – увеличение значения переменной x до ее использования);

––

уменьшение на единицу (декремент): (x–– – уменьшение значения переменной x после ее использования, ––x – уменьшение значения переменной x до ее использования);

&

унарная операция получения адреса операнда (&x) ,бинарная поразрядная конъюнкция (И) битовых представлений значений целочисленных операндов, например, 6&5 равно 4, действительно 1102&1012 равно 1002;

~

унарная операция поразрядного инвертирования внутреннего двоичного кода целочисленного аргумента (~x);

|

бинарная поразрядная дизъюнкция (ИЛИ) битовых представлений значений целочисленных операндов, например, 6|5 равно 7, действительно, 1102|1012 равно 1112;

^

бинарная операция поразрядного исключающего ИЛИ (сложение по модулю 2) битовых представлений целочисленных операндов, например, 6^5 равно 3, действительно, 1102|1012 равно 0112;

<< (>>)

сдвиг влево (вправо) битового представления значения левого операнда на количество разрядов, равное значению правого операнда, например, 5>>1 равно 2, действительно, 1012 при сдвиге вправо на 1 разряд дает 0102;

*

унарная операция обращения по адресу (операция разыменования), бинарная операция умножения;

/

бинарная операция деления; при целочисленных операндах абсолютное значение результата округляется до целого, например, 20/3 равно 6;

%

получение остатка от деления целочисленных операндов, например, 20%3 равно 2;

<(<=)

меньше (меньше или равно) Результат операций сравнений целочисленный: 0 (ложь) или 1(истина);

>(>=)

больше (больше или равно)

==

равно

!=

не равно

&&

конъюнкция (И) арифметических операндов или отношений; целочисленный результат: 0 (ложь) или 1(истина);

||

дизъюнкция (ИЛИ) арифметических операндов или отношений; целочисленный результат: 0 (ложь) или 1(истина);

=

присвоение (присвоить значение выражения операнда из правой части операнду из левой части: x=20–2*y);

=

где  – одни из знаков операций *, /, %, +, – ,&,|,^,<<,>>. Операция x=у эквивалентна x=xy, например, x*=2; эквивалентно x=x*2;

,

несколько выражений, разделенных запятой вычисляются слева направо, в качестве результата сохраняется тип и значение самого правого выражения, например, d=4,d*2 равно 8;

Кроме того, в языке С определена условная операция, которая используется с тремя операндами и имеет формат:

выражение1 ? выражение2 : выражение3

Если выражение1 истинно, то есть не равно 0, то результатом становится значение выражения2, иначе результатом становится значение выражения3.

Несколько операций языка С, не рассмотренные здесь, будут введены в соответствующих главах.

Теперь, когда введены основные типы данных и операции, можно перейти к решению простейших задач.

Пример. По двум заданным сторонам прямоугольника найти его площадь и длину диагонали.

#include <stdio.h>

#include <math.h>