<,< =, >, >= , ==, !=
C언어에서 비교 연산은 이항 연산자로 피연산자의 값의 크기를 비교하며 연산 결과는 참일 때 1, 거짓일 때 0이예요.
연산자를 보면 쉽게 알 수 있듯이 < 는 우항이 작은지 비교, <= 우항이 작거나 같은지 비교, > 우항이 큰지 비교, >= 우항이 크거나 같은지 비교, == 서로 같은지 비교, != 다른지 비교하는 연산자예요.
그리고 <=, >=, ==, != 연산자를 사용할 때 중간에 공백은 올 수 없어요.
◈ 비교 연산
#include <stdio.h>
int main()
{
printf("1<2 연산 결과:%d \n", 1<2);
printf("1<=2 연산 결과:%d \n", 1<=2);
printf("1>2 연산 결과:%d \n", 1>2);
printf("1>=2 연산 결과:%d \n", 1>=2);
printf("1==2 연산 결과:%d \n", 1==2);
printf("1!=2 연산 결과:%d \n", 1!=2);
return 0;
}
◈ 실행 결과
1<2 연산 결과:1
1<=2 연산 결과:1
1>2 연산 결과:0
1>=2 연산 결과:0
1==2 연산 결과:0
1!=2 연산 결과:1
비교 연산에서 주의할 점은 2<1<3 처럼 비교 연산하면 결과는 수학과 다를 수 있어요.
C언어에서 2<1<3을 계산할 때는 2<1을 먼저 계산한 후에 1과 비교 연산을 수행해요.
2<1의 연산 결과는 거짓이므로 0 이고, 0(2<1의 연산 결과)<3은 참이므로 연산 결과는 1이예요.
따라서 수학에서 2<1<3 계산을 C언어로 작성할 때는 (2<1)&&(1<3)처럼 논리곱 연산을 사용하세요.
◈ 비교 연산을 사용할 때 주의할 점
#include <stdio.h>
int main()
{
printf("2<1<3 연산 결과: %d \n", 2<1<3);
printf("(2<1) && (1<3) 연산 결과: %d \n", (2<1) && (1<3) );
return 0;
}
◈ 실행 결과
2<1<3 연산 결과: 1
(2<1) && (1<3) 연산 결과: 0
◈ 기본 연습
다음 프로그램의 출력 결과를 예측하고 이유를 설명하시오.
#include <stdio.h>
int main()
{
printf("%d \n", 5<2<4);
printf("%d \n", (5<2)&&(2<4));
return 0;
}
'언어 자료구조 알고리즘 > 디딤돌 C언어' 카테고리의 다른 글
36. 증감 연산자 (0) | 2016.01.01 |
---|---|
35. 대입 연산자 (0) | 2016.01.01 |
34. 쉬프트 연산자 (0) | 2016.01.01 |
33. 비트 연산자 ^를 이용한 암호화 (0) | 2016.01.01 |
32. 비트 연산자 (0) | 2016.01.01 |
30. 논리 연산자 (0) | 2016.01.01 |
[디딤돌 C언어] 29. 산술 연산자 (0) | 2016.01.01 |
[디딤돌 C언어] 28. 정리하기 (표준 입출력 개요) (0) | 2016.01.01 |
[디딤돌 C언어] 27. getchar, gets, gets_s 함수 (0) | 2016.01.01 |
[디딤돌 C언어] 26, scanf, scanf_s 함수 (0) | 2016.01.01 |