화면 밝기
4주차 · 입·출력 함수와 연산자(2)
지난 시간에는 printf()로 값을 출력하고 scanf()로 값을 입력받는 방법을 배웠습니다.
이번 시간에는 값을 계산하고, 비교하고, 조건을 판단할 때 사용하는 기호를 배웁니다.
이 기호들을 연산자(operator)라고 합니다.
오늘의 목표
오늘 수업이 끝났을 때 아래 내용을 설명할 수 있으면 충분합니다.
+,-,*,/,%로 기본 계산을 할 수 있다.=,==가 서로 다른 뜻이라는 것을 안다.>,<,>=,<=,==,!=로 값을 비교할 수 있다.&&,||,!로 여러 조건을 연결할 수 있다.+=,-=,++,--의 뜻을 안다.조건 ? 값1 : 값2형태의 조건 연산자를 읽을 수 있다.- 비트 연산자가 0과 1을 직접 다루는 연산이라는 것을 안다.
1. 연산자란 무엇인가요?
먼저 아주 익숙한 계산을 봅시다.
text
3 + 2 = 5여기에서 3과 2는 계산에 사용되는 값이고, +는 두 값을 더하라는 기호입니다.
C언어에서도 같은 방식으로 계산합니다.
c
int result = 3 + 2;여기에서 +가 바로 연산자입니다.
연산자 = 값을 계산하거나 비교하거나 바꾸기 위해 사용하는 기호
연산자가 작동하는 대상은 피연산자(operand)라고 부릅니다.
text
3 + 2
↑ ↑
피연산자+는 연산자이고, 3과 2는 피연산자입니다.
용어가 어려워도 괜찮습니다
시험이나 교재에서는 연산자, 피연산자라는 말을 사용합니다.
하지만 처음에는 "연산자는 계산 기호, 피연산자는 그 기호가 사용하는 값"이라고 이해하면 충분합니다.
2. 오늘 만날 연산자의 종류
이번 시간에는 다음 여섯 가지를 중심으로 공부합니다.
| 종류 | 대표 기호 | 하는 일 |
|---|---|---|
| 산술 연산자 | + - * / % | 숫자를 계산합니다. |
| 관계 연산자 | > < >= <= == != | 두 값을 비교합니다. |
| 논리 연산자 | && || ! | 여러 조건을 연결하거나 뒤집습니다. |
| 대입 연산자 | = += -= *= /= %= | 변수에 값을 넣거나 계산 후 다시 넣습니다. |
| 조건 연산자 | ? : | 조건에 따라 둘 중 하나를 선택합니다. |
| 비트 연산자 | & | ^ ~ << >> | 숫자를 2진수의 0과 1 단위로 계산합니다. |
처음부터 모든 기호를 외우지 않아도 됩니다.
직접 실행하면서 하나씩 익숙해지는 것이 더 중요합니다.
3. 산술 연산자 · 숫자 계산하기
산술 연산자는 우리가 수학 시간에 사용하던 계산 기호와 거의 비슷합니다.
| 연산자 | 뜻 | 예 | 결과 |
|---|---|---|---|
+ | 더하기 | 7 + 3 | 10 |
- | 빼기 | 7 - 3 | 4 |
* | 곱하기 | 7 * 3 | 21 |
/ | 나누기 | 7 / 3 | 자료형에 따라 달라짐 |
% | 나머지 | 7 % 3 | 1 |
첫 번째 계산 실습
아래 코드를 복사해서 실행해 봅시다.
c
#include <stdio.h>
int main(void)
{
int a = 10;
int b = 3;
printf("a + b = %d\n", a + b);
printf("a - b = %d\n", a - b);
printf("a * b = %d\n", a * b);
printf("a / b = %d\n", a / b);
printf("a %% b = %d\n", a % b);
return 0;
}실행 결과:
text
a + b = 13
a - b = 7
a * b = 30
a / b = 3
a % b = 1printf() 안에서 %를 문자 그대로 출력할 때
printf()에서 %는 서식 지정자를 시작하는 특별한 문자입니다.
그래서 화면에 % 자체를 보여 주고 싶다면 %%라고 적습니다.
c
printf("10 %% 3 = %d\n", 10 % 3);4. 정수끼리 나누면 소수점이 사라집니다
초보자가 매우 자주 놀라는 부분입니다.
c
int result = 7 / 2;사람이 계산하면 3.5라고 생각합니다.
하지만 7과 2가 모두 정수이므로 C언어에서는 정수 나눗셈이 됩니다.
결과는 다음과 같습니다.
text
3소수점 아래 부분은 버려집니다.
정수 ÷ 정수 → 정수 결과
7 / 2 → 3소수점까지 얻고 싶다면?
둘 중 하나 이상을 실수로 만들어 주면 됩니다.
c
#include <stdio.h>
int main(void)
{
printf("7 / 2 = %d\n", 7 / 2);
printf("7.0 / 2 = %.1f\n", 7.0 / 2);
return 0;
}실행 결과:
text
7 / 2 = 3
7.0 / 2 = 3.5시험에서도 자주 나오는 부분
5 / 2의 결과를 2.5라고 생각하기 쉽습니다.
두 값이 모두 정수라면 결과는 2입니다.
5. %는 퍼센트가 아니라 나머지 연산자입니다
C 코드에서 두 숫자 사이에 있는 %는 나머지를 구하는 연산자입니다.
c
7 % 37개를 3개씩 묶는다고 생각해 봅시다.
text
● ● ● ● ● ● ●
└ 3개 ┘ └ 3개 ┘ 남은 1개따라서
text
7 / 3 → 몫은 2
7 % 3 → 나머지는 1짝수인지 홀수인지 확인할 때
어떤 정수를 2로 나누었을 때 나머지가 0이면 짝수입니다.
c
number % 2예:
text
8 % 2 → 0
9 % 2 → 1아직 if문은 다음 주에 배우지만, 나머지 연산자가 어디에 쓰이는지 눈에 익혀 두세요.
6. 증가 연산자와 감소 연산자
변수의 값을 1 증가시키거나 1 감소시키는 일이 매우 자주 있습니다.
다음 코드는 count에 1을 더합니다.
c
count = count + 1;C언어에서는 더 짧게 쓸 수 있습니다.
c
count++;1을 빼고 싶다면:
c
count--;| 연산자 | 뜻 |
|---|---|
++ | 값을 1 증가 |
-- | 값을 1 감소 |
직접 실행해 보기
c
#include <stdio.h>
int main(void)
{
int count = 5;
printf("처음: %d\n", count);
count++;
printf("1 증가: %d\n", count);
count--;
printf("1 감소: %d\n", count);
return 0;
}실행 결과:
text
처음: 5
1 증가: 6
1 감소: 5++count와 count++는 무엇이 다른가요?
둘 다 결국 count를 1 증가시킵니다.
하지만 다른 식 안에서 사용할 때 증가하는 시점이 다릅니다.
c
++count; // 전위 증가
count++; // 후위 증가처음에는 복잡하게 사용할 필요가 없습니다.
초보자에게 추천하는 방법
당분간 count++;처럼 한 줄에서 증가만 시키는 형태로 사용하세요.
그러면 전위와 후위의 차이 때문에 혼란스러울 일이 거의 없습니다.
7. 대입 연산자 = · 값을 상자에 넣기
2주차에서 이미 매우 중요한 내용을 배웠습니다.
c
age = 25;C언어에서 =는 수학의 "같다"가 아닙니다.
오른쪽 값을 왼쪽 변수에 넣는다는 뜻입니다.
age←25
즉,
c
age = 25;는 다음처럼 읽는 것이 좋습니다.
"25를 age에 넣는다."
8. 복합 대입 연산자 · 계산하고 다시 넣기
다음 코드를 봅시다.
c
score = score + 10;score의 현재 값에 10을 더한 뒤 다시 score에 넣습니다.
C언어에서는 다음처럼 줄여 쓸 수 있습니다.
c
score += 10;두 문장은 같은 의미입니다.
c
score = score + 10;
score += 10;대표적인 복합 대입 연산자는 다음과 같습니다.
| 긴 형태 | 짧은 형태 | 의미 |
|---|---|---|
a = a + 3 | a += 3 | 3을 더해 다시 저장 |
a = a - 3 | a -= 3 | 3을 빼서 다시 저장 |
a = a * 3 | a *= 3 | 3을 곱해 다시 저장 |
a = a / 3 | a /= 3 | 3으로 나눠 다시 저장 |
a = a % 3 | a %= 3 | 3으로 나눈 나머지를 저장 |
실습
c
#include <stdio.h>
int main(void)
{
int money = 1000;
money += 500;
printf("500원을 더하면: %d원\n", money);
money -= 200;
printf("200원을 쓰면: %d원\n", money);
return 0;
}실행 결과:
text
500원을 더하면: 1500원
200원을 쓰면: 1300원9. 관계 연산자 · 두 값을 비교하기
관계 연산자는 두 값을 비교합니다.
예를 들어
text
나이 20세 이상인가?
점수가 60점 이상인가?
두 숫자가 같은가?같은 질문에 사용합니다.
| 연산자 | 읽는 방법 | 예 |
|---|---|---|
> | 크다 | a > b |
< | 작다 | a < b |
>= | 크거나 같다 | a >= b |
<= | 작거나 같다 | a <= b |
== | 같다 | a == b |
!= | 같지 않다 | a != b |
비교 결과는 어떻게 나오나요?
C언어에서는 조건이 거짓이면 0, 참이면 0이 아닌 값으로 다룹니다.
관계 연산의 결과는 보통 다음처럼 확인할 수 있습니다.
c
#include <stdio.h>
int main(void)
{
printf("10 > 5 : %d\n", 10 > 5);
printf("10 < 5 : %d\n", 10 < 5);
printf("10 == 10: %d\n", 10 == 10);
printf("10 != 10: %d\n", 10 != 10);
return 0;
}일반적인 실행 결과:
text
10 > 5 : 1
10 < 5 : 0
10 == 10: 1
10 != 10: 00 → 거짓(false)
0이 아닌 값 → 참(true)
0이 아닌 값 → 참(true)
관계 연산의 결과
>, <, == 같은 관계 연산자는 C에서 조건이 참이면 1, 거짓이면 0이라는 정수 결과를 만듭니다.
앞으로 if문에서 이 결과를 많이 사용하게 됩니다.
10. 가장 중요한 실수 · =와 ==는 다릅니다
이 부분은 여러 번 확인해도 좋습니다.
= 하나
c
age = 20;뜻:
"20을 age에 넣는다."
== 두 개
c
age == 20뜻:
"age가 20과 같은가?"
=대입오른쪽 값을 왼쪽 변수에 넣기
==비교두 값이 같은지 확인하기
반드시 구별하세요
=와 ==는 서로 완전히 다른 연산자입니다.
c
score = 100; // 100을 score에 넣는다
score == 100 // score가 100인지 비교한다나중에 if문을 배울 때 가장 자주 하는 실수 중 하나입니다.
11. 논리 연산자 · 여러 조건을 연결하기
현실에서는 조건이 하나만 있는 경우보다 여러 조건이 함께 있는 경우가 많습니다.
예를 들어 영화관 할인 조건이 다음과 같다고 해 봅시다.
"나이가 65세 이상이고 회원이어야 할인"
여기에는 두 조건이 있습니다.
text
나이가 65세 이상
그리고
회원이다이런 조건을 연결할 때 논리 연산자를 사용합니다.
| 연산자 | 이름 | 쉬운 뜻 |
|---|---|---|
&& | 논리 AND | 그리고 |
|| | 논리 OR | 또는 |
! | 논리 NOT | 아니다 / 반대로 |
12. && · 두 조건이 모두 참이어야 합니다
&&는 그리고라고 생각하면 쉽습니다.
c
age >= 65 && member == 1뜻:
"나이가 65세 이상이고, 회원 상태도 1인가?"
두 조건이 모두 참일 때만 전체 결과가 참입니다.
| 조건 A | 조건 B | A && B |
|---|---|---|
| 거짓 | 거짓 | 거짓 |
| 거짓 | 참 | 거짓 |
| 참 | 거짓 | 거짓 |
| 참 | 참 | 참 |
직접 실행해 보기
c
#include <stdio.h>
int main(void)
{
int age = 70;
int member = 1;
printf("조건 결과: %d\n", age >= 65 && member == 1);
return 0;
}실행 결과:
text
조건 결과: 113. || · 둘 중 하나만 참이어도 됩니다
||는 또는이라고 생각하면 됩니다.
키보드에서 |는 보통 역슬래시 \와 같은 키에 있습니다.
c
age < 8 || age >= 65뜻:
"8세 미만이거나 또는 65세 이상인가?"
둘 중 하나만 참이어도 전체 결과가 참입니다.
| 조건 A | 조건 B | A || B |
|---|---|---|
| 거짓 | 거짓 | 거짓 |
| 거짓 | 참 | 참 |
| 참 | 거짓 | 참 |
| 참 | 참 | 참 |
14. ! · 참과 거짓을 뒤집습니다
!는 조건의 결과를 반대로 바꿉니다.
c
!00은 거짓이므로 반대로 하면 참입니다.
text
!0 → 1반대로
c
!1은 거짓이 됩니다.
text
!1 → 0예를 들어
c
member != 1처럼 !=에서도 느낌표가 등장합니다.
!=는 두 글자를 한 연산자로 보고 "같지 않다"라고 읽습니다.
15. &, &&, &age는 서로 다릅니다
3주차에서 다음 코드를 봤습니다.
c
scanf("%d", &age);그리고 이번 주에는 &&와 비트 연산자 &가 등장합니다.
모양이 비슷해서 혼동하기 쉽습니다.
| 표현 | 어디에서 봤나요? | 현재 단계에서 이해할 뜻 |
|---|---|---|
&age | scanf() | age 변수의 위치를 알려 줌 |
a & b | 비트 연산 | 두 숫자의 비트를 AND 연산 |
조건A && 조건B | 논리 연산 | 두 조건이 모두 참인지 확인 |
&age → 변수 위치
& → 비트 AND
&& → 논리 AND
& → 비트 AND
&& → 논리 AND
정확한 &age의 원리는 9~10주차의 포인터에서 다시 자세히 배웁니다.
16. 조건 연산자 ? : · 둘 중 하나 고르기
조건에 따라 두 값 중 하나를 선택할 수 있습니다.
형태는 다음과 같습니다.
c
조건 ? 참일_때_값 : 거짓일_때_값처음 보면 낯설지만 질문처럼 읽으면 됩니다.
c
age >= 20 ? 100 : 50이것을 말로 읽으면:
"age가 20 이상인가? 맞으면 100, 아니면 50"
예제
c
#include <stdio.h>
int main(void)
{
int age = 25;
int price;
price = age >= 20 ? 10000 : 5000;
printf("요금은 %d원입니다.\n", price);
return 0;
}실행 결과:
text
요금은 10000원입니다.age >= 20 ?조건을 확인
→참이면 10000`?` 뒤의 값
:거짓이면 5000`:` 뒤의 값
지금은 읽을 수 있으면 충분합니다
조건 연산자를 복잡하게 여러 번 겹쳐 쓰면 읽기 어려워집니다.
초보 단계에서는 간단한 둘 중 하나 선택에만 사용해 봅시다.
17. 비트 연산자를 배우기 전에 · 2진수 다시 보기
컴퓨터 내부에서는 숫자를 0과 1로 표현합니다.
예를 들어 십진수 5는 2진수로 다음과 같이 표현할 수 있습니다.
text
십진수 5 → 0101
십진수 3 → 0011비트 연산자는 이 0과 1을 자리별로 직접 계산합니다.
50101
30011
비트(bit)란?
컴퓨터가 사용하는 가장 작은 정보 단위 중 하나로, 0 또는 1 한 자리를 비트라고 생각하면 됩니다.
18. 비트 AND &
비트 AND는 같은 자리의 두 비트가 둘 다 1일 때만 1이 됩니다.
text
5 → 0101
3 → 0011
-----------
& 0001 → 1따라서
c
5 & 3의 결과는 1입니다.
직접 확인하기
c
#include <stdio.h>
int main(void)
{
printf("5 & 3 = %d\n", 5 & 3);
return 0;
}실행 결과:
text
5 & 3 = 119. 비트 OR |와 XOR ^
비트 OR |
둘 중 하나라도 1이면 1입니다.
text
5 → 0101
3 → 0011
-----------
| 0111 → 7c
5 | 3결과는 7입니다.
비트 XOR ^
두 비트가 서로 다를 때 1입니다.
text
5 → 0101
3 → 0011
-----------
^ 0110 → 6c
5 ^ 3결과는 6입니다.
| A | B | A & B | A | B | A ^ B |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
논리 연산자와 구별하세요
논리 연산자:
c
&&
||비트 연산자:
c
&
|기호 개수가 다릅니다.
20. 비트 NOT ~
~는 각 비트를 반대로 뒤집습니다.
text
0 → 1
1 → 0예를 들어 단순히 4자리만 놓고 보면:
text
0101
↓ 모두 뒤집기
1010하지만 실제 C의 정수는 보통 여러 비트로 저장되고, 음수 표현 방식도 함께 적용됩니다.
그래서 ~5의 실제 십진수 결과를 처음 보고 예상과 다르다고 느낄 수 있습니다.
~ 결과는 지금 숫자까지 외우지 않아도 됩니다
이번 시간에는 "각 비트를 0↔1로 뒤집는 연산자"라는 원리만 이해하면 충분합니다.
정수의 실제 비트 수와 음수 표현까지 함께 알아야 결과를 정확히 이해할 수 있습니다.
21. 비트 이동 연산자 <<, >>
비트를 왼쪽이나 오른쪽으로 이동시키는 연산자도 있습니다.
왼쪽 이동 <<
c
5 << 15를 2진수로 보면:
text
0000 0101 (5)
↓ 왼쪽으로 1칸
0000 1010 (10)양수 범위에서 단순한 경우에는 왼쪽으로 1칸 이동할 때 2배가 되는 것처럼 볼 수 있습니다.
오른쪽 이동 >>
c
10 >> 1text
0000 1010 (10)
↓ 오른쪽으로 1칸
0000 0101 (5)단순한 양수에서는 오른쪽으로 1칸 이동할 때 2로 나눈 것처럼 볼 수 있습니다.
무조건 ×2, ÷2라고 외우지는 마세요
부호가 있는 정수, 범위를 벗어나는 이동 등에서는 주의할 점이 있습니다.
이번 초급 과정에서는 "비트 자리를 왼쪽 또는 오른쪽으로 옮긴다"는 개념을 먼저 익힙니다.
22. 연산자 우선순위 · 무엇을 먼저 계산할까요?
수학에서 다음 계산을 보면
text
2 + 3 × 4곱하기를 먼저 계산합니다.
text
2 + 12 = 14C언어에도 연산자 우선순위가 있습니다.
c
2 + 3 * 4결과는 14입니다.
괄호를 사용하면 더 분명합니다
c
(2 + 3) * 4결과는 20입니다.
초보 단계에서 모든 우선순위를 암기할 필요는 없습니다.
헷갈리면 괄호 `( )`를 사용하세요.
사람이 읽기 쉬워지고 실수도 줄어듭니다.
사람이 읽기 쉬워지고 실수도 줄어듭니다.
자주 만나는 순서는 대략 다음 정도만 눈에 익혀 둡니다.
text
( )
↓
* / %
↓
+ -
↓
비교 연산자
↓
&&
↓
||
↓
대입 =정확한 우선순위는 더 많습니다
C에는 더 많은 연산자가 있고 자세한 우선순위 규칙도 있습니다.
지금은 복잡한 식을 억지로 암산하지 말고 괄호로 의도를 분명히 표현하는 습관을 들이는 것이 좋습니다.
23. 실습 · 두 숫자를 입력받아 계산하기
지금까지 배운 입력과 산술 연산을 함께 사용해 봅시다.
c
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int a;
int b;
printf("첫 번째 정수를 입력하세요: ");
scanf("%d", &a);
printf("두 번째 정수를 입력하세요: ");
scanf("%d", &b);
printf("\n--- 계산 결과 ---\n");
printf("더하기: %d\n", a + b);
printf("빼기: %d\n", a - b);
printf("곱하기: %d\n", a * b);
printf("정수 나누기: %d\n", a / b);
printf("나머지: %d\n", a % b);
return 0;
}두 번째 숫자는 0이 아닌 값을 입력하세요
아직 조건 제어문을 배우기 전이므로 이 실습에서는 두 번째 숫자에 0을 입력하지 않습니다.
0으로 나누는 연산은 정상적인 계산이 아니며 다음 주 if문을 배우면 이런 상황을 코드로 막는 방법을 배웁니다.
예를 들어 10, 3을 입력하면:
text
첫 번째 정수를 입력하세요: 10
두 번째 정수를 입력하세요: 3
--- 계산 결과 ---
더하기: 13
빼기: 7
곱하기: 30
정수 나누기: 3
나머지: 124. 실습 · 비교 결과 확인하기
c
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int a;
int b;
printf("두 정수를 공백으로 구분해 입력하세요: ");
scanf("%d %d", &a, &b);
printf("a > b : %d\n", a > b);
printf("a < b : %d\n", a < b);
printf("a == b : %d\n", a == b);
printf("a != b : %d\n", a != b);
return 0;
}10 5를 입력하면 어떤 결과가 나오는지 직접 확인해 봅니다.
그리고 5 10, 10 10으로도 바꾸어 실행해 보세요.
25. 일부러 틀려 보고 고쳐 봅시다
문제 1 · 같은지 비교하려고 했는데?
c
int score = 100;
printf("%d\n", score = 90);이 코드는 score가 90인지 비교하는 코드일까요?
정답 보기
아닙니다. =는 대입 연산자입니다.
90을 score에 넣습니다.
같은지 비교하려면 ==를 사용합니다.
c
printf("%d\n", score == 90);문제 2 · 5 나누기 2가 왜 2인가요?
c
printf("%d\n", 5 / 2);정답 보기
5와 2가 모두 정수이므로 정수 나눗셈입니다.
결과는 2입니다.
소수점 결과가 필요하다면 예를 들어 다음처럼 할 수 있습니다.
c
printf("%.1f\n", 5.0 / 2);결과:
text
2.5문제 3 · 논리 AND는 어느 것인가요?
text
A. &
B. &&
C. |
D. ||정답 보기
B의 &&입니다.
&&→ 논리 AND&→ 비트 AND 또는 문맥에 따라 주소 관련 연산
문제 4 · 다음 결과는?
c
7 % 3정답 보기
1입니다.
7을 3으로 나누면 몫은 2이고 나머지는 1입니다.
26. 오늘 배운 내용 확인하기
1번
10 / 4의 결과는 무엇일까요? 두 숫자는 모두 정수입니다.
정답 보기
2입니다. 정수끼리 나누면 소수점 아래 부분이 버려집니다.
2번
10 % 4의 결과는 무엇일까요?
정답 보기
2입니다.
3번
두 값이 같은지 비교하는 연산자는 무엇인가요?
- A.
= - B.
==
정답 보기
B의 ==입니다.
=는 값을 넣는 대입 연산자입니다.
4번
"A도 참이고 B도 참"을 표현하는 논리 연산자는 무엇인가요?
정답 보기
&&입니다.
5번
"A 또는 B 중 하나만 참이어도 된다"를 표현하는 연산자는 무엇인가요?
정답 보기
||입니다.
6번
다음 코드에서 score의 값은 얼마가 될까요?
c
int score = 50;
score += 20;정답 보기
70입니다.
score += 20은 score = score + 20과 같은 의미입니다.
7번
다음 식의 결과는 무엇일까요?
c
2 + 3 * 4정답 보기
14입니다.
곱하기가 더하기보다 먼저 계산됩니다.
8번
비트 연산자 &와 논리 연산자 &&는 같은 연산자인가요?
정답 보기
아닙니다.
&는 두 숫자의 비트를 AND하는 데 사용할 수 있습니다.&&는 두 조건이 모두 참인지 확인하는 논리 AND입니다.
27. 이번 주 핵심 요약
모든 연산자를 한 번에 외우려고 하지 않아도 됩니다.
아래 내용부터 확실히 기억합시다.
① + - * / % → 기본 계산을 합니다.
② 정수 / 정수 → 결과도 정수입니다.
③ % → 나머지를 구합니다.
④ = → 값을 넣습니다.
⑤ == → 두 값이 같은지 비교합니다.
⑥ 관계 연산 결과 → 참 또는 거짓을 나타냅니다.
⑦ && / || / ! → 조건을 연결하거나 뒤집습니다.
⑧ ? : → 조건에 따라 둘 중 하나를 선택합니다.
⑨ & | ^ ~ << >> → 비트 단위로 계산합니다.
⑩ 우선순위가 헷갈리면 → 괄호를 사용합니다.
② 정수 / 정수 → 결과도 정수입니다.
③ % → 나머지를 구합니다.
④ = → 값을 넣습니다.
⑤ == → 두 값이 같은지 비교합니다.
⑥ 관계 연산 결과 → 참 또는 거짓을 나타냅니다.
⑦ && / || / ! → 조건을 연결하거나 뒤집습니다.
⑧ ? : → 조건에 따라 둘 중 하나를 선택합니다.
⑨ & | ^ ~ << >> → 비트 단위로 계산합니다.
⑩ 우선순위가 헷갈리면 → 괄호를 사용합니다.
다음 시간 예고
다음 시간에는 프로그램이 상황에 따라 다른 길을 선택하거나 같은 일을 반복하도록 만드는 방법을 배웁니다.
if,if ~ elseswitchforwhiledo ~ whilebreak,continue
지금까지 배운 관계 연산자와 논리 연산자가 다음 시간부터 본격적으로 사용됩니다.