Как работает цикл for?

Цикл for состоит из четырех частей:
for ([инициализация]; [условие]; [действие по окончании итерации])
{
[тело цикла]
}
Инициализация выполняется один раз перед началом цикла.
Условие проверяется перед каждой итерацией.
Тело цикла выполняется на каждой итерации.
Действие по окончании итерации выполняется (внезапно) после каждой итерации.

В блоке инициализации у вас создается переменная i и ей присваивается значение 0.
В блоке условия у вас проверка на то, чтобы i была меньше пяти. Это значит, что [тело цикла] и [действие по окончании итерации] будут выполняться до тех пор, пока это условие не станет ложным.
Тело цикла у вас пусто.
В действии по окончании итерации производится вывод в консоль и инкремент i на единицу.

Потому что изначальное значение i — ноль, как прописано в блоке инициализации.

Потому что значение i никогда не будет изменяться и, как следствие, условие продолжения цикла i < 5 всегда будет истинным, т.к. значение i всегда будет 0.

0