az45687   2년 전

출력값 i에 관한 질문인데 예를 들어 a의 값이 20이라면 b = 7, 19, 37로 for문안에서는 i = 3까지만 증가되는걸 printf로 확인했습니다.  그런데 for문을 탈출하면 i = 4가 되는데 왜 그런지 알 수 있을까요?.. i = 0일때도 i = 3까지여야 조건이 맞는데 똑같이 i = 4라고 출력되네요 for 문 안에 int b = 1이라고 초기화가 되어 있다면 i = 4가 맞는데 for문 밖에 선언이 되어있어서 b값은 계속 증가할텐데ㅠ 왜 i가 4로 출력되는지 이해가 되지 않아요ㅠㅠ 

topgun0209   2년 전

for (초기식 ; 조건 ; 증감식) 의 실행순서는 초기식을 최초 실행한 후

[조건->본문->증감식]을 계속 실행하는 순서입니다.

a의 값이 20일 경우, i=1로 초기화되고

20>1 -> b+=6(7) -> i++(2)

20>7 -> b+=12(19) -> i++(3)

20>19 -> b+=18(37) -> i++(4)

20<37 -> 조건 불만족으로 반복문 탈출

의 순서로 실행되기 때문에, i엔 4가 저장되는게 맞습니다

az45687   2년 전

아 감사합니다!! 덕분에 바로 이해했습니다 ㅎㅎ

댓글을 작성하려면 로그인해야 합니다.