산술연산자 종류
- 이항 연산자
- 단항 연산자
- 대입 연산자
이항 연산자
항이 2개다
a + b같이 항이 2개로 구성된 연산자
종류: + - * / %
+는 덧셈 연산
-는 뺄셈 연산
*는 곱셈 연산입니다.
/는 우리가 아는 나눗셈과는 좀 다릅니다.
헷갈리는 / 연산자와 % 연산자를 살펴보면
/ 연산자: 몫을 나타내는 연산자
ex. 5/3 = 1(몫을 나타내고 나머지는 나타내지 않는다)
정수/정수 = 정수 (소수점 나타내지 않는다)
%연산자: 나머지를 나타내는 연산자
ex. 5%3 = 2 (몫이 1이고 나머지가 2이기 때문)
단항 연산자
종류: ++, --
a++; -> 식을 먼저 처리하고 1을 증가시킨다 (할당 후 증가)
++a; -> 먼저 1을 증가시키고 식을 진행 시켜라 (증가 후 할당)
하단의 예재로 확실하게 하고 갑니다.
대입연산자
종류: += -= *= /= %=
a+= 10; -> a= a+10
대입연산자 식이 나오면 "a는a"를 입에 붙이시는 게 편합니다
일단 입버릇처럼 a=a를 써주고 나머지 덧붙은 연산을 처리해 주면 됩니다.
ex. a/= 10 >- a=a / 10;
예제로 굳히기
1.
3/4 =
답: 0
해설: 정수 나누기 정수는 정수, 몫이 0이니까 0
2.
a = 10;
b= a++;
c=++a;
a,b,c 출력 결과는?
답: a=12, b= 10, c=12
해설
a = 10; // a에 10 할당
b= a++; // b에 a를 먼저 넣고 후에 1을 증가/ b=10, a=11
c=++a; // a에 먼저 1증가 시키고 c에 할당/ a=12, c=12
3.
a = 10;
a += 10;
a는?
답: 20
a=a+10 이므로 20
4.
#include<stdio.h>
noid main(){
int a, b;
a = 4*(1/2);
b = a++;
printf("%d",b);
}
답:0
해설
1/2 몫이 0이므로 4*(1/2) = 0 / a=0
b=a++ // a를 b에 먼저 대입하고 이후에 a를 1 증가시킨다. b=0 a=1
printf("%d",b) = b를 출력하면 0이다
'iOS > 정보처리기사' 카테고리의 다른 글
[정보처리기사] C언어 - 관계연산자/논리연산자, 조건문 (0) | 2022.05.23 |
---|---|
[정보처리기사] C언어 - 연산자 우선순위 (0) | 2022.05.23 |
[정보처리기사] C언어 - 변수의 종류와 유효범위(지역변수, 전역변수, 정적변수, 동적변수) (0) | 2022.05.20 |
[정보처리기사] C언어 - 변수 (0) | 2022.05.18 |
[정보처리기사] C언어 - 컴파일러, 인터프리터 (0) | 2022.05.18 |