
Kiiv
5 год назад
Что будет выведено на экран после исполнения фрагмента программыint i, j;for(j = 1; j < 3; j++){i = 0;while((i += 8) <= 20)printf("%d ", j + i--);}
ОТВЕТЫ

Тома
Oct 24, 2020
9 16 10 17
Происходить будет так:
I) j = 1
i = 0;
while (i += 8) <= 20)
1) i = 0 + 8 = 8
(j + i--) = 1 + 8 = 9 - первое число, которое выведется.
Т.к. (j + i--), то после вывода на экран 9, i уменьшится на 1.
Т.е. i станет = 7.
2) i = 7 + 8 = 15
(j + i--) = 1 + 15 = 16 - второе число, которое выведется.
После вызова ф-ии printf, i станет = 14.
II) j = 1;
i обнулится всё будет аналогично, только j уже будет = 2.
Происходить будет так:
I) j = 1
i = 0;
while (i += 8) <= 20)
1) i = 0 + 8 = 8
(j + i--) = 1 + 8 = 9 - первое число, которое выведется.
Т.к. (j + i--), то после вывода на экран 9, i уменьшится на 1.
Т.е. i станет = 7.
2) i = 7 + 8 = 15
(j + i--) = 1 + 15 = 16 - второе число, которое выведется.
После вызова ф-ии printf, i станет = 14.
II) j = 1;
i обнулится всё будет аналогично, только j уже будет = 2.
752
Смежные вопросы: