Presentation is loading. Please wait.

Presentation is loading. Please wait.

박성진 paksj@kangwon.ac.kr 컴퓨터 프로그래밍 기초 [04] 연산자 박성진 paksj@kangwon.ac.kr.

Similar presentations


Presentation on theme: "박성진 paksj@kangwon.ac.kr 컴퓨터 프로그래밍 기초 [04] 연산자 박성진 paksj@kangwon.ac.kr."— Presentation transcript:

1 박성진 paksj@kangwon.ac.kr
컴퓨터 프로그래밍 기초 [04] 연산자 박성진

2 수식 피연산자와 연산자로 구성된 식 피연산자 : 변수와 상수 연산자 : 곱셈, 나눗셈, 덧셈…
DBLab Template by Suan

3 연산자의 분류 연산자의 분류 연산자 의미 대입 = 오른쪽을 왼쪽에 대입 산술 + - * / % 사칙연산과 나머지 연산 부호
증감 ++ -- 증가, 감소 연산 관계 > < == != >= <= 오른쪽과 왼쪽을 비교 논리  && || ! 논리적인 AND, OR 조건 ? 조건에 따라 선택 콤마 , 피연산자들을 순차적으로 실행 비트 단위 연산자 & | ^ ~ << >> 비트별 AND, OR, XOR, 이동, 반전 sizeof 연산자 sizeof 자료형이나 변수의 크기를 바이트 단위로 반환 형변환 (type) 변수나 상수의 자료형을 변환 포인터 연산자 * & [] 주소계산, 포인터가 가리키는 곳의 내용 추출 구조체 연산자 .  -> 구조체의 멤버 참조 DBLab Template by Suan

4 피연산자수에 따른 연산자 분류 단항연산자: 피연산자의 수가 1개 이항연산자: 피연산자의 수가 2개
x++; --y; 이항연산자: 피연산자의 수가 2개 x + y; x – y; 삼항연산자: 피연산자의 수가 3개 x ? y : z; // conditional operator OR ternary operator DBLab Template by Suan

5 산술 연산자 x + y x – y x * y x / y x % y 가장 기본적인 연산 연산자 기호 의미 덧셈 x와 y를 더한다
뺄셈 x – y x에서 y를 뺀다. 곱셈 x * y x와 y를 곱한다. 나눗셈 x / y x를 y로 나눈다. 나머지 x % y x를 y로 나눌 때의 나머지값 DBLab Template by Suan

6 부호 연산자 변수나 상수의 부호를 변경 int x = -10; y = -x; // 변수 y의 값은 10이 된다.
단항연산자에 해당 DBLab Template by Suan

7 증감 연산자 변수의 값을 하나 증가시키거나 감소시키는 연산자 ++x x++ --x x-- 증감 연산자 의미
DBLab Template by Suan

8 예제1 DBLab Template by Suan

9 예제1 DBLab Template by Suan

10 대입 연산자 왼쪽에 있는 변수에 오른쪽의 수식의 값을 계산하여 대입 DBLab Template by Suan

11 대입 연산자 왼쪽에 있는 변수에 오른쪽의 수식의 값을 계산하여 대입 DBLab Template by Suan

12 복합 대입 연산자 복합 대입 연산자란 +=처럼 대입연산자 = 와 산술연산자를 합쳐 놓은 연산자 ex) x += y 는 x = x + y와 의미!! 복합 대입 연산자 의미 x += y x = x + y x -= y x = x - y x *= y x = x * y x /= y x = x / y x %= y x = x % y x &= y x = x & y x |= y x = x | y x ^= y x = x ^ y x >>= y x = x >> y x <<= y x = x << y DBLab Template by Suan

13 복합 대입 연산자 DBLab Template by Suan

14 복합 대입 연산자 DBLab Template by Suan

15 관계 연산자 두개의 피연산자를 비교하는 연산자 결과 값이 0 인 경우 [거짓], 0 이외의 값은 [참] (일반적으로 1)
의미 x == y x와 y가 같은가? x != y x와 y가 다른가? x > y x가 y보다 큰가? x < y x가 y보다 작은가? x >= y x가 y보다 크거나 같은가? x <= y x가 y보다 작거나 같은가? DBLab Template by Suan

16 논리 연산자 여러 개의 조건을 조합하여 참과 거짓을 따지는 연산자 연산자 의미 X && y
AND 연산, x와 y가 모두 참이면 [참], 그렇지 않으면 [거짓] X || y OR 연산, x나 y중에서 하나만 참이면 [참], 모두 거짓이면 [거짓] !x NOT 연산, x가 참이면 [거짓], x가 거짓이면 [참] DBLab Template by Suan

17 조건 연산자 C에서 유일하게 3개의 피연산자를 가지는 삼항 연산자 절댓값, 최댓값, 최솟값
DBLab Template by Suan

18 예제2 DBLab Template by Suan

19 예제2 DBLab Template by Suan

20 비트(bit) 연산자 각 숫자를 비트별로 연산하는 연산자 연산자 연산자의 의미 설명 & 비트 AND
두개의 피연산자의 해당 비트가 모두 1이면 1, 아니면 0 | 비트 OR 두개의 피연산자의 해당 비트중 하나만 1이면 1 ^ 비트 XOR 두개의 피연산자의 해당 비트의 값이 같으면 0, 아니면 1 << 왼쪽으로 이동 지정된 개수만큼 모든 비트를 왼쪽으로 이동한다. >> 오른쪽으로 이동 지정된 개수만큼 모든 비트를 오른쪽으로 이동한다. ~ 비트 NOT 0은 1로 만들고 1은 0로 만든다. 예를 들어 RGB 구성 요소의 픽셀 값을 계산해야하는 그래픽 코드를 작성하는 경우입니다. 또 다른 유형의 상황은 장치 드라이버를 작성하고 I / O 레지스터의 개별 비트 또는 비트 필드를 읽거나 쓸 필요가있을 때입니다. 또 다른 예는 CPU 에뮬레이터를 작성하고 opcode에서 다양한 비트 필드를 읽어야하는 경우입니다. 또 다른 예는 비트를 바이트로 묶는 데이터 압축 코드 나 MPEG 스트림을 읽고 코드를 디코딩하는 코드를 작성하는 경우입니다. DBLab Template by Suan

21 연산자의 우선순위 우선 순위 연산자 결합 규칙 1 () [] -> . ++(후위) --(후위) ->(좌에서 우) 2
sizeof &(주소) ++(전위) --(전위) ~ ! *(역참조) +(부호) -(부호), 형변환 <-(우에서 좌) 3 *(곱셈) / % 4 +(덧셈) -(뺄셈) 5 << >> 6 < <= >= > 7 == != 8 &(비트연산) 9 ^ 10 | 11 && 12 || 13 ?(삼항) 14 = += *= /= %= &= ^= |= <<= >>= 15 ,(콤마) DBLab Template by Suan

22 결합 규칙 (결합 순위가 같을 경우…) * 산술 연산자의 경우에는 왼쪽에서 오른 쪽으로 연산이 수행된다.
대입 연산자는 오른쪽 연산을 먼저 수행 한다. 2 * 5 % 3 x = y = z = 5 10 % 3 x = y = 5 x = 5 1 5 DBLab Template by Suan

23 예제3 DBLab Template by Suan

24 예제3 DBLab Template by Suan

25 실습 화씨 온도를 섭씨로 바꾸기 DBLab Template by Suan


Download ppt "박성진 paksj@kangwon.ac.kr 컴퓨터 프로그래밍 기초 [04] 연산자 박성진 paksj@kangwon.ac.kr."

Similar presentations


Ads by Google