모두CBT

아래 C프로그램의 출력 결과는? | [전자기사 필기] 20년 1회차 기출문제 상세 페이지

1[전자기사 필기] 20년 1회차
아래 C프로그램의 출력 결과는?
문제 이미지
1
0
2
2
3
25
4
50
해설

출력은 50 이다.

첫 번째 반복에서 array[i] 는 1 에 2 를 i 번 곱하므로 2i2^i 가 된다. 두 번째 반복은 A 와 array[i] 를 비트 AND 해 0 이 아닐 때, 즉 A 의 i 번째 비트가 1 일 때만 C 에 B 를 i 비트 왼쪽으로 민 값 B⋅2iB \cdot 2^i 를 더한다.

A=5=01012A = 5 = 0101_2 이므로 i=0, i=2 에서만 더한다.
C=10⋅20+10⋅22=10+40=50C = 10 \cdot 2^0 + 10 \cdot 2^2 = 10 + 40 = 50

  • 출력 0 인 보기는 계산값과 다르다.
  • 출력 2 인 보기는 계산값과 다르다.
  • 출력 25 인 보기는 계산값과 다르다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.