One Step Two Step
[C언어 기초] 수식과 연산자 본문
반응형
- 수식(expressions): 연산자(+, - 등)와 피연산자(값, 변수)로 구성된 식이며, 항상 결과값을 가짐
- 연산자의 종류

- 단항 연산자: 피연산자의 수가 1개 ☞ ++x; --y;
- 이항 연산자: 피연산자의 수가 2개 ☞ x+y, x-y
- 삼항 연산자: 피연산자의 수가 3개 ☞ x ? y : z
- 연산자의 종류
- 산술 연산자
- 가장 기본적인 연산
-
덧셈, 뺄셈, 곱셈, 나눗셈 등의 연산을 수행하는 연산자

- 나머지 연산자(modulus operator, modulo operator)
- 첫 번째 피연산자를 두 번째 피연산자로 나누었을 때의 나머지 ☞ 10 % 3 → 1, 5 % 7 → 5
- 짝수/홀수 구분
- 배수/약수/공약수 등을 계산
- 첫 번째 피연산자를 두 번째 피연산자로 나누었을 때의 나머지 ☞ 10 % 3 → 1, 5 % 7 → 5
- 증감 연산자
- 변수의 값을 하나 증가 또는 감소시키는 연산자 ☞ x++, ++x, x--, --x
- 변수의 값을 하나 증가 또는 감소시키는 연산자 ☞ x++, ++x, x--, --x

#include <stdio.h>
int main(void) {
int num1 = 2;
int num2 = 2;
int num3;
int num4;
num3 = num1++;
num4 = num2--;
printf("num3: %d, num4: %d", num3, num4); // num3: 2, num4: 2 num3와 num4에 값을 저장후 1증가,감소
return 0;
}
#include <stdio.h>
int main(void) {
int num1 = 2;
int num2 = 2;
int num3;
int num4;
num3 = ++num1;
num4 = --num2;
printf("num3: %d, num4: %d", num3, num4); // num3: 3, num4: 1 값 증가, 감소 후 num3와 num4에 저장
return 0;
}
- 대입 연산자
- "=" , 변수에 값을 넣을 때 사용하는 연산자
- 복합 대입 연산자

- 관계 연산자
-
두 개의 피 연산자를 비교하는 연산자 ☞ x==y
- 반환값: 참(1) or 거짓(0)
- "x=y"와 "x==y"는 다른것

-
- 논리 연산자
-
여러 개의 조건을 조합하여 참 또는 거짓을 반환하는 연산자
-
반환값: 참(1) or 거짓(0)
- 18세 이상, 60세 미만 ☞ (age>=18) && (age < 60)
- 2학년 이상 혹은 2학기 이수 이상, 22세 이상 ☞ (grade>=2) || (semester>=2) && (age>=22)
- 윤년 계산

-
- 조건 연산자
-
삼항 연산자 ☞ 조건? TRUE:FALSE;
int x = 4; int y = 5; printf("%d", x > y ? x : y); // 5 출력
-
- 비트 연산자
- AND 연산자 ☞ 0 and 0 = 0 | 1 and 0 = 0 | 0 and 1 = 0 | 1 and 1 = 1
- OR 연산자 ☞ 0 or 0 = 0 | 1 or 0 = 1 | 0 or 1 = 1 | 1 or 1 = 1
- XOR 연산자 ☞ 0 xor 0 = 0 | 1 xor 0 = 1 | 0 xor 1 = 1 | 1 xor 1 = 0
- NOT 연산자 ☞ not 0 = 1 | not 1 = 0
- 비트 이동 연산자

- "<<" 연산자: 비트를 왼쪽으로 이동, 2배

- ">>" 연산자: 비트를 오른쪽으로 이동, 1/2

- "<<" 연산자: 비트를 왼쪽으로 이동, 2배
- 우선 순위
- 콤마 < 대입 < 논리 < 관계 < 산술 < 단항


반응형
'복습 > C언어' 카테고리의 다른 글
| [C언어 기초] 반복문 "while" / "do...while" / "for" (0) | 2026.02.28 |
|---|---|
| [C언어 기초] "if", "switch" 그리고 "goto"라는 조건문 (0) | 2026.02.27 |
| [C언어 기초] 데이터의 한계와 상수, 그리고 메모리 속의 숫자들 (0) | 2026.02.25 |
| [C언어 기초] 변수, 함수, 그리고 입출력 완벽 정리 (1) | 2026.02.24 |
| [C언어 기초] 01. Hello World 출력과 코드 구조 완벽 이해하기 (0) | 2026.02.23 |