책 내용 질문하기
정보처리산업기사 실기 1권 34번
도서
2020 시나공 정보처리산업기사 실기 [기본서]
페이지
126
조회수
419
작성일
2021-03-14
작성자
탈퇴*원
첨부파일
해설을 보면 printf() 함수는 '합은5' 까지만 출력되는데 이 부분이 왜 이렇게 되는지 궁금합니다 i가 5일 때, i <= 5를 만족해 hap += i 까지 수행하는데 왜 그 뒤의 printf는 수행하지 않고 넘어가나요?
답변
2021-03-18 10:17:48

안녕하세요.

 

for 문은 i가 5보다 작거나 같은 경우까지만 수행합니다.

i가 5가 될 때는 아래쪽 출력문을 수행하여

 

합은5   14입니다.

 

가 출력된 후

 

i가 6이 된 경우에는

아래쪽 출력문을 수행하지 않고 for문을 빠져나오게 됩니다.

 

그래서 i는 6일 때 hap 20은 출력되지 않습니다.

 

오늘도 즐거운 하루 되세요.

  • 관리자
    2021-03-18 10:17:48

    안녕하세요.

     

    for 문은 i가 5보다 작거나 같은 경우까지만 수행합니다.

    i가 5가 될 때는 아래쪽 출력문을 수행하여

     

    합은5   14입니다.

     

    가 출력된 후

     

    i가 6이 된 경우에는

    아래쪽 출력문을 수행하지 않고 for문을 빠져나오게 됩니다.

     

    그래서 i는 6일 때 hap 20은 출력되지 않습니다.

     

    오늘도 즐거운 하루 되세요.

  • 관리자
    2021-03-19 11:46:29

    안녕하세요.

     

    for문에서 

    i가 1일 때 i<=5 조건을 만족하므로 print문을 수행합니다. → 합은1   0입니다.

     

    ++i에 의해 i는 2가 되고, hap += i에 의해 hap은 2가 됩니다.

    i가 2일 때 i<=5 조건을 만족하므로 print문을 수행합니다. → 합은2   2입니다. 

     

    ++i에 의해 i는 3이 되고, hap += i에 의해 hap은 5가 됩니다.

    i가 3일 때 i<=5 조건을 만족하므로 print문을 수행합니다. → 합은3   5입니다.

     

    ++i에 의해 i는 4가 되고, hap += i에 의해 hap은 9가 됩니다.

    i가 4일 때 i<=5 조건을 만족하므로 print문을 수행합니다. → 합은4   9입니다.

     

    ++i에 의해 i는 5가 되고, hap += i에 의해 hap은 14가 됩니다.

    i가 5일 때 i<=5 조건을 만족하므로 print문을 수행합니다. → 합은5   14입니다.

     

    ++i에 의해 i는 6이 되고, hap += i에 의해 hap은 20이 됩니다.

    i가 6일 때 i<=5 조건을 만족하지 않으므로 print문을 수행하지 않고 for문을 빠져 나와 종료됩니다.

     

    for문은 반복문의 조건이 만족하는 경우에만 아래 실행문 또는 {   } 묶인 여러 실행문을 실행합니다.

    조건을 만족하지 않으면 실행하지 않고 for문을 빠져나오게 됩니다.

     

    오늘도 즐거운 하루 되세요.

     

  • *
    2021-03-18 21:25:15

    답변이 잘 이해되지 않아 재문의드립니다.

    i = 5일 때, i <= 5 조건을 충족하므로

    ++i로 i = 6이 되고, hap 값에 6을 더하고, 프린트 함수까지 작업을 수행해야 한다고 생각했는데, 그렇지 않은 이유가 궁금합니다.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.