[실기] 6단원: 프로그래밍 언어 활용

이하얀·2024년 3월 4일
0

📥 정보처리기사

목록 보기
10/13

CH1. 프로그래밍을 위한 기본 사항

1️⃣ 진수(Antilogarithm)

  • 표현
10진수16진수
0~90~9
10A
11B
12C
13D
14E
15F
  • 변환

    10진수 -> n진수

    • 10진수 값을 몫이 n보다 작을 때까지 n으로 나누고 나머지 값들을 표시한 후, 나머지 값을 읽음.
    • 예시1) 10진수를 2진수로 변환
    • 예시2) 10진수를 16진수로 변환

n진수 -> 10진수

  • 예시1) 2진수를 10진수로 변환

  • 예시2) 16진수롤 10진수로 변환


아스키코드(ASCII)

  • American Standard Code for Information Interchange

  • 미국 ANSI에서 표준화환 정보교환용 부호체계

  • 영문 키보드로 입력할 수 있는 모든 기호가 할당된 기본적 부호 체계

    10진수부호10진수부호10진수부호
    0NULL65A97a
    32' '(space)66B98b
    48167C99c
    49268D100d



CH2. C언어

1️⃣ C언어 기본

  • 기본 구조

    • 본문 전 처리하는 전처리 부분, 본문
    • 헤더는 xxx.h, 헤더 안에는 프로그래밍에 필요한 함수 포함
  • 전처리기(Preprocessor) 개념

    • 실행 파일 생성하는 과정에서 소스 파일 내에 존재하는 전처리 지시문을 처리하는 작업
  • 전처리기 종류

    • #include
      • C언어 프로그램에 헤더 파일 포함할 때 사용하는 전처리기
      • 예시
       #include <stdio.h>
    • #define
      - 매크로 정의 시 사용하는 전처리기
      - 상숫값 지정하기 위한 예약어, 구문의 상수로 치환할 때 사용하는 전처리기
      - 예시
       #define A 5

    2️⃣ 자료형

  • 자료형(Data Type) 개념

    • 프로그래밍 언어에서 실숫값, 정숫값과 같은 여러 종류 데이터를 식별하는 형태
    • 메모리 공간을 효율적으로 사용하고 2진수 데이터를 다양한 형태로 사용하기 위해 존재
  • 유형 3가지

  • 문자(Character)

    • 선언 형식 : char
    • 문자 하나
    • 메모리 저장은 숫자로 됨.
  • 정수(Integer)

    • 선언 형식 : int
    • 정숫값을 저장
  • 부동 소수점(Floating Point)

    • 선언 형식 : float, double
    • 소수점 포함하는 실숫값 저장

3️⃣ 식별자

  • 식별자(Identifier) 개념
    • 변수, 상수, 함수 등 서로 구분하기 위해 사용되는 이름
    • 프로그램 구성 요소를 구별하기 위해 사용

  • 명명규칙
    • 사용 가능 문자 : 영문 대/소문자, 숫자, 밑줄( _ )
    • O : a, A, a1, _, _hello
    • X : ?a, <a

    • 변수 사용 규칙 : 첫 자리에는 숫자 사용 불가, 변수 이름 중간에는 공백 사용 X
    • O : _1, a1, a100
    • X : 1, 1a, 1A, 1234

    • 변수 의미 부여 : 예약어 사용 불가
    • O : For, If, While
    • X : int, short, long, for, while, do, continue, break, if, else...

  • ⭐식별자 표기법 4가지⭐ [2020 3회]

  1. 카멜 표기법(Camel Case)
  • 여러 단어가 이어지면 첫 단어 시작만 소문자, 각 단어 첫 글자는 대문자
    • ex) inputFunction
  1. 파스칼 표기법(Pascal Case)
  • 각 단어의 첫글자는 대문자
    • ex) InputFunction
  1. 스네이크 표기법(Snake Case)
  • 단어 사이 언더바
    • ex) input_function
  1. 헝가리안 표기법(Hungarian Case)
  • 식별자 표기 시 두어에 자료형을 붙임.
  • int형 : n, char형 : c, 문자열 : sz
    • ex) nScore

4️⃣ 변수

  • 변수(Variable) 개념

    • 저장하고자 하는 어떤 값이 있을 때, 그 값을 주기억장치에 기억하기 위한 공간
    • 자료형, 변수명 작성해 변수를 생성하는 과정
  • 변수 선언(Variable Declaration)

    • 변수나 함수가 있음을 알려주는 행위
    • 변수가 어떤 자료형을 사용할 건지 알려주기 위해 사용
    • 초기화 X : 자료형 변수명; , 초기화 O : 자료형 변수명 = 초깃값;
  • 변수 유효범위(Variable Scope)

    • 전역 변수(Global Variable)

      • 어떤 블록에도 속하지 않는 변수
      • 프로그램 시작 시 변수 생성, 프로그램 종료 시 소멸
      • 초기화 하지 않으면 -> 정수형은 0, 실수형은 0.0, 문자형은 NULL로 초기화
      • 전역 변수는 아무 곳에서나 사용 가능
      • Code 예시
        #include <stdio.h>
        int a = 5; //전역변수
        void fn(){
            a = a + 3;
        }
        void main(){
            a = a + 5;
            fn();
            printf("%d", a);
        }

    • 지역 변수(Local Variable)

      • 블록 내에서 선언
      • 블록이 시작되는 부분에 바로 선언, 중괄호 닫히는 시점에 소멸
      • 해당 불록 안에서만 사용 가능
      • Code 예시
        #include <stdio.h>
        void main(){
            int a = 3, b = 4; // 지역변수
            {
                int a = 5;
                printf("%d %d\n", a, b);
            }
            printf("%d %d\n", a, b);
        }

    • static 변수(Static Variable)
      • 블록 내외부 상관없이 선언 가능한 변수
      • 변수를 선언할 때 static이라는 키워드를 붙임.
      • 블록 내외부 상관없이 프로그램 시작되면 변수 생성, 프로그램 종료되면 변수 소멸
      • 전역 변수로 선언할 경우 -> 프로그램 전체에서 사용 가능, 블록 내에 선언할 경우 -> 블록 내에서만 사용 가능
      • Code 예시
        #include <stdio.h>
        void fn(){
            static int a = 3;
            a = a + 1;
            printf("%d\n", a);
        }
        void main(){
            fn();
            fn();
        }

5️⃣ 표준 입출력 함수

  • 표준 출력 함수(printf)

    1. 단순 출력

      printf(문자열);
      #include <stdio.h>
      void main(){
          printf("Hello C World");
      }
      
      ------------------------------
      [출력]
      Hello C World

    1. 이스케이프 문자를 이용한 출력
    • \n : New Line, 커서 다음줄 앞으로 이동(개행)
    • \t : Tab
      #include <stdio.h>
      void main(){
        printf("Hello\tC\nWorld");
      }
      ---------------------------------
      [출력]
      Hello	c
      World

    1. 포맷스트링을 이용한 변수 출력

      유형설명의미설명
      문자(Character)%cCharacter문자 1글자에 대한 형식
      문자열(String)%sString문자가 여러 개인 문자열에 대한 형식
      정수(Integer)%uUnsigned Decimal부호 없는 10진수 정수
      ''%dDecimal10진수 정수
      ''%oOctal8진수 정수
      ''%x, %XHexa Decimal16진수 정수(영어 표현 소문자, 영어 표현 대문자)
      부동 소수점(Floating Point)%e, %EExponent지수 표기(지수 표현 e, 지수표현 E)
      ''%fFloating Point10진수 정수
      ''%lfLong Floating Point8진수 정수
      #include <stdio.h>
      void main(){
        int a=4, c=5;
        char b = 'A';
        printf("a는 %d, b는 %c입니다.", a, b);
        printf("%d", a+c);
      }
  1. 포맷 스트링을 이용한 변수 상세 출력
  • 정렬, 0 채우기, 출력할 공간 확보, 소수점 자릿수 표기 지정
    %[-][0][전체자리수].[소수점자리수]스트링

  • [-]

    • 이걸 붙이면 왼쪽 정렬, 안붙이고 [전체자리수] 정해져 있으면 오른쪽 정렬
  • [0]

    • 이걸 붙이면 전체 자릿수에서 앞에 빈공간 만큼 0 채우기
  • [전체자리수]

    • [전체자리수]만큼 공간 확보됨
    • 소수점(.)도 한 자릿수로 포함됨
  • .[소수점자리수]

    • [소수점자리수]만큼 소수점 출력
    • 실수형일때만 적용
    #include <stdio.h>
    void main(){
    	float a = 1.234;
      int b = 10;
      printf("%.2f\n", a);
      printf("%5.1f\n", a);
      printf("%05.1f\n", a);
      printf("%-05.1f\n", a);
      printf("%5d\n", b);
      printf("%05d\n", b);
      printf("%-5d\n", b);
      printf("%-05d\n", b);
    }
    -----------------------------
    [출력]
    1 . 2 3
        1 . 2
    0 0 1 . 2
    1 . 2
          1 0 //오른쪽 정렬
    0 0 0 1 0
    1 0
    1 0  

  • 표준 입력 함수(scanf)

    • 키보드로 입력받은 문자열에서 지정된 포맷 스트링으로 데이터를 읽는 함수
    • 포맷 스트링은 printf의 포맷 스트링과 동일
    #include <stdio.h>
    void main(){
        int a;
        char b;
        scanf("%d %c", &a, &b);
        printf("a는 %d, b는 %c입니다.", a, b);
    }
    -------------------------------------------
    [입력]
    1 B
    
    [출력]
    a는 1, b는 B입니다.
profile
언젠가 내 코드로 세상에 기여할 수 있도록, BE&Data Science 개발 기록 노트☘️

0개의 댓글