책 내용 질문하기
정보처리기사 2018년 3회대비 모의고사 문제 5번 추가질문
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
조회수
96
작성일
2018-10-05
작성자
탈퇴*원
첨부파일
디버깅 결과 i= 13까지 적혀있던데 원래라면 i<=b 까지에서 b가 12고 I는 12까지만 디버깅되야하는게 맞나요? 디버깅 결과 i=13까지 적혀있는건 어떤의미인지 잘모르겠습니다
답변
2018-10-05 13:49:23

안녕하세요. 길벗 수험서 운영팀입니다.

for문의 특징 때문에 그렇습니다.

for(i=0; i<5; i++)

printf("abc");

위와 같은 for문이 존재할 때, 화면에 "abc"는 i가 0~4까지 총 5회 출력되게 됩니다.

마지막 회전에서 i는 4가 되겠지요.

이때 i는 한번 더 증가값을 갖게 됩니다. (i = 5)

그리고 i<5 조건을 비교하여 '거짓'임이 밝혀지면 아래 printf("abc");를 수행하지 않고 벗어나게 되죠.

즉, 위의 for문이 종료한 뒤 printf("%d", i); 를 수행하게 되면 i는 4가 아닌 5가 찍히게 되는 것입니다.

행복한 하루되세요.^^

  • *
    2018-10-05 13:49:23

    안녕하세요. 길벗 수험서 운영팀입니다.

    for문의 특징 때문에 그렇습니다.

    for(i=0; i<5; i++)

    printf("abc");

    위와 같은 for문이 존재할 때, 화면에 "abc"는 i가 0~4까지 총 5회 출력되게 됩니다.

    마지막 회전에서 i는 4가 되겠지요.

    이때 i는 한번 더 증가값을 갖게 됩니다. (i = 5)

    그리고 i<5 조건을 비교하여 '거짓'임이 밝혀지면 아래 printf("abc");를 수행하지 않고 벗어나게 되죠.

    즉, 위의 for문이 종료한 뒤 printf("%d", i); 를 수행하게 되면 i는 4가 아닌 5가 찍히게 되는 것입니다.

    행복한 하루되세요.^^

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