Арифметические операции
Арифметические операции имеют в Си меньше всего специфики. Единственное, на что следует обращать внимание при их выполнении, -это размерность используемых целых переменных и переменных с плавающей точкой, неявные преобразования типов данных в выражениях и связанные со всем этим возможные потери значащих цифр (значимости) результата.
Операция "%" вычисляет остаток от деления первого операнда на второй. Она имеет также другой, содержательный смысл: второй операнд-константа выступает ограничителем возможных изменений первого операнда и называется модулем. Название такой операции звучит как "... по модулю ...":
a = (a + 1) % 16; // a присвоить a+1 по модулю 16