프로그래밍 언어/C언어

C언어) 7. C언어 연산자 종류(복합, 증감, 논리 등)

luana_eun 2023. 10. 27. 18:00
728x90

프로그래밍을 하는 주요 이유 중 하나는

사람이 계산하기 귀찮고 힘들어서 기계에게 맡기기 위해 하는 이유다.

그래서 컴퓨터에게 계산을 시키기 위해

우리는 각종 수식과 연산자들을 알아야 한다.

1. 기본(산술) 연산자

**추가) %은 나누기가 아닌 나머지 값 연산자.

10을 3으로 나누면 몫이 3, 나머지가 1.

10 / 3 = 3

10 % 3 =1

같은 나누기 관련 연산자지만, 출력값이 다르다.

2. 비교(관계) 연산자

왼쪽과 오른쪽을 서로 비교하여 참이면 1, 거짓이면 0을 출력한다.

3. 복합 대입 연산자

산술연산자와 대입연산자(=)를 합져서 줄여쓴 것.

프로그래밍을 보기에 간편해야 하기에 줄여서 많이 사용한다.

**C언어에서" ="은 같다의 표시가 아닌, 대입연산자.

따라서 같다의 표시는 "=="으로 힌다.

예) 10 == 10

4. 논리 연산자

비교 연산자를 2개 이상 사용할때 사용하는 연산자.

&&: and(그리고)연산자. 양쪽 둘다 참일때 1을 출력하고,

둘 중 하나라도 거짓이면 0을 출력.

 

||: or(또는)연산자. 둘 중 하나라고 참이면 1을 출력하고,

둘다 거짓이면 0을 출력.

 

(** || 는 키보드의 [\키+shift키]를 동시에!)

 

 

!: not(부정)연산자. 반대로 출력.

참일 경우 0을 출력, 거짓이면 1을 출력.

"a > b" 는 10 > 5이므로 참이고

"a < b"는 10> 5이므로 거짓이다.

&&에서 둘다 참이 아니었으므로 0이 출력되었고

||에서 둘 중 하나가 참이었으므로 1이 출력되었고

!에서 참인데 반대로 돌려서 0이 출력되었다.

5. 증감 연산자

1씩 증가하거나 1씩 감소하는 연산자.

전위증감: 해당 라인에서 1증가합니다. ex)++a

후위증감: 다음라인에서 1증가합니다. ex)a++

일단 아래 예제를 보면

a와 b의 초기 값은 둘 다 5이다.

a는 ++a로 전위 증감을 했기에 해당라인에서 바로 +1을 하고 => 5+1 = 6

b는 b++로 후위 증감을 했기때문에 다음라인에서 +1을 하여 6이된다.

6. 연산자 우선순위

연산자가 한줄에 여러개 있으면 컴퓨터는 어떤것부터 처리할까?

[ ] ( )괄호 -> 증감연산자 -> 산술연산자 -> 비교연산자 -> 논리연산자 -> 복합연산자

연산자는 앞으로 C언어뿐 아니라 프로그래밍에서 완전 기초이기에

실습을 통해 확실히 익혀둬야한다.

 
728x90