본문 바로가기
프로그래밍/C

[C언어] 논리 연산자 and or not && || !

by 아임코딩 2024. 1. 26.
728x90
반응형

소개

안녕하세요 아임코딩입니다.

이번에는 C언어에서 제공하는 논리 연산자에 대해서 알아보도록 하겠습니다.

 

논리 연산자란?

논리 연산자는 참 혹은 거짓 값을 이용하여 연산을 하는 방법입니다.

 

C언어에서는 참 혹은 거짓 값을 저장할 수 있는 bool 자료형을 제공합니다.

 

이 bool 자료형을 이용하여 논리 연산을 진행할 수 있습니다.

 

 

AND 연산자 &&

AND 연산은 우리나라 말로는 그리고 라는 뜻입니다.

AND 연산은 연산하는 두 피연산자가 모두 참일 때만 결과가 참인 연산입니다.

 

true and true == true

true and false == false

false and true == false

false and false == false

 

And 연산의 4가지 경우를 나타내면 위와 같습니다.

And 연산은 두 값이 모두 참일 때만 결과가 참이 됩니다.

 

C언어에서는 이 And 연산을 && 기호로 사용합니다.

코드를 통해서 이를 확인해보도록 하겠습니다.

 

코드는 아래와 같습니다.

#include<stdio.h>

void main()
{
	bool T = true;
    bool F = false;
    
    printf("%d\n", T && T);
    printf("%d\n", T && F);
    printf("%d\n", F && T);
    printf("%d\n", F && F);
}

 

코드 실행 화면

 

코드와 코드 실행 화면을 확인해보면 

T && T ==  1

T && F == 0

F && T == 0

F && F == 0

으로 결과가 잘 나온 것을 확인할 수 있습니다.

C언어에서는 0은 거짓, 0을 제외한 모든 숫자(1이 대표적)를 참으로 봅니다.

 

OR 연산자 ||

OR 연산은 우리나라 말로는 또는 이라는 뜻입니다.

OR  연산은 연산하는 두 피연산자 중 하나라도 참이면 결과가 참인 연산입니다.

 

true or true == true

true or  false == true

false or  true == true

false or  false == false

 

OR 연산의 4가지 경우를 나타내면 위와 같습니다.

OR 연산은 두 값 중 하나라도 참이면 결과가 참이 됩니다.

 

C언어에서는 이 OR 연산을 || 기호로 사용합니다.

코드를 통해서 이를 확인해보도록 하겠습니다.

 

코드는 아래와 같습니다.

#include<stdio.h>

void main()
{
	bool T = true;
    bool F = false;
    
    printf("%d\n", T || T);
    printf("%d\n", T || F);
    printf("%d\n", F || T);
    printf("%d\n", F || F);
}

 

코드 실행 화면

 

코드와 코드 실행 화면을 확인해보면 

T && T ==  1

T && F == 1

F && T == 1

F && F == 0

으로 결과가 잘 나온 것을 확인할 수 있습니다.

C언어에서는 0은 거짓, 0을 제외한 모든 숫자(1이 대표적)를 참으로 봅니다.

 

NOT 연산자 !

 

NOT 연산은 우리나라 말로는 아니다 라는 뜻입니다.

NOT  연산은 피연산자가 참이면 결과를 거짓으로, 피연산자가 거짓이면 결과를 참으로 반환합니다.

 

not true == false

not false == true

 

NOT 연산의 2가지 경우를 나타내면 다음과 같습니다.

참을 not 연산을 하면 거짓으로, 거짓을 not 연산을 하면 참으로 결과가 나옵니다.

 

C언어에서는 이 NOT 연산을 ! 기호로 사용합니다.

코드를 통해서 이를 확인해보도록 하겠습니다.

 

코드는 아래와 같습니다.

#include<stdio.h>

void main()
{
	bool T = true;
    bool F = false;
    
    printf("%d\n", !T);
    printf("%d\n", !F);
}

 

 

코드와 코드 실행 화면을 확인해보면 

! T ==  0

! F == 1

으로 결과가 잘 나온 것을 확인할 수 있습니다.

C언어에서는 0은 거짓, 0을 제외한 모든 숫자(1이 대표적)를 참으로 봅니다.

728x90
반응형