본문 바로가기
Computer Science/C 언어

[C#4] 표현식 (Expressions)

by rnasterofmysea 2024. 12. 2.
반응형

4장: 표현식 (Expressions)


4.1 표현식이란?

표현식(Expressions)은 값을 계산하기 위한 연산자와 피연산자의 조합입니다.
예를 들어, 다음은 표현식입니다:

3 + 5    // 8을 계산하는 표현식
x * y    // 변수 x와 y의 곱

4.2 연산자와 피연산자

연산자 (Operators)

연산자는 데이터를 처리하고 결과를 계산하는 기호입니다.
예: +, -, *, /, %

피연산자 (Operands)

연산자의 입력값이 되는 데이터입니다.
예: 3, 5, x, y


4.3 산술 연산자

C 언어는 기본 산술 연산을 지원합니다:

연산자 설명 예시

+ 덧셈 3 + 2 = 5
- 뺄셈 5 - 3 = 2
* 곱셈 4 * 2 = 8
/ 나눗셈 (몫) 8 / 3 = 2 (정수) 또는 2.66667 (실수)
% 나머지 연산 8 % 3 = 2

예제: 산술 연산

#include <stdio.h>

int main(void) {
    int a = 10, b = 3;

    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;
}

4.4 관계 연산자

관계 연산자는 두 값 간의 크기를 비교하여 참(1) 또는 **거짓(0)**을 반환합니다.

연산자 설명 예시

== 두 값이 같음 a == b
!= 두 값이 다름 a != b
> 왼쪽이 큼 a > b
< 오른쪽이 큼 a < b
>= 왼쪽이 크거나 같음 a >= b
<= 오른쪽이 크거나 같음 a <= b

예제: 관계 연산자

#include <stdio.h>

int main(void) {
    int x = 5, y = 10;

    printf("x == y: %d\n", x == y);
    printf("x != y: %d\n", x != y);
    printf("x > y: %d\n", x > y);
    printf("x < y: %d\n", x < y);
    printf("x >= y: %d\n", x >= y);
    printf("x <= y: %d\n", x <= y);

    return 0;
}

4.5 논리 연산자

논리 연산자는 참(1) 또는 거짓(0) 값을 결합하거나 뒤집습니다.

연산자 설명 예시

&& 논리 AND (둘 다 참일 때 참) a && b
`   `
! 논리 NOT (값을 뒤집음) !a

예제: 논리 연산자

#include <stdio.h>

int main(void) {
    int a = 1, b = 0;

    printf("a && b: %d\n", a && b);  // 둘 다 참이어야 참
    printf("a || b: %d\n", a || b);  // 하나라도 참이면 참
    printf("!a: %d\n", !a);          // a를 뒤집음

    return 0;
}

4.6 증감 연산자

증감 연산자는 변수의 값을 1씩 증가 또는 감소시킵니다.

연산자 설명 예시

++ 1 증가 a++ 또는 ++a
-- 1 감소 a-- 또는 --a

전위와 후위 연산

  • 전위(++a, --a): 값을 먼저 증가/감소한 뒤 사용.
  • 후위(a++, a--): 값을 사용한 뒤 증가/감소.

예제: 증감 연산자

#include <stdio.h>

int main(void) {
    int x = 5;

    printf("x: %d\n", x);
    printf("전위 증가: %d\n", ++x);  // x를 먼저 증가
    printf("후위 증가: %d\n", x++);  // x를 출력한 후 증가
    printf("현재 x: %d\n", x);

    return 0;
}

출력 결과:

x: 5
전위 증가: 6
후위 증가: 6
현재 x: 7

4.7 할당 연산자

할당 연산자는 변수에 값을 저장하거나, 연산 결과를 저장하는 데 사용됩니다.

연산자 설명 예시

= 값을 할당 x = 5
+= 더해서 할당 x += 3 (x = x + 3)
-= 빼서 할당 x -= 2 (x = x - 2)
*= 곱해서 할당 x *= 2 (x = x * 2)
/= 나눠서 할당 x /= 2 (x = x / 2)
%= 나머지 계산 후 할당 x %= 3 (x = x % 3)

예제: 할당 연산자

#include <stdio.h>

int main(void) {
    int x = 10;

    x += 5;  // x = x + 5
    printf("x += 5: %d\n", x);

    x *= 2;  // x = x * 2
    printf("x *= 2: %d\n", x);

    x -= 4;  // x = x - 4
    printf("x -= 4: %d\n", x);

    return 0;
}

4.8 연산자 우선순위

연산자가 여러 개 있는 표현식에서는 우선순위에 따라 계산 순서가 결정됩니다.

우선순위 연산자 설명

1 () 괄호
2 !, ++, -- 논리 NOT, 증감 연산자
3 *, /, % 곱셈, 나눗셈, 나머지
4 +, - 덧셈, 뺄셈
5 >, <, == 관계 연산자
6 && 논리 AND
7 `  
8 = 할당 연산자

4장은 C 언어의 연산자와 표현식에 대해 다루고 있습니다. 추가적인 예제나 심화된 설명이 필요하면 말씀해주세요! 😊

반응형