Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 | 31 |
Tags
- 스프링 고급 - 스프링 aop
- 코드로 시작하는 자바 첫걸음
- 자바의 정석 기초편 ch1
- 스프링 mvc1 - 스프링 mvc
- 자바의 정석 기초편 ch2
- 스프링 db1 - 스프링과 문제 해결
- 스프링 mvc2 - 로그인 처리
- 자바의 정석 기초편 ch7
- 2024 정보처리기사 수제비 실기
- 자바의 정석 기초편 ch11
- @Aspect
- 자바의 정석 기초편 ch4
- 스프링 db2 - 데이터 접근 기술
- 자바의 정석 기초편 ch14
- 스프링 입문(무료)
- 자바의 정석 기초편 ch9
- 자바 중급1편 - 날짜와 시간
- 스프링 mvc2 - 검증
- 2024 정보처리기사 시나공 필기
- 자바의 정석 기초편 ch13
- 게시글 목록 api
- 자바 기본편 - 다형성
- 자바의 정석 기초편 ch12
- jpa 활용2 - api 개발 고급
- 스프링 mvc1 - 서블릿
- 스프링 mvc2 - 타임리프
- 자바의 정석 기초편 ch8
- 자바의 정석 기초편 ch6
- 자바의 정석 기초편 ch5
- jpa - 객체지향 쿼리 언어
Archives
- Today
- Total
나구리의 개발공부기록
Chapter 01 - 프로그래밍을 위한 기본 사항(진수) , Chapter 02 - C언어(C언어 기본, 자료형, 식별자) 본문
2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비)/실기 6강 - 프로그래밍 언어 활용
Chapter 01 - 프로그래밍을 위한 기본 사항(진수) , Chapter 02 - C언어(C언어 기본, 자료형, 식별자)
소소한나구리 2024. 5. 18. 23:27728x90
2024년도 수제비 실기책(6판) 내용 정리
Chapter 01 - 프로그래밍을 위한 기본 사항
1. 진수
1) 진수(Antilogarithm) 개념
- 진수는 특정 개수의 숫자만을 이용하여 수를 나타내는 수 체계
2) 진수 변환
(1) 10진수를 n 진수로 변환
- 10 진수 값을 몫이 n보다 작을 때까지 n으로 나누고 나머지 값들을 표시한 후에 나머지 값들을 읽음
- 10 진수 이하일 때는 0 ~ 9를 사용하지만, 10진수 초과할 경우는 10을 넘어가는 값들을 영어 알파벳으로 표현
- 2진수의 자릿수를 모두 작성해놓고 해당 값을 더하면서 구할 수도 있음
10진수 | 16진수 |
0 ~ 9 | 0 ~ 9 |
10 | A |
11 | B |
12 | C |
13 | D |
14 | E |
15 | F |
2진수 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
자리수 | 2⁸ | 2⁷ | 2⁶ | 2⁵ | 2⁴ | 2³ | 2² | 2¹ | 2⁰ |
10진수 표현 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
ex) 10진수 181 = 128 + 0 + 32 + 16 + 0 + 4 + 0 + 1 = 2진수 10110101
문제 - 10진수 13을 2진수로 변환(10진수 이하 진수로 변환)
- 10진수 값을 몫이 2보다 작은 값이 될 때까지 2로 나누고 나머지 값들을 표시 후 나머지 값들을 읽음
- 13 / 2 = 6, 13 % 2 = 1, 몫은 6, 나머지는 1
- 6 / 2 = 3, 6 % 2 = 0, 몫은 3, 나머지는 0
- 3 / 2 = 1, 3 % 2 = 1, 몫은 1, 나머지는 1
- 13의 2진수 = 1101
문제 - 10진수 201을 16 진수로 변환
- 10진수 값을 몫이 16미만이 될 때까지 16으로 나누고 나머지 값들을 표시 후 10 이상의 숫자들을 영어 알파벳으로 변환 후 나머지 값을 읽음
- 201 / 16 = 12 , 201 % 16 = 9, 몫은 12 = C, 나머지는 9
- 201의 16진수 = C9
(2) n진수를 10 진수로 변환
- n진수에서 마지막 자리는 자리 숫자에 자리값 n⁰ 을 곱하고, 마지막에서 두 번째 자리는 자리 숫자에 자릿값인 n¹을 곱하고, 마지막에서 세 번째 자리는 자리 숫자에 자릿값인 n²를 곱하고 ⋯ 계산한 값들을 합산하여 10진수를 계산
문제 - 2진수 1101을 10진수로 변환(10진수 이하 진수를 10진수로 변환)
자리 숫자 | 1 | 1 | 0 | 1 |
자릿값 | 2³ = 8 | 2² = 4 | 2¹ = 2 | 2⁰ = 1 |
계산 | 1 X 8 = 8 | 1 X 4 = 4 | 0 X 2 = 0 | 1 X 1 = 1 |
계산한 값들을 합산 = 8 + 4 + 0 + 1 = 13(10진수) |
문제 - 16진수 C9를 10진수로 변환(10진수 초과 진수를 10진수로 변환)
자리 숫자 | C = 12 | 9 = 9 |
자릿값 | 16¹ = 16 | 16⁰ = 1 |
계산 | 12 X 16 = 192 | 9 X 1 = 9 |
계산한 값들을 합산 = 192 + 9 = 201(10진수) |
자리 숫자를 2진수로 변환 | C = 12 = 1100 | 9 = 1100 |
변환된 2진수의 각 자리를 10진수로 변환 | 11001100 = 128, 64, 0, 0, 8, 1, 0, 0 | |
변환된 10진수를 합산 = 128 + 64 + 8 + 1 = 201(10진수) |
2) 아스키 코드
(1) 아스키 코드(ASCII; American Standard Code for Information Interchange) 개념
- 미국 ANSI에서 표준화한 정보교환용 부호체계
- 영문 키보드로 입력할 수 있는 모든 기호가 할당된 기본적인 부호체계
(2) 주요 아스키 코드
10진수 | 부호 | 10진수 | 부호 | 10진수 | 부호 |
0 | NULL | 65 | A | 97 | a |
32 | space 1칸 | 66 | B | 98 | b |
48 | 0 | 67 | C | 99 | c |
49 | 1 | 90 | Z | 122 | z |
- c언어에서 NULL은 \0으로도 표기 됨
Chapter 02 - C언어
1. C언어 기본
1) C언어 기본 구조
- 본문 전에 처리하는 전처리 부분과 본문으로 구성되어 있음
- 헤더는 xxx.h 파일로 되어 있고, 헤더 안에는 프로그래밍에 필요한 함수들이 포함되어 있음
2) 전처리기
(1) 전처리기(Preprocessor)개념
- 실행 파일을 생성하는 과정에서 소스 파일 내에 존재하는 전처리 지시문을 처리하는 작업
(2) 전처리기 종류 - C언어에서 #이 붙으면 지시문 또는 전처리기 임
종류 | 설명 |
#include | C언어 프로그램에 헤더 파일을 포함할 때 사용하는 전처리기 |
#define | 매크로를 정의할 때 사용하는 전처리기 상숫값을 지정하기 위한 예약어로 구문의 상수로 치환할 때 사용하는 전처리기 |
// C언어 기본 코드
#include <stdio.h> // stdio.h 헤더파일을 읽어옴, 해당 파일 안에 printf함수가 포함됨
#define A 5 // A를 5로 변환
int main() { // main 함수의 시작부분(프로그램이 제일 처음 실행되는 부분)
printf("수제비 %d", A); // printf 함수로 수제비 문자열을 출력하고 %d 부분에 A인 5를 10진수로 출력
return 0; // 함수가 끝나고 0을 반환, main함수가 int main()으로 되어있기 때문에 return이 있어야 함
}
// 출력 : 수제비 5
2. 자료형
1) 자료형(Data Type)의 개념
- 프로그래밍 언어에서 실수, 정수 자료형과 같은 여러 종류의 데이터를 식별하는 형태
- 메모리 공간을 효율적으로 사용하고 2진수 데이터를 다양한 형태로 사용하기 위해 존재함
2) 자료형 유형
유형 | 설명 | 선언 형식 |
문자(Character) | 문자 하나를 저장하고자 할 때 사용하는 자료형 메모리에 저장은 숫자로 저장됨 |
char |
정수(Integer) | 정숫값을 저장하고자 할 때 사용하는 자료형 | int |
부동 소수점 (Floating Point) |
소수점을 포함하는 실수값을 저장하고자 할 때 사용하는 자료형 | float - 4byte, 소수점 6자리까지 double - 8byte, 소수점 15자리까지 |
3. 식별자
1) 식별자(Identifier)개념
- 변수, 상수, 함수 등 서로 구분하기 위해서 사용되는 이름, 프로그램의 구성요소를 구별하기 위해 사용함
2) 식별자 명명 규칙
구분 | 규칙 | 사용 가능 예시 | 사용 불가능 예시 |
사용 가능 문자 | 영문 대문자/소문자, 숫자, 밑줄(_)의 사용이 가능 | a, A, a1, _, _hello | ?a, <a |
변수 사용 규칙 | 첫 자리에는 숫자를 사용할 수 없음 변수 이름의 중간에는 공백을 사용할 수 없음 |
_1, a1, a100 my_student |
1, 1a, 1A, 1234 my student |
변수 의미 부여 | 이미 사용되고 있는 예약어의 경우 변수로 사용 불가 | For, If, While | int, short, long, for, while, do, continue, break, if, else |
- 예약어(Reserved Word) : 컴퓨터 프로그래밍 언어에서 이미 문법적인 용도로 사용되고 있는 단어로 식별자로는 사용할 수 없음, 자료형, 조건문, 반복문, 루프 제어 명령문, 함수 반환 값 등이 이에 해당함
3) 식별자 표기법
표기법 | 설명 | 예시 |
카멜 표기법 (Camel Case) |
여러 단어가 이어지면 첫 단어 시작만 소문자로 표시하고, 각 단어의 첫 글자는 대문자로 지정하는 표기법 | inputFunction |
파스칼 표기법 (Pascal Case) |
여러 단어가 이어지면 각 단어의 첫 글자는 대문자로 지정하는 표기법 | InputFunction |
스네이크 표기법 (Snake Case) |
여러 단어가 이어지면 단어 사이에 언더바를 넣는 표기법 | input_function |
헝가리언 표기법 (Hungarian Case) |
두어에 자료형을 붙이는 표기법 int형일 경우 n, char일 경우 c, 문자열일 경우 sz를 붙임 |
nScore |
728x90
'2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비) > 실기 6강 - 프로그래밍 언어 활용' 카테고리의 다른 글
Chapter 02 - C언어(함수) (0) | 2024.05.24 |
---|---|
Chapter 02 - C언어(배열, 문자열, 구조체) (0) | 2024.05.21 |
Chapter 02 - C언어(조건문, 반복문) (0) | 2024.05.21 |
Chapter 02 - C언어(연산자) (0) | 2024.05.20 |
Chapter 02 - C언어(변수, 표준 입출력 함수) (0) | 2024.05.19 |