책 내용 질문하기
1권 61쪽 1번 문제 질문
도서
2021 시나공 정보처리산업기사 실기
페이지
61
조회수
242
작성일
2021-04-09
작성자
탈퇴*원
첨부파일
문제에서 c값이 --c가 선행되어 299가 되었는데
정답에서는 c값이 300으로 출력된다고 적혀있습니다.
오류인가요?
아니면 조건연산자에서 연산된것은 변수의 값에 영향을 미치지 못하는 것인가요?
답변
2021-04-09 14:23:05
안녕하세요 길벗수험서 운영팀입니다.
연산자가 수행되기 위해서는 해당 위치에 제어가 도달해야 합니다.
if (조건)
식1;
else
식2;
여기에서 어떤 다양한 연산자가 '식2'에 존재하더라도 조건이 항상 참이라면 의미가 없는 것과 마찬가지죠.
삼항(조건) 연산자도 마찬가지 입니다.
result = a<b?b++:--c; 의 경우 a<b가 참이므로 --c가 수행되는 일이 없습니다.
식을 바꿔 표현한다면 이렇게 되죠.
result = b++;
때문에 c는 초기값인 300을 그대로 갖고 있게 됩니다.
행복한 하루되세요 :)
-
관리자2021-04-09 14:23:05
안녕하세요 길벗수험서 운영팀입니다.
연산자가 수행되기 위해서는 해당 위치에 제어가 도달해야 합니다.
if (조건)
식1;
else
식2;
여기에서 어떤 다양한 연산자가 '식2'에 존재하더라도 조건이 항상 참이라면 의미가 없는 것과 마찬가지죠.
삼항(조건) 연산자도 마찬가지 입니다.
result = a<b?b++:--c; 의 경우 a<b가 참이므로 --c가 수행되는 일이 없습니다.
식을 바꿔 표현한다면 이렇게 되죠.
result = b++;
때문에 c는 초기값인 300을 그대로 갖고 있게 됩니다.
행복한 하루되세요 :)