Бинарными (т. е. с двумя операндами) арифметическими операциями являются +, -, *, /, а также операция деления по модулю %. Деление целых сопровождается отбрасыванием дробной части, какой бы она ни была.
Операция % к операндам типов float и double не применяется.
Примеры выражений с арифметическими операциями:
a + b%c
(a + b)/3*5
Дополнительные арифметические операции
Язык Си имеет ряд уникальных операций, как правило, отсутствующих в других языках программирования. К этим операциям относятся операция увеличения на единицу ++ и операция уменьшения на единицу. Например:
a = a + 1; эквивалентно a++; или ++a;
Выполнение операций "++" или "--" вызывает увеличение или уменьшение на единицу значения соответствующей переменной.
Результат операций может быть различным в зависимости от того, где находятся знаки операций: если используется постфиксная операция, т.е операция ++ или -- записана после переменной, то результатом операции будет значение переменной до увеличения или уменьшения. Иными словами переменная сначала используется в выражении, а затем увеличивается или уменьшается. Например:
a = 4;
b = (a++) * 5; /* здесь b = 20 */
Если используется префиксная операция, т. е. операция ++ или -- записана перед переменной, то результат операции - значение переменной после увеличения или уменьшения. Иными словами переменная вначале увеличивается или уменьшается, затем используется в выражении. Например:
a = 4;
b = (++ a) * 5; /* здесь b = 25 */
Приоритет операций выше, чем у * или /, но все равно рекомендуется ставить скобки, чтобы не запутаться.