본문 바로가기
???

?? 왜 정답이 1이 아니고 2 인가?

by sj0020 2020. 7. 23.
int main(){
int i = 0;
do{
	i++;
}while(i==1);

printf("%d", i);

return 0;

}

처음에 i++ 로 i 값이 1이 됨. 그리고 while 검사를 한다 i == 1 은 True 니까 while(1) 로써 한번 더 돌게 됨. 그리고 i++; 로 i값은 2가 됨. 그리고 다시 while(i == 1) 검사를 했을때 False(=0) 이 됨. 이는 while(0) 과 동일하므로 while 문에서 탈출하게 됩니다