강의

멘토링

커뮤니티

Inflearn Community Q&A

thdgjswn14471's profile image
thdgjswn14471

asked

(2026) Pass the Information Processing Engineer Practical Exam in Just One Week

C Language Compound Assignment Operators (+=, -=, /=, *=, %=, ^=)

C언어 연산 후 할당 방법 (+=, -=, /=, *=, %=, ^=) 강의 예제 6번

Resolved

Written on

·

151

0

  • C언어 연산 후 할당 방법 (+=, -=, /=, *=, %=, ^=) 예제 6번 printf 구문라인이 이해가 잘안됩니다 풀어서 알려주실 수 있을까요?

pythonjavac정보처리기사

Answer 1

1

weekendcode님의 프로필 이미지
weekendcode
Instructor

#include <stdio.h>

int main() {
    int g = 12; // 12는 1100 (2진수)
    g ^= 5; // 5는 0101 (2진수), g = g ^ 5와 동일
    printf("g ^= 5의 결과: %d\n", g); // 출력: g ^= 5의 결과: 9 (1001)
    return 0;
}

 

^는 XOR 연산이었습니다. 기억하시죠?

 

변수 산술연산자 = 숫자는

변수 = 변수 산술연산자 숫자
이렇게 읽으시면 됩니다.

ex) var += 5
---> var = var + 5

그냥 자기 자신이 있던 값을 꺼내와서 오른쪽의 숫자와 연산하고 그대로 자기 자신에게 넣는 것입니다.

XOR은 영상에서 다뤘으니 풀이 순서대로 작성해드리겠습니다. 직접 풀어보시기를 권장드립니다.

 

g = g ^ 5

  1. g에 있는 것을 2진수화 한다. (여기서는 12)

  2. 5를 2진수화 한다.

  3. 서로 다른 경우에만 1을 작성하고, 그렇지 않으면 0으로 작성한다.

  4. 그대로 나온 이진수를 10진수로 변환한다

  5. g에 대입하여 아래에서 정수형태로 출력한다.

thdgjswn14471's profile image
thdgjswn14471

asked

Ask a question