-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
While 문의 조건
20.12.22 09:37 작성 조회수 103
0
int i = 1;
while (i <= 10)
{
printf ("hello world %d", ++i);
}
로 작성했을 때, %d 부분이 2 부터 11로 출력되는데 왜 그런 건가요? 조건이 i <= 10 니까 11은 안 나와야 하는 거 아닌가요?
답변을 작성해보세요.
1
Soyoung Jung
2021.02.27
printf 부분에서 ++i 로 써주셨기 때문에 i가 1일 때는 1이 증가한 2로 값이 업데이트된 i가 출력되고 마찬가지로 마지막에 i가 10일 때는 ++i 로 인해 1이 증가한 11이 출력되는 것입니다. 강의의 예제에서는 ++i 가 아닌 i++ 로 써주었기 때문에 i가 10일때는 10으로 출력되고 다음 줄에서야 i 값이 11이 되고 이때는 조건에 해당 안되므로 while문을 탈출합니다.
답변 1