• 2. C - 연산자

    2021. 3. 25.

    by. 공상개발

    안녕하세요.

    공상 개발입니다.

     

    이번 시간에는 값을 계산하거나 비교하는 데 사용하는 연산자에 대해 알아보도록 하겠습니다.


     

    1. 연산자


    2. 연산자를 활용한 구현

    - 관계 연산 구현

    - 논리 연산 구현

    - 삼항 연산 구현
                         
                             -pow()를 이용한 거듭제곱 연산 구현

     


     

    # 연산자

     

    연산자는 하나의 기호체계입니다. 흔히 a + b에서 a와 b는 피연산자, +는 연산자라고 합니다.

    프로그래밍에서 연산자란 가장 기초적인 부분입니다.

     

    아래의 표를 보며 연산자를 정확히 숙지하시길 권장합니다.

     

    구분 연산자 ex
    대입 연산자 = a = 2
    산술 연산자 +, -, *, /, &, ++, -- a = 3 + 2
    관계 연산자 <, >, <=, >=, ==, != a > b
    논리 연산자 &&, ||, ! (a > b) && (b==1)
    할당 연산자 +=, -=, *=, /=, %= 등 (a+=b) == (a=a+b)
    삼항 연산자 조건 ? 참 : 거짓 c = (a > b)? a : b
    비트 연산자 &, |, ~, ^, <<, >> AND, OR, NOT, XOR 연산 및 시프트 연산

     

    추가 설명

     

    # 논리 연산자

    연산자 논리 기능
    && AND 양쪽이 모두 참이면 참
    || OR 양쪽 중 하나 이상이 참이면 참
    ! NOR 참이면 거짓, 거짓이면 참

     

    # 할당 연산자

    a*=b는 a=a*b와 같다.

    a%=c는 a=a%c와 같다.

     

    # 삼항 연산자

    3개의 항을 가지는 '삼항 연산자', 조건이 참이면 왼쪽 값을 거짓이면 오른쪽 값을 반환


    조건 ? : 참 : 거짓


    int a=1, b=2, c=0; 

    c=(a>b) ? 10 : 30; //c=30

    c= a? a:b; // c=1

     

    # 비트 연산자

    연산자 기능
    & 비트 단위 AND 연산
    | 비트 단위 OR 연산
    ~ 비트 단위 NOR 연산
    ^ 비트 단위 XOR 연산
    << 왼쪽으로 비트 이동
    >> 오른쪽으로 비트 이동

     


    a=1010, b=1001


    c = a & b; // c =1000

    c = a | b; // c =1011

    c = ~a; // c = 0101

    c = a ^ b; // c= 0011 


    a= 0011 1010


    c = a<<1; // c = 0111 0100

    c = a<<2; // c = 1110 1000

    c = a>>1; // c = 0001 1101

    c = a>>2; // c = 0000 1110

     


     

    # 연산자를 활용한 구현

     

    간단한 실습 코드입니다. 

     

    관계 연산 구현

     

    논리 연산 구현

     

    삼항 연산 구현

     

    pow()를 이용한 거듭제곱 연산 구현



     

     

    작성된 내용 중 잘못된 정보나 접근이 있을 시, www.instagram.com/hong_.98/을 통해 말씀해 주시기 바랍니다.

    좋은 하루 보내세요.

    'Language > C 튜터링' 카테고리의 다른 글

    5. C - 함수_Rev.1  (0) 2021.05.06
    4. C - 반복문, 조건문 활용 문제  (0) 2021.04.09
    3. C - 조건문 & 반복문  (0) 2021.03.31
    1. C 언어 - 변수와 자료형  (0) 2021.03.22
    C언어 업로드 계획 (1~10주)  (0) 2021.03.21

    댓글