C언어의 기초 문법

조건식

조건을 논하는 "식"

 일단 제목부터 보고 짐작하시는 분들도 있으시겠는데, 네 맞습니다. 조건문은 조건을 줘야 하니까 무슨 조건인지 알려주는 조건식이 필요합니다. 컴퓨터는 조건식이 참일 때는 1, 거짓일 때는 0을 반환합니다. 다른 숫자들도 0만 아니면 참으로 인식합니다. 그러니까 2도 참이고 5도 참이고 100도 참입니다. 0만 아니면 되요. 그럼 조건식의 성질도 알아봤으니 조건식의 종류를 알아볼까요?

 일단 두 변수나 상수를 비교하는 조건식을 알아보겠습니다. 비교 조건식은 다음과 같은 종류가 있습니다.

int a = 1, b = 10

a == b // 0 (false)
a != b // 1 (true)
a > b // 0 (false)
a < b // 1 (true)
a >= b // 0 (false)
a <= b // 1 (true)

a == b 는 'a와 b가 같다'는 조건식입니다. a = b 라고 하면 조건식이 아니라 변수 a의 값을 변수 b의 값으로 바꾼다는 뜻이 됩니다. 조심하세요!

a != b 는 'a와 b가 다르다'는 조건식입니다.

a > b 는 a가 b보다 크다는 뜻이고, a < b 는 a가 b보다 작다는 뜻입니다.

a >= b는 a가 b보다 크거나 같다는 뜻이고, a <= b 는 a가 b보다 작거나 같다는 뜻입니다.


그리고 조건식 2개 이상을 하나로 연결시켜주는 연산자들도 있습니다.

int a = 0, b = 1;

a == b && a <= b // {0, 1} => 0
a == b || a <= b // (0, 1) => 1
!a == b // 0 => 1

조건식 && 조건식 연산자는 'and'를 의미합니다. 조건식 여러 개 중에서 하나라도 거짓이면 0으로 반환하고, 모두 다 참이여야지만 1을 반환합니다.

조건식 || 조건식 연산자는 'or'를 의미하고, 조건식 여러 개 중에서 하나라도 참이면 1로 반환하고, 모두 거짓이여야지만 0을 반환합니다.

!조건식 연산자는 'not'를 의미하고, 만약 조건식이 참이면 거짓으로 바뀌고, 거짓이면 참으로 바뀌는 연산자입니다.


외워야 할게 많네요;;; 외우셔야 합니다 ;;;;;; ㅠ

댓글

댓글 본문
버전 관리
Joel
현재 버전
선택 버전
graphittie 자세히 보기