=, +=, -=, *=, /=, %= 등
대입 연산은 변수의 값을 설정할 때 사용하는 연산이죠.
이러한 이유로 대입 연산의 좌항에는 상수 표현은 올 수 없으며 l- value라 불러요.
대입 연산자에는 우항의 값을 좌항에 대입하는 단순 대입 연산과 좌항과 우항의 값을 더하거나 빼는 등의 연산을 수행한 후에 좌항에 대입하는 복합 대입 연산도 있어요.
◈ 복합 대입 연산 예
#include <stdio.h>
int main()
{
int i = 2;
i += 4; // i = i + 4; 와 같은 표현
printf("i: %d \n",i);
return 0;
}
실행 결과
i: 6
주의할 점은 대입 연산은 모든 연산 중에 우선 순위가 가장 낮다는 것이예요.
예를 들어 i = j == 3; 구문은 j의 값이 3이면 i에 1을 대입하고 3 이외의 값이면 0을 대입하는 구문이예요.
하나의 구문에 두 개 이상의 연산을 수행할 때는 ( )괄호 연산자를 이용하여 먼저 수행할 연산을 명확하게 표현하세요.
◈ 대입 연산자의 우선 순위를 확인하는 예
#include <stdio.h>
int main()
{
int i = 0, j = 0;
j=0;
i = j != 3;
printf("%d\n",i);
j = 1;
i = j != 3;
printf("%d\n",i);
j = 2;
i = j != 3;
printf("%d\n",i);
return 0;
}
실행 결과
1
1
1
◈ 기본 연습
1. 다음 프로그램의 출력 결과를 예측하시오.
#include <stdio.h>
int main()
{
int i = 8;
i *= 4;
printf("%d \n", i);
return 0;
}
2. 다음 프로그램의 출력 결과를 예측하시오.
#include <stdio.h>
int main()
{
int i = 8;
int j = 0;
j = i == 8;
printf("%d %d\n", i, j);
return 0;
}
3. 다음 프로그램에서 잘못된 부분을 찾고 이유를 설명하시오.
#include <stdio.h>
int main()
{
int i = 8;
i + 2 = 9;
printf("%d \n", i);
return 0;
}
'언어 자료구조 알고리즘 > 디딤돌 C언어' 카테고리의 다른 글
40. 선택문 (switch case) (0) | 2016.01.01 |
---|---|
39. 조건문 (if, else) (0) | 2016.01.01 |
38. 정리하기 (0) | 2016.01.01 |
37. 기타 연산자 (0) | 2016.01.01 |
36. 증감 연산자 (0) | 2016.01.01 |
34. 쉬프트 연산자 (0) | 2016.01.01 |
33. 비트 연산자 ^를 이용한 암호화 (0) | 2016.01.01 |
32. 비트 연산자 (0) | 2016.01.01 |
31. 비교 연산자 (0) | 2016.01.01 |
30. 논리 연산자 (0) | 2016.01.01 |