ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 연산자 우선순위
    컴퓨터/정보처리기사 2025. 4. 22. 22:36
    728x90
    반응형
    • C언어

    후위 > 전위

    곱셈 > 덧셈 > 비교

    산시관비논

    포인터 > 산술

    !(논리 NOT) ~(비트 NOT) > 산술( * / % 우선순위 동일) >(시프트)> 관계 > 비트 연산(⭐️& > ^ > | 순서) > 논리 > 삼항 > 대입(다 끝나고 대입한다)

    논리: &&(AND) > ||(OR)

     

    ex. a=b=c=2

    hap = ++a | b— & c—; // 3

     

    SQL도 프로그래밍 언어와 마찬가지로 AND 연산자의 우선순위가 OR 연산자보다 높다

     

    • 8진수는 숫자 앞에 0 (ex. 035), 파이썬은 0o
    • 16진수는 숫자앞에 0x (ex. 0x35)

     

    (1) 

    #include<stdio.h>

     

    int main() {

    int a = 21;

    int b = 6;

    int c = 3;

    int d = 10;

     

    int result = d%b+ ++a*c--;

    printf("결과값: %d\n", result); // 70

    printf("a의 값: %d\n", a); // 22

    printf("c의 값: %d\n", c); //2

        

     

    return 0;

    }

     

    (2)

    int a = 1, b = 0, c = 1;

    printf(“%d\n”, a || b && c); // 1

     

    (3)

    *(ptr+1) => 메모리 주소 1 증가시키고 값을 가져온다

    (*ptr)+1 => 메모리 주소에서 값을 가져오고 1을 증가시킨다

     

    #include<stdio.h>

     

    int main() {

    int arr[] = {10,20,30};

    int *ptr = arr;

     

    printf("값: %d\n", *++ptr); // 20, 포인터를 먼저 증가시키고 그 후의 값을 취함

    printf("다음값: %d\n", *ptr); // 20

        

     

    return 0;

    }

     

    (4)

    int x = 7;

    int y = 14;

    int z = 2;

    int result = x*y <= z+100; // 산술 연산자 먼저, 그 다음 관계 연산자. 따라서 1

     

     

    연산자

     

    • //

    C, java에서는 주석이 됨

    python에서는 몫 구하는 연산자

    C에는 // 연산자가 없고, /로 정수 나눗셈을 하면 자동으로 몫만 남음.

    Java에도 // 연산자가 없고, /를 사용하면 정수형에서는 몫만 남고, 실수형에서는 나눗셈 결과가 그대로 나옴.

    파이썬에서는 //가 몫 연산자로 사용됨.

     

    C에서 % 출력하려면 두 번 써야 한다

     

    #include <stdio.h>

    int main() {

    prinf(“a %% b = %d\n”, remainder_result);

    }

     

     

    • 가지고 있는 돈이 4620원일 때,

    1000원, 500원, 100원, 10원의 지폐와 동전을 출력하라

            

    class HelloWorld {

      public static void main(String[] args) {

        int m = 4620;

     

        int a = m / 1000;

        int b = (m % 1000) / 500;

        int c = (m % 500) / 100;

        int d = (m % 100) / 10;

     

        System.out.println(a);

        System.out.println(b);

        System.out.println(c);

        System.out.println(d);

      }

    }

     

    #include <stdio.h>

    #include <string.h> // 전처리기

     

    int main() {

      char str[50] = "Hello";

      strcat(str, " World"); // C언어에는 내장 기능으로 문자열을 붙이는 기능이 있다

     

      printf("str = %s\n", str); // str = Hello World

      

      return 0;

    }

     

    반응형

    '컴퓨터 > 정보처리기사' 카테고리의 다른 글

    네트워크 관련 신기술 등  (0) 2025.04.22
    운영체제 이론  (0) 2025.04.22
    네트워크 및 데이터 통신  (0) 2025.04.22
    디자인 패턴  (0) 2025.04.22
    OSI 7계층, TCP/IP 4계층  (0) 2025.04.22

    댓글

Designed by Tistory.