정답: 3번 C 언어 프로그램에서 `int a = 4;`와 `int b = 7;`로 변수를 초기화합니다. `int c = a | b;`는 비트 OR 연산을 수행합니다. 먼저, `a`와 `b`의 값을 이진수로 변환합니다. `a = 4`는 이진수로 `0100`입니다. `b = 7`은 이진수로 `0111`입니다. 이제 비트 OR 연산을 수행합니다: ``` 0100 (a = 4) | 0111 (b = 7) ------- 0111 (c) ``` 각 비트 위치에서, 두 비트 중 하나라도 1이면 결과는 1이 됩니다. `0111`을 십진수로 변환하면 `(0 * 2^3) + (1 * 2^2) + (1 * 2^1) + (1 * 2^0) = 0 + 4 + 2 + 1 = 7`이 됩니다. 따라서 `c`의 값은 `7`입니다. `printf("%d", c);`는 `c`의 십진수 값을 출력하므로, 프로그램의 실행 결과는 `7`입니다. 보기 중 `7`은 3번에 해당합니다.