언어(Language)/C

[C언어] 대입 연산자의 기본 개념 및 출력 예시 (+ 복합 대입 연산자)

잇트루 2021. 10. 21. 08:00
반응형

연산자의 기본 개념

수학 표기와, 수학 기호를 사용하여 수학적 관계를 나타내는 것이 수식입니다.

등식, 부등식, 논리식, 방정식과 같은 수식들을 표현하는 데 사용합니다. 프로그래밍 언어에서도 수식과 유사한 여러 연산자(=, +, -, *, /, ···)를 지원하고 있습니다.

 

프로그래밍 언어에서 상수, 변수 또는 수식(함수) 등을 피연산자라고 하며,

이들 간의 관계를 나타내는데 연산자를 사용합니다.

 

프로그래밍 언어의 연산자의 종류

 

 

대입 연산자 (=)

프로그래밍 언어에서 대입 연산자는 특정 값을 변수에 저장하기 위한 연산자입니다.

프로그래밍 언어에서는 변수라는 개념이 등장하게 되는데, 원하는 값을 할당하기 위한 저장소라고 할 수 있습니다.

 

대입 연산자의 형식

변수명 = 값;	// 오른쪽 값을 변수에 대입(할당)
변수명 = 변수;	// 오른쪽 변수에 저장된 값을 왼쪽 변수에 대입(할당)
변수명 = 수식;	// 오른쪽 수식의 결과값을 변수에 대입(할당)

수학에서 등호(=)와는 다른 개념이라는 것을 주의해야 합니다.

'변수에 값을 대입한다.' 또는 '왼쪽 피연산자에 오른쪽 피연산자 값을 대입한다.'로 이해하시면 됩니다.

 

예시

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
 
int main() {
    int x, y, z, a, b;
    char ch;
 
    x = 100;    // 변수 x에 정수 100 저장
    y = x;      // 변수 y에 변수 x 저장
    z = x + y;  // 변수 z에 x + y의 결과(200) 저장
    ch = 'C';   // 변수 ch에 문자 'a'를 저장
 
    a = b = 1;  // 다중대입(변수 a와 b에 정수 1 저장)
 
    printf("x = %d\n", x);
    printf("y = %d\n", y);
    printf("z = %d\n", z);
    printf("a = %d\n", a);
    printf("b = %d\n", b);
    printf("ch = %c\n", ch);
 
    return 0;
}
cs

 

 

복합 대입 연산자 (+=, -=, *=, /=, %=)

복합 대입 연산자는 대입 연산자를 응용하여 연산과 대입을 한 번에 해주는 유용한 연산자입니다.

복합 대입 연산자는 코드의 반복적인 작업을 최소화하여 효율적인 코딩이 가능한 장점이 있습니다.

 

따라서 사용하는 형식과 의미를 이해하는 것이 중요한데,

복합 대입 연산자는 +=, *=, /=, %= 등으로 대입 연산자 앞에 산술 연산자를 붙여서 사용합니다.

 

예를 들어, '피연산자1 += 피연산자2'와 같은 형태로 사용합니다.

이는 '피연산자1 + 피연산자2의 결과 값을 피연산자1에 대입한다.'라는 의미입니다.

 

복합 대입 연산자의 형식

변수명 산술연산자= 식

변수명 += 식
변수명 -= 식
변수명 *= 식
변수명 /= 식
변수명 %= 식

 

 

복합 대입 연산자의 의미

// x += y
x = x + y

// x -= y
x = x - y

// x *= y
x = x * y

// x /= y
x = x / y

// x %= y
x = x % y

 

예시

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
 
int main() {
    int x, y;
    
    // 변수 x와 y에 5 대입 
    x = y = 5;
    
    // 복합 대입 연산자 +=
    printf("x = %d, y= %d \n", x, y);        // x = 5, y = 5
    printf("x += y 결과: %d \n\n", x += y);
    
    // 복합 대입 연산자 -= 
    printf("x = %d, y = %d \n", x, y);        // x = 10, y = 5
    printf("x -= y 결과: %d \n\n", x -= y);
    
    // 복합 대입 연산자 *= 
    printf("x = %d, y= %d \n", x, y);        // x = 25, y = 5
    printf("x *= y 결과: %d \n\n", x *= y);
    
    // 복합 대입 연산자 /= 
    printf("x = %d, y= %d \n", x, y);        // x = 5, y = 5
    printf("x /= y 결과: %d \n\n", x /= y);
    
    // 복합 대입 연산자 %= 
    printf("x = %d, y= %d \n", x, y);        // x = 5, y = 5
    printf("x %%= y 결과: %d \n\n", x %= y);
    
}
cs

참고 : printf() 함수에서 % 문자를 출력하기 위해서는 %%로 입력해야 합니다.

 

반응형