x++, x--
*, /, %, +, -
<<, >>
<, <=, >, >=, ==, !=
~, &, ^, |
!, &&, ||
(조건식)?a:b
=, +=, -=, *=, /=, %=
⭐증감 연산자(Increment & Decrement Operartor)⭐ [2021년 3회]
종류 | 설명 |
---|---|
++x | 변수의 값을 1 증가시킨 후에 해당 변수를 사용하는 연산자 |
x++ | 변수를 사용한 후에 변수의 값을 1 증가시키는 연산자 |
--x | 변수의 값을 1 감소시킨 후에 해당 변수를 사용하는 연산자 |
x-- | 변수를 사용한 후에 변수의 값을 1 감소시키는 연산자 |
산술 연산자
종류 | 설명 |
---|---|
+ | 양쪽의 값을 더하는 연산자 |
- | 왼쪽 값에서 오른쪽 값을 빼는 연산자 |
* | 두 개의 값을 곱하는 연산자 |
/ | 왼쪽 값을 오른쪽 값으로 나누는 연산자 |
% | 왼쪽 값을 오른쪽 값으로 나눈 나머지를 계산하는 연산자(정수끼리만 가능) |
⭐시프트 연산자(Shift Operator)⭐ [2021년 2회]
종류 | 설명 |
---|---|
<< | 왼쪽 값을 오른쪽 값만큼 비트를 왼쪽으로 이동하는 연산자 |
>> | 왼쪽 값에 오른쪽 값만큼의 부호 비트를 채우면서 오른쪽으로 이동하는 연산자 |
⭐관계 연산자(Relation Operator)⭐ [2021년 3회]
종류 | 설명 |
---|---|
> | 왼쪽에 있는 값이 오른쪽에 있는 값보다 크면 참을 반환, 그렇지 않으면 거짓 반환 |
< | 왼쪽에 있는 값이 오른쪽에 있는 값보다 작으면 참을 반환, 그렇지 않으면 거짓 반환 |
>= | 왼쪽에 있는 값이 오른쪽에 있는 값보다 크거나 같으면 참 반환, 그렇지 않으면 거짓 반환 |
<= | 왼쪽에 있는 값이 오른쪽에 있는 값보다 작거나 같으면 참 반환, 그렇지 않으면 거짓 반환 |
== | 왼쪽에 있는 값이 오른쪽에 있는 값과 같으면 참 반환, 그렇지 않으면 거짓 반환 |
!= | 왼쪽에 있는 값이 오른쪽에 있는 값과 다르면 참 반환, 그렇지 않으면 거짓 반환 |
비트 연산자(Bit Operator)
종류 | 설명 |
---|---|
& | AND 연산자 |
^ | XOR 연산자 |
~ | NOT 연산자(모두 반전) |
*** XOR
논리 연산자(Logic Operator)
종류 | 설명 |
---|---|
&& | AND 연산자 |
! | NOT 연산자 |
조건식 ? 참일때 값 : 거짓일때 값;
⭐대입 연산자(Assignment Operator)⭐ [2021년 3회]
종류 | 설명 |
---|---|
= | 왼쪽에 있는 변수에 오른쪽 값 대입 |
+= | 왼쪽의 변수에 오른쪽 값 더한 후, 그 결과 값을 왼쪽 변수에 대입 |
-= | 왼쪽의 변수에 오른쪽 값 뺀 후, 그 결과 값을 왼쪽 변수에 대입 |
*= | 왼쪽의 변수에 오른쪽 값 곱한 후, 그 결과 값을 왼쪽 변수에 대입 |
/= | 왼쪽의 변수에 오른쪽 값 나눈 후, 그 결과 값을 왼쪽 변수에 대입 |
%= | 왼쪽의 변수에 오른쪽 값 나눈 후, 그 나머지를 왼쪽 변수에 대입 |
if(조건문){
명령문;
}
else if(조건문){
명령문;
}
else {
명령문;
}
switch(식){
case 값;
명령문;
break;
default:
명령문;
}
진입한 case부터 switch문 끝까지 동작한다!
while(조건문){
명령문;
}
do{
명령문;
}while(조건문);
예시
#include <stdio.h>
void main(){
int i=1; sum = 0;
do{
sum = sum + i;
i++;
} while(i<0);
printf("%d\n", sum);
}
---------------------------
[출력]
1
for(초기식; 조건식; 증감식;){
명령문;
}
명령문;
#include <stdio.h>
void main(){
int i, sum = 0;
for(i=1, i<3; i++)
sum = sum + i;
printf("%d\n", sum);
}
------------------------
[출력]
3
#include <stdio.h>
void main(){
int i, j;
for(i=1, i<3; i++)
for(j=1; j<3; j++)
printf("%d\n", i*10+j);
}
------------------------
[출력]
11 // i=1, j=1
12 //안쪽 for문의 증감식은 j++이므로 j는 1 증가한 2가 되고, 조건식은 j<3이므로 2<3은 참이기 때문에 반복문 수행해 i=1일때 j=2이므로 12 출력
21
22