"Андрей Богатырев. Руководство полного идиота по программированию (на языке Си)" - читать интересную книгу автораПоследняя операция x = y; НЕ делает имена x и y синонимами.
Такой вещи, как "перевешивание табличек с именами с ящика на ящик" не происходит. Вместо этого, два ящика с именами x и y содержат одинаковые значения, то есть две копии одного и того же числа. ----- ----- / x / / y / --------------- --------------- | 3 *<--|--------<----|-- 3 | --------------- 1) --------------- 2), 3) 4) 1) Из ящика y берется КОПИЯ числа 3 (безымянное значение). 2) Старое содержимое ящика x уничтожается. 3) Число 3 кладется в ящик x. 4) В исходном ящике y попрежнему осталось 3. Значение целой переменной можно вывести на экран оператором печати: printf("%d\n", x); Пока будем рассматривать его как "магический". Над целыми числами можно производить такие арифметические операции: x - y вычитание x * y умножение x / y деление нацело (то есть с остатком; результат - целое) x % y вычислить остаток от деления нацело 5 / 2 даст 2 5 % 2 даст 1 В операторах присваивания используются такие сокращения: ДЛИННАЯ ЗАПИСЬ СМЫСЛ СОКРАЩАЕТСЯ ДО x = x + 1; "увеличить на 1" x++; (или ++x; ) x = x - 1; "уменьшить на 1" x--; (или --x; ) x = x + y; "прибавить y" x += y; x = x * y; "умножить на y" x *= y; x = x / y; "поделить на y" x /= y; В том числе x++; можно записать как x += 1; * СТРУКТУРЫ УПРАВЛЕНИЯ * Обычно операторы выполняются последовательно, в том порядке, в котором они записаны в программе. |
|
|