일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 충남 천안
- c#
- 소스 코드
- C++
- 파이썬
- 언제나 휴일
- 표준 라이브러리 함수
- 산책하기 좋은 곳
- 원격 제어 프로그램
- 알고리즘
- c언어
- 동영상 강의
- 유튜브 동영상 강의
- 네트워크 프로그래밍
- Windows Forms
- 클래스 다이어그램
- 캡슐화
- 언제나휴일
- 무료 동영상 강의
- 강의
- 표준 입출력
- 실습
- 프로젝트
- 추천
- 안드로이드 앱 개발
- 졸업 작품 소재
- 졸업 작품
- 동영상
- 소켓 통신
- 실습으로 다지는 c#
Archives
- Today
- Total
프로그래밍 언어 및 기술 [언제나휴일]
비교 연산, 논리 연산의 도움을 받으세요. 본문
안녕하세요. 언제나 휴일에 언휴예요.
이번 강의는 비교 연산입니다.
1. 비교 연산
2. 비교 연산에서 주의할 점
1. 비교 연산
비교 연산은 연산 기호 및 하는 일이 직관적입니다.
기본적인 비교 연산은 어려움이 없다는 것이죠.
#include //표준 입출력 헤더
int main()
{
printf("%d\n", 1 < 2);
printf("%d\n", 1 <= 2);
printf("%d\n", 1 == 2);
printf("%d\n", 1 != 2);
printf("%d\n", 1 > 2);
printf("%d\n", 1 >= 2);
return 0;
}
비교 연산의 연산 결과도 참이면 1, 거짓이면 0입니다.
1
1
0
1
0
0
2. 비교 연산에서 주의할 점
비교 연산을 이용하여 세 가지 이상의 값을 비교할 때는 논리 연산을 이용하세요.
수학에서 2<1<3은 거짓이지만 C언어에서는 참입니다.
C언어에서는 연산을 하나씩 수행합니다.
2<1<3은 2<1을 수행하고 수행 결과값과 3을 비교합니다.
2<1은 거짓이므로 연산 결과는 0입니다.
결국 0<3을 비교하여 전체 연산 결과는 1입니다.
#include //표준 입출력 헤더
int main()
{
printf("%d\n", 2 < 1 < 3);
return 0;
}
실행한 결과는 다음과 같습니다.
1
이처럼 세 가지 이상의 값을 비교할 때 예상하는 결과를 얻지 못할 수 있습니다.
이 때는 논리 연산을 이용하세요.
“A<B<C일 때 A<B 이고 B<C이다.” 명제를 이용하면 문제 없습니다.
#include //표준 입출력 헤더
int main()
{
printf("%d\n", (2 < 1) && (2 < 3) );
return 0;
}
실행 결과는 기대하는 0입니다.
0
언제나휴일 추천 여행 및 산책
'C & C++ > 언제나 C언어' 카테고리의 다른 글
대입 연산의 왼쪽(좌항)에 오는 표현을 l-value라고 불러요. (0) | 2025.01.03 |
---|---|
비트 자리 이동 연산, 쉬프트 연산 (0) | 2025.01.03 |
xor mask를 이용한 암호화, and mask를 이용한 이진수 출력 (0) | 2025.01.03 |
비트 연산 & | ^ ~ (0) | 2025.01.03 |
논리 형식과 논리 연산 (0) | 2025.01.03 |
이럴 때 나머지 연산을 사용하자. 0123401234012… (0) | 2025.01.03 |
산술 연산과 overflow (0) | 2025.01.03 |
실수 형식 표현 범위, FLT_MIN, FLT_MAX, FLT_TRUE_MIN (0) | 2025.01.03 |