1 / 54

C Programming Seminar

C Programming Seminar. 여러 가지 연산자. 연산자 (Operator) 의 의미 계산 ( 연산 ) 할 때 사용하는 기호를 뜻한다 . 좀 더 구체적으로 말하면 연산자는 연산 즉 , 계산을 할 때 사용하는 기호를 말하는 것으로 우리가 일상에서 사용하 는 사칙연산과 논리 연산자 , 비트연산자 등이 있다. 여러 가지 연산자. 산술 연산자 +, -, *, /,% 산술 연산자 (arithmetic Operator) 는 산술식에 사용하는 연산자로 일반적인 수학공식에서 사용하는 사칙연산자와

schuyler
Download Presentation

C Programming Seminar

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. C Programming Seminar 여러 가지 연산자

  2. 연산자(Operator)의 의미 계산(연산)할 때 사용하는 기호를 뜻한다. 좀 더 구체적으로 말하면 연산자는 연산 즉, 계산을 할 때 사용하는 기호를 말하는 것으로 우리가 일상에서 사용하 는 사칙연산과 논리 연산자, 비트연산자 등이 있다. 여러 가지 연산자

  3. 산술 연산자 +, -, *, /,% 산술 연산자(arithmetic Operator)는 산술식에 사용하는 연산자로 일반적인 수학공식에서 사용하는 사칙연산자와 기능이 같다. 산술 연산자는 정수형이나 실수형 등의 숫자를 계산할 때 사용하지만 문자형 등을 계산할 때도 자주 사용한다. 또한, 사칙연산 외의 연산자로 나머지 연산자(%)가 있다. 나머지 연산자는 float, double에서는 사용하지 않는다. 여러 가지 연산자

  4. 여러 가지 연산자

  5. 여러 가지 연산자

  6. 대입 연산자 =, +=, -=, *=, /=, %= 대입 연산자(assignment operator)는 오른쪽 피연산자의 내용을 연산자 왼쪽의 피연산자에 대입시키는 연산자이다. 대입은 다른 말로 치환이라고 한다. 주로 왼쪽의 피연산자 는 각종 변수나, 배열 요소, 구조체 멤버, 포인터의 대상체 등이 된다. 여러 가지 연산자

  7. 대입 연산자 여러 가지 연산자

  8. a=b=c=1; a=(b=(c=1)+2)+3); a=b=c=d=5; c=(b=(a=5)+4)+3; 대입 연산자 =, +=, -=, *=, /=, %= 대입 연산자는 다중 대입이 가능하다. 여러 가지 연산자

  9. 대입 연산자의 특징 ① 연산자 오른쪽의 값을 연산자 왼쪽에 대입시키는 연산 자이다. ② 왼쪽의 피연산자는 대입이 가능한 변수 계열이어야 한 다. 이를 좌변 값(left value)이라고 부른다. ③ 오른쪽의 피연산자는 어떤 수식이라도 사용 가능하다 ④ 결합 방향은 오른쪽에서 왼쪽이다. ⑤ 연산 순위가 낮은 편이다. ⑥ 다중 대입이 가능하다. 여러 가지 연산자

  10. 여러 가지 연산자

  11. 여러 가지 연산자

  12. 부호 연산자 +, - 부호 연산자는 수치형 자료의 부호를 바꿀 때 사용하는 연 산자이다. 사실 부호 연산자는 연산자라고 말하기 어려운 연산자이다. ‘+’ 기호를 붙이면 양수가 되고, ‘-’ 기호를 붙 이면 음수가 된다는 사실은 누구나 아는 사실이기 때문이 다. 여러 가지 연산자

  13. 부호 연산자의 특징 ① 피연산자는산술형 자료나 수식이어야 한다. ② 결합 방향은 오른쪽에서 왼쪽이다. 여러 가지 연산자

  14. 여러 가지 연산자

  15. 여러 가지 연산자

  16. 증감 연산자 ++, -- 증감 연산자는 피연산자의 값을 하나씩, 즉 1씩 증가시키 거나 감소시키는 일을 한다. 여러 가지 연산자

  17. Question 그러면 증감 연산자가 없어도 프로그램을 만드는데 어려 움이 없는 것은 아닐까? Number=Number+1이라고 쓰면 되는 것을 왜 증감 연산자를 만들어 Number++이라고 표 기하는 것일까? 여러 가지 연산자

  18. 1. 프로그램을 이해하기 쉽기 때문이다. - Number++ 라고 쓰는 것이 Number=Number+1이라 고 쓰는것보다 보기에 편하고 이해하기 편하다. 2. 연산 속도가 빠르기 때문이다. - 증감 연산자의 효율성이 기계어 명령에 가깝기 때문이다. 즉 Number++는 변수 Number의 번지에 대입된 값을 1만 증가시키면 된다. 하지만 Number=Number+1은 수식이기 때문에 효율적인 설계가 불가능하다. Number의 번지에 대입된 값에 1을 더하는 더하기 연산을 수행한 후에 이 결 과를 대입 연산자를 통해 대입하는 연산을 해야 하기 때문 이다. 여러 가지 연산자

  19. 증감 연산자의 또 다른 특징을 보면 피연산자의 왼쪽에 붙 느냐 오른쪽에 붙느냐에 따라서 전위형(prefix type)이냐 후위형(postfix type)이냐로 구분하며 유형에 따라 연산 결 과가 달라진다. 여러 가지 연산자

  20. 증감 연산자의 특징 ① 피연산자는 변수와 같은 산술형 자료이어야 하며 수식 은 사용할 수 없다. ② 전위형과후위형이 있으며 전위형, 후위형의 사용 여부 에 따라 연산 결과가 달라진다. ③ 결합 방향은 오른쪽에서 왼쪽이다. 여러 가지 연산자

  21. 여러 가지 연산자

  22. 여러 가지 연산자

  23. 관계 연산자 <, <=, >, >=, ==, != 관계 연산자(relational operator)는 왼쪽의 피연산자와 오 른쪽의피연산자의 순위나 크기를 비교할 때 사용한다. <, <=, >, >=, ==, != 등이 사용되는데, 이 중에서도 ==과 !=는 상등(equality)연산자라고 따로 부른다. 여러 가지 연산자

  24. 관계 연산자 여러 가지 연산자

  25. 관계연산자의 특징 ① 피연산자는 변수와 같은 산술형 자료나 수식이다. ② 연산 결과는 0 또는 1의 정수형이다. ③ 피연산자의자료형을 일치시켜야 정확한 결과를 얻는 다. ④ 결합 방향은 오른쪽이다. 여러 가지 연산자

  26. 여러 가지 연산자

  27. 여러 가지 연산자

  28. 논리 연산자 &&, ||, !, ^ 논리 연산자(logical poerator)는 논리식을 이용해서 프로 그램 코드를 작성할 때 많이 사용한다. 예를 들어서 ‘성이 김씨이고, 주소가 서울에 사는 사람’ 을 찾아야 할 경우, 먼저 성이 김씨인 사람을 찾고 또한 서울에 사는 사람을 찾아서 두 조건을 만족할 경우에만 이를 화면에 출력해야 한다. 이때 ’~이고’ 에 해당하는 것이 논리 연산자이다. 여러 가지 연산자

  29. 논리 연산자 여러 가지 연산자

  30. 논리 연산자의 특징 ① 피연산자는 논리식이나 관계식 등의 수식이다. ② 논리식의 결과는 참일 때는 1, 거짓일 때는 0을 돌려준다. ③ 결합 방향은 오른쪽이다. A&&B 조건 A와 B모두 만족 A||B 조건 A,중 어느 한쪽을 만족 !A 조건 A가 아니다 여러 가지 연산자

  31. 여러 가지 연산자

  32. 여러 가지 연산자

  33. 조건 연산자 ?: 조건 연산자(Conditional operator)는 독특하게 피연산자 를3개씩 취하는 삼항 연산자이다. 피연산자는 임의의 산 술형 데이터나 수식이 허용되지만, 통상 첫 번째 매개변수 는 논리식5을 이용하고, 두 번째와 세 번째 매개변수는 동 일한 자료형을 사용한다. 만약 동일한 자료형이 아니라면 동일한 자료형으로 변환시켜서 해주어야 한다. 여러 가지 연산자

  34. (Logic)?Value1:Value2; 조건 연산자는 왼쪽의 논리식을 평가해서 참이면 두 번째 피연산자 즉, 두 번째 매개변수를 선택하고, 거짓이면 세 번째의 피연산자를 선택한다는 연산자이다. 조건연산자의 형식 여러 가지 연산자

  35. 조건 연산자의 특징 ① 삼항 연산자이다. ② 연산자로는 수식이나 산술형 자료를 사용할 수 있지만, 보통 첫 번째 피연산자는 논리식이며, 두 번째와 세 번째 피연산 자는 수식이나 산술 자료이다. ③ 첫 번째 피연산자가 수식일 경우에는 읽기 쉽도록 괄호로 묶 어주는 것이 좋다. ④ 두 번째와 세 번째 피연산자의자료형은 같은 것이어야 한다. ⑤ 논리식이 참이면 두 번째 피연산자를 선택하고, 논리식이 거 짓이면 세 번째 피연산자를 선택한다. ⑥ 중복 사용이 가능하다. ⑦ 결합 방향은 왼쪽이다. 여러 가지 연산자

  36. 여러 가지 연산자

  37. 여러 가지 연산자

  38. 비트 연산자 ~, &, |, ^ 비트 연산자는 이진수, 즉 비트 단위로 연산을 하는 독특한 연 산자이다. 때문에 일반적인 자료를 다룰 때는 별로 사용하지 않 는다. 그러나 게임을 제작하거나 글꼴을 제작하는 편집기 프로 그램 등을 만들 때는 비트 연산자를 많이 사용한다. 비트 연산자의 성격은 논리 연산자와 같다. 차이점이라면 논리 연산자는 수식이나 자료형을 사용하는 반면 비트 연산자는 비 트 단위로 동작한다는 점이 다르다. 비트 연산자는 전문 프로그 래머가 아니면 거의 사용할 필요가 없는 연산자이다. 여러 가지 연산자

  39. 비트 연산자 여러 가지 연산자

  40. 비트 연산자의 특징 ① ~는 단항 연산자이고, 나머지는 이항 연산자이다. ② 피연산자로는 문자형이나 정수형 자료를 사용한다. ③ 결합 방향은 ~만 왼쪽이고 나머지는 오른쪽이다. 여러 가지 연산자

  41. 시프트 연산자 <<, >> 시프트 연산자(shift operator)는 주어진 자료의 비트 순서를 좌 우로 밀어내는 기능을 수행한다. 따라서 시프트 연산자를 사용 할 때에는 주의를 요한다. 잘못하다가는 음수가 양수로 바뀌어 결과 값에 치명적인 영향을 줄 수 있기 때문이다. 또한 시프트 연산자의 특징으로는 산술연산 중에 곱셈과 나눗 셈의 연산에 사용된다는 것이다. 왼쪽으로 시프트하는 연산은 자릿수가 올라가기 때문에 곱셈이 되고, 오른쪽으로 시프트하 는 연산은 자릿수를 내리기 때문에 더 작아지는 나눗셈의 연산 이 되는 것이다. 여러 가지 연산자

  42. 시프트 연산자 여러 가지 연산자

  43. 128 64 32 16 8 4 2 1 버린다 채운다 128 64 32 16 8 4 2 1 버린다 여러 가지 연산자 채운다

  44. 시프트 연산자의 특징 ① 피연산자로는 문자형이나 정수형 자료를 사용한다. ② 결합 방향은 오른쪽이다. ③ 비트 단위로 밀어내기를 한다. ④ << 연산자는 오른쪽의 빈자리를 0으로 채우며, 왼쪽으 로 밀려나는 비트는 무시한다. ⑤ >> 연산자는 왼쪽의 빈자리를 부호 비트로 채우며, 오 른쪽으로 밀려나는 비트는 무시한다. 여러 가지 연산자

  45. 여러 가지 연산자

  46. 여러 가지 연산자

  47. (자료형 이름) 캐스트 연산자() 캐스트 연산자는 자료형을 바꾸는 연산자이다. 단, 캐스트 연산 자를 사용하는 연산식에서만 일시적으로 바꾸는 것이며 선언 자체를 바꾸는 것은 아니다. 캐스트 연산자의 사용법은 간단하게 원하는 자료 앞에 괄호를 치고, 그 안에 원하는 자료형을 써주면 된다. 캐스트 연산자 사용 형식 여러 가지 연산자

  48. 캐스트 연산자의 특징 ① 피연산자로는 산술 자료와 수식을 사용한다. ② 피연산자의자료형을 임시로 바꿀 때 사용한다. ③ 결합 방향은 왼쪽이다. 여러 가지 연산자

  49. 여러 가지 연산자

  50. 여러 가지 연산자

More Related