문제
다음 C 언어 코드의 실행 결과로 알맞은 것은?
C#include <stdio.h> int main() { int b[5] = {10, 20, 30, 40, 50}; int a = 0; printf("%d", b[(a++) + 2]); return 0; }
① 10 ② 20 ③ 30 ④ 40
정답
3번
해설
정답: 3. a++는 사용 후 증가하는 후위 연산자이므로 인덱스는 0+2=2가 되고, b[2] 값인 30이 출력된다.
오답 풀이
- 1번:
b[0]값이 출력되는 것이 아니다. - 2번:
b[1]값이 출력되는 것이 아니다. - 3번:
b[2]인 30이 정확한 출력 결과이다. - 4번:
b[3]값이 출력되는 것이 아니다.
보충 개념 후위 증가 연산자는 현재 값을 먼저 사용한 다음 변수의 값을 1 증가시킨다.