증가하는 for문에서는 반복 변수를 증가시키면서 특정 범위까지 반복을 수행합니다. 이 때 조건식은 반복 변수가 특정 값보다 작을 때까지 반복하도록 i < n 과 같은 형태로 작성됩니다.
결론적으로 for (int i = 0; i < n; i++) 와 같은 형태로 작성되어야 합니다.
반대로 감소하는 for문에서는 반복 변수를 감소시키면서 특정 범위까지 반복을 수행해야 합니다. 따라서 조건식은 반복 변수가 특정 값보다 클 때까지 반복하는 것을 나타내는 i >= n 과 같은 형태로 작성되어야 합니다.
잘못된 조건식인 i == 0 으로 설정되면, 반복문이 시작될 때부터 i 가 0과 같은지를 검사하게 됩니다. 초기화식으로 인해 i 는 n - 1 이므로, 첫번 째 반복에서부터 조건이 거짓이 되어 반복문이 종료됩니다.
for (int i = n - 1; i == 0; i--)
for (int i = n - 1; i >= 0; i--)