int i = 0, hap = 0 ;
for( i = 1; i <= 5; ++i, hap +=i)
에서 i를 초기값으로 1로 주고 hap += i 했는데 처음 합은 왜 0이죠?
hap = hap + i
0 = 0 + 1 해서 1인줄알았는데
안녕하세요.
i와 hap은 0을 초기값으로 갖고 시작합니다.
for문에서 i는 1을 갖고 종료값과 비교합니다. i<=5 조건을 만족하므로 반복문 아래 문장을 수행합니다.
printf문에 의해 "합은 1 0입니다."가 출력됩니다.
반복문 아래 문장을 수행한 후 증가값을 처리합니다. 증가값이 2개의 식으로 나열되어 있으므로 하나씩 수행합니다.
++i로 인해 i는 2가 됩니다. hap += i에 의해 hap은 2가 됩니다.
for문의 수행 과정으로 인해
초기값을 갖고 종료값과 비교한 후 조건이 맞으면 반복문을 진입해서 수행한 후 증가값을 처리하므로 교재의 내용과 같이 진행됩니다.
오늘도 즐거운 하루 되세요.
-
*2017-04-18 09:50:19
안녕하세요.
i와 hap은 0을 초기값으로 갖고 시작합니다.
for문에서 i는 1을 갖고 종료값과 비교합니다. i<=5 조건을 만족하므로 반복문 아래 문장을 수행합니다.
printf문에 의해 "합은 1 0입니다."가 출력됩니다.
반복문 아래 문장을 수행한 후 증가값을 처리합니다. 증가값이 2개의 식으로 나열되어 있으므로 하나씩 수행합니다.
++i로 인해 i는 2가 됩니다. hap += i에 의해 hap은 2가 됩니다.
for문의 수행 과정으로 인해
초기값을 갖고 종료값과 비교한 후 조건이 맞으면 반복문을 진입해서 수행한 후 증가값을 처리하므로 교재의 내용과 같이 진행됩니다.
오늘도 즐거운 하루 되세요.