조건식이란 식의 참거짓 유무에 따라 1(참) 또는 0(거짓) 을 반환하는 코드입니다.
어떤 숫자가 10과 같은가를 표현하는 조건식은 어떻게 짜여질까요? 잠시 코드의 다른 부분은 생략해봅시다.
int num1 = 19;
printf("%d", num1 == 10); // num1이 10일때 참이 되는 조건식
0
같음을 의미하는 ‘==’ 연산자를 사용하면 연산자 양쪽에 있는 두 값이 같은지 비교하는 논리식을 작성할 수 있습니다. 예시에서는 식의 결과인 거짓(0)이 출력되었군요.
‘==’과 같은 연산자를 비교 연산자라고 하며 비교 연산자에는 다음과 같은 종류가 있습니다.
| 연산자 | 의미 |
|---|---|
| == | 같음 |
| != | 같지 않음 |
| > | 큼 |
| < | 작음 |
| >= | 크거나 같음 |
| <= | 작거나 같음 |
참고로 부등식의 작성 순서는 임의로 바꿀 수 없음에 주의하세요. (’=<’ 과 같이 사용하면 안됨)
int num1 = 19;
printf("%d", num1 >= 10); // num1이 10 이상일때 참이 되는 조건식
1
int num1 = 19;
printf("%d", num1 => 10); // 오류 발생
만약 여러가지 조건, 이를테면 ‘그리고’ 나 ‘또는’ 으로 이어지는 논리 관계를 표현하고 싶다면 어떻게 할까요? 이럴떄는 논리 연산자를 사용하면 됩니다.
| 연산자 | 의미 |
|---|---|
| && | AND |
| ! | NOT |
AND 연산자는 양쪽의 조건식이 모두 참이면 참을 반환하는 연산자입니다.
OR 연산자는 양쪽의 조건식중 하나 이상이 참이면 참을 반환하는 연산자입니다.
NOT 연산자는 참과 거짓을 바꾸는 연산자입니다.