취준일기

정보처리기사실기 1.프로그래밍언어활용-연산자 우선 순위 정리

둉영 2020. 4. 16. 17:24

연산자 우선순위

단항 연산자 단항 연산자

높음

 

 

우선순위

 

 

 

낮음

이항 연산자 산술 연산자
시프트 연산자
관계 연산자
비트 연산자
논리 연산자
삼항 연산자 조건 연산자
대입 연산자 대입 연산자
순서 연산자 순서 연산자

 

 

1. 논리연산자

결과값: True(참)=1 또는 False(거짓)=0

 

연산자 의미 비고
&& and 모두 참이면 참
|| or 하나라도 참이면 참
! not 부정

 

2. 단항연산자

연산자 의미 비고
++ 증가 연산자

전치: 변수 앞에 증감연산자가 오는 형태로 먼저 변수의 값을 증감시킨 후 변수를 연산에 사용한다.(++a,--a)

후치: 변수 뒤에 증감연산자가 오는 형태로 먼저 변수를 연산에 사용한 후에 변수의 값을 증감시킨다.(a++,a--)

-- 감소 연산자

 

3. 조건 연산자

'조건'이 참이면 '수식1', 거짓이면 '수식2'를 실행

 

기출예제

#include <studio.h>
main()
{	
	int result, a=100, b=200, c=300;
    result = a < b ? b++ : --c;
    printf("d%, d%, %d\n", result, b, c);
 
 }

결과는 200, 201, 300

result는 조건 연산자에서 a>b 가 참이고 b++ 후치연산이기 때문에 result를 초기의 b값인 200으로 할당한 후 b에는 증감한 201을 할당.

 

 

4. 산술 연산자

연산자 의미
+ 덧셈
- 뺄셈
* 곱셈
/ 나눗셈
% 나머지

 

5. 관계 연산자

결과값: True(참)=1 (0외의 모든 숫자도 참으로 간주) 또는 False(거짓)=0

연산자 의미
== 같다
!= 같지 않다
> 크다
>= 크거나 같다
< 작다
<= 작거나 같다

 

5. 비트 연산자

비트별(0,1)로 연산하여 결과를 얻는 연산자.

연산자 의미 비고
& and 모든 비트가 1일때만 1
^ xor 모든 비트가 같으면 0, 하나라도 다르면 1
| or 모든 비트중 하나라도 1이면 1
~ not 각 비트의 부정, 1이면 0, 0이면 1

 

6. 시프트 연산자

비트별(0,1)로 연산하여 결과를 얻는 연산자.

연산자 의미 비고
<< 왼쪽시프트 비트를 왼쪽으로 이동
>> 오른쪽 시프트 비트를 오른쪽으로 이동

 

7. 대입 연산자

연산자 의미
+= a+=1 a = a+1
-= a-=1 a = a-1
*= a*=1 a = a*1
/= a/=1 a = a/1
%= a%=1 a = a%1
<<= a<<=1 a= a<<1
>>= a>>=1 a = a>>1

기출예제

public class Problem{
	public static void main(String[] args) {
		int a, b = 10;
		a = 20 % 11/ 3 * 5 -b;
		system.out.printf("%d\n",a)
	}
}

 

한번 풀어보시고 답은 댓글로 남겨주세요.