C언어 초급 - 5장: 연산자와 표현식 (5.3 관계 연산자 (==, !=, >, <, >=, <=))
2025. 2. 23. 16:51ㆍ프로그래밍 언어/C
5.3 관계 연산자 (==, !=, >, <, >=, <=)
관계 연산자(Relational Operators)는 두 값을 비교하여 참(true) 또는 거짓(false)을 반환하는 연산자입니다.
이 연산자는 조건문(if, while, for 등)에서 자주 사용됩니다.
1. 참(true)과 거짓(false)의 개념
1.1 C 언어에서의 참과 거짓
- C 언어에서 참(true)은 0이 아닌 모든 값을 의미합니다.
- 거짓(false)은 0을 의미합니다.
📌 예제
#include <stdio.h>
int main() {
int a = 10, b = 20;
printf("a > b 결과: %d\n", a > b); // 거짓(0)
printf("a < b 결과: %d\n", a < b); // 참(1)
printf("a == 10 결과: %d\n", a == 10); // 참(1)
printf("b != 20 결과: %d\n", b != 20); // 거짓(0)
return 0;
}
출력 결과
a > b 결과: 0
a < b 결과: 1
a == 10 결과: 1
b != 20 결과: 0
📌 설명
- a > b → 10 > 20 → false(0)
- a < b → 10 < 20 → true(1)
- a == 10 → true(1)
- b != 20 → false(0)
2. 관계 연산자의 종류
연산자 | 설명 | 예제 (a = 10, b = 20) | 결과 |
== | 두 값이 같은지 비교 | a == b | 0 (false) |
!= | 두 값이 다른지 비교 | a != b | 1 (true) |
> | 왼쪽 값이 더 큰지 비교 | a > b | 0 (false) |
< | 왼쪽 값이 더 작은지 비교 | a < b | 1 (true) |
>= | 왼쪽 값이 크거나 같은지 비교 | a >= b | 0 (false) |
<= | 왼쪽 값이 작거나 같은지 비교 | a <= b | 1 (true) |
3. 관계 연산자 예제
3.1 기본 관계 연산자 예제
#include <stdio.h>
int main() {
int x = 15, y = 10;
printf("x == y : %d\n", x == y); // 0 (false)
printf("x != y : %d\n", x != y); // 1 (true)
printf("x > y : %d\n", x > y); // 1 (true)
printf("x < y : %d\n", x < y); // 0 (false)
printf("x >= y : %d\n", x >= y); // 1 (true)
printf("x <= y : %d\n", x <= y); // 0 (false)
return 0;
}
출력 결과
x == y : 0
x != y : 1
x > y : 1
x < y : 0
x >= y : 1
x <= y : 0
📌 설명
- x == y → 15 == 10 → false(0)
- x != y → 15 != 10 → true(1)
- x > y → 15 > 10 → true(1)
- x < y → 15 < 10 → false(0)
4. 관계 연산자의 활용
4.1 조건문에서 관계 연산자 사용
관계 연산자는 보통 if 문과 함께 사용하여 조건을 판단하는 데 활용됩니다.
#include <stdio.h>
int main() {
int age;
printf("나이를 입력하세요: ");
scanf("%d", &age);
if (age >= 18) {
printf("성인입니다.\n");
} else {
printf("미성년자입니다.\n");
}
return 0;
}
실행 예시
나이를 입력하세요: 20
성인입니다.
나이를 입력하세요: 15
미성년자입니다.
📌 설명
- if (age >= 18) → age가 18 이상이면 "성인입니다." 출력.
- else → age가 18 미만이면 "미성년자입니다." 출력.
4.2 최대값 구하기
관계 연산자를 사용하여 두 수 중 큰 값을 판별하는 프로그램을 작성할 수 있습니다.
#include <stdio.h>
int main() {
int a, b;
printf("두 개의 정수를 입력하세요: ");
scanf("%d %d", &a, &b);
if (a > b) {
printf("더 큰 값: %d\n", a);
} else {
printf("더 큰 값: %d\n", b);
}
return 0;
}
실행 예시
두 개의 정수를 입력하세요: 10 20
더 큰 값: 20
두 개의 정수를 입력하세요: 50 25
더 큰 값: 50
📌 설명
- if (a > b) → a가 b보다 크면 a 출력.
- 그렇지 않으면 b 출력.
4.3 범위 검사
관계 연산자를 조합하여 변수가 특정 범위에 속하는지 확인할 수 있음.
#include <stdio.h>
int main() {
int score;
printf("점수를 입력하세요: ");
scanf("%d", &score);
if (score >= 0 && score <= 100) {
printf("올바른 점수입니다.\n");
} else {
printf("잘못된 점수입니다.\n");
}
return 0;
}
실행 예시
점수를 입력하세요: 85
올바른 점수입니다.
점수를 입력하세요: 150
잘못된 점수입니다.
📌 설명
- if (score >= 0 && score <= 100) → 점수가 0~100 사이에 있으면 "올바른 점수".
- 그렇지 않으면 "잘못된 점수".
5. 정리
연산자 | 설명 | 예제 | 결과 (x = 10, y = 20) |
== | 두 값이 같은지 비교 | x == y | 0 (false) |
!= | 두 값이 다른지 비교 | x != y | 1 (true) |
> | 왼쪽 값이 더 큰지 비교 | x > y | 0 (false) |
< | 왼쪽 값이 더 작은지 비교 | x < y | 1 (true) |
>= | 왼쪽 값이 크거나 같은지 비교 | x >= y | 0 (false) |
<= | 왼쪽 값이 작거나 같은지 비교 | x <= y | 1 (true) |
📌 관계 연산자의 특징
- 결과는 참(1) 또는 거짓(0).
- 조건문(if, while)에서 자주 사용됨.
- &&(AND), ||(OR)과 함께 사용하면 더 복잡한 조건식 표현 가능.
'프로그래밍 언어 > C' 카테고리의 다른 글
C언어 초급 - 5장: 연산자와 표현식 (5.5 증감 연산자 (++, --)) (0) | 2025.02.23 |
---|---|
C언어 초급 - 5장: 연산자와 표현식 (5.4 논리 연산자 (&&, ||, !)) (0) | 2025.02.23 |
C언어 초급 - 5장: 연산자와 표현식 (5.2 대입 연산자 (=)) (0) | 2025.02.23 |
C언어 초급 - 5장: 연산자와 표현식 (5.1 산술 연산자 (+, -, *, /, %)) (0) | 2025.02.23 |
C언어 초급 - 4장: 입출력 함수 (4.3 putchar()와 puts()) (0) | 2025.02.23 |