while без блока в фигурных скобках выполняет ближайшую строку, до i++ дело не доходит, соответственно, условие i <= 10 выполняется вечно ибо i так и остается со значением 1, а 1 всегда <= 10
Именно по таким причинам бородатые дядьки и рекомендуют всегда открывать блок, даже если в нем будет всего одна строка. Потому что так и визуально виднее, и понятнее мысль программиста, и к тому же со временем к этой одной строке может добавиться еще какой-нибудь код и блок по любому придется открывать.