Page 92 고등학교 프로그래밍 교과서
P. 92










6 논리 연산자
논리 연산자는 두 개 이상의 값을 비교하여 참이면 1, 거짓이면 0을 나타낸다.


[표Ⅱ- 9] 논리 연산자의 종류
연산자 연산자 설명 비고
&& 두 개의 연산 값이 모두 참일 때만 결과가 참(1)이다. 논리곱(and)
|| 두 개의 연산 값 중 하나 이상이 참일 때 결과가 참(1)이다. 논리합(or)
! 연산 값이 참이면 거짓(0), 거짓이면 참(1)이 된다. 논리 부정(not)




예제 논리 연산자를 사용하여 나타나는 결괏값을 알아보는 프로그램을 작성해 보자.


실행 결과 프로그램


1 0 01 #include
1 0 02 int main( )
0 1 03 {
04 int i = 13, j = 5, temp;
05 printf("%d %d\n", i = = 13 && j = = 5, i = = 13 && j = = 4);
06 printf("%d %d\n", i = = 13 || j = = 4, i = = 12 || j = = 4);
07 temp = i; printf("%d ", !temp);
08 temp = 0; printf("%d", !temp);
09 return 0;
10 }







알아보기 논리 연산자의 단락 효과

논리 연산자의 단락 효과란 전 조건이 거짓이면 후 연산자를 계산하지 않는 것을 말한다. 다음 프로그램을 통해
논리 연산자의 단락 효과를 확인해 보자.


프로그램 논리 연산자의 단락 효과 실행 결과

01 #include 13 5
02 int main( )
03 {
04 int i = 13, j = 5; i<10이 거짓이기 때문에 오른쪽의
05 if (i < 10 && ++j > 3) {} 비교 연산은 실행되지 않음. 따라
06 printf("%d %d\n", i, j); 서 j는 1 증가하지 않음.
07 return 0;
08 }




90 Ⅱ. C 프로그래밍의 기초





(책)2015프로그래밍-교과서3차심의본 본문.indb 90 2017-09-05 오후 4:16:08
   87   88   89   90   91   92   93   94   95   96   97