배열
1차원 배열 선언 [2020년 1회]
㉮ C언어의 1차원 배열 선언
구분 | 선언 |
초깃값이 없는 경우 | 타입 배열명[배열_요소_개수]; |
초깃값이 있는 경우 | 타입 배열명[배열_요소_개수]={초깃값}; |
- 배열 요소 개수에 정의된 숫자만큼 같은 타입의 데이터 공간이 할당된다.
- 초깃값을 선언하지 않을 경우 쓰레깃값이 저장된다.
- 배열 요소 개수보다 적은 개수만큼 초기화할 경우 초깃값이 명시되지 않은 값들은 자동으로 0으로 초기화된다.
㉯ 자바의 배열 선언
구분 | 선언 |
초깃값이 없는 경우 | 타입 []배열명 = new 타입[배열_요소_개수]; |
타입 배열명[] = new 타입[배열_요소_개수]; | |
초깃값이 있는 경우 | 타입 []배열명 = {초깃값}; |
- 배열 요소 개수에 정의된 숫자만큼 같은 타입의 데이터 공간이 선언된다.
- 배열 요소 개수를 명시하지 않고 초깃값이 정의되어 있을 경우 초깃값 개수만큼 공간이 선언된다.
- 초깃값을 선언하지 않을 경우 정수일 때는 0, 실수일 때는 0.0, 문자열일 때는 NULL이 저장되어 있다.
- 불린, 문자, 정수, 실수 등을 배열로 선언할 때 사용한다.
- 자바에서 배열의 크기를 구할 때는 length 속성을 사용한다.
㉯-2 자바 언어의 2차원 배열 선언 [2021년 3회]
구분 | 선언 |
초깃값이 없는 경우 | 타입 [][]배열명 = new 타입[행의 개수][열의 개수]; |
타입 배열명[][] = new 타입[행의 개수][열의 개수]; | |
초깃값이 있는 경우 | 타입 [][]배열명 = {{초깃값}, {초깃값}, }; |
- 배열 요소 개수에 정의된 숫자만큼 같은 타입의 데이터 공간이 선언됨
- 배열 요소 개수를 명시하지 않고 초깃값이 정의되어 있을 경어 초깃값 개수만큼 공간이 선언된다.
- 초깃값을 선언하지 않을 경우 정수일 때는 0, 실수일 때는 0.0, 문자열일 때는 NULL이 저장되어 있다.
- 불린, 문자, 정수, 실수 등을 배열로 선언할 때 사용
- 자바에서 배열의 크기를 구할 때는 length 속성을 사용함
배열과 포인터
1차원 배열과 1차원 포인터 [2021년 2회]
- 1차원 배열에서 배열명만 단독으로 사용할 경우 1차원 포인터와 동일하다.
- 1차원 배열일 때 배열명[요소] 형태, *(배열명+요소), 1차원 포인터일 때 포인터[요소] 형태, *(포인터+요소)일 경우 값을 가리킨다.
- 데이터_타입 배열명[요소];일 때 다음 코드는 동일하다.
구분 | 코드 |
배열의 주소 | 배열명==&배열명[0]; |
배열의 0번지 값 | 배열명[0]==*배열명; |
파이썬 [2020년 2회]
자료형 | 설명 |
세트형 | 중복된 원소를 허용하지 않는 집합의 성질을 가지고 있는 자료구조 |
리스트형 | 크기가 가변적으로 변하는 선형리스트의 성질을 가지고 있는 자료구조 |
튜플형 | 초기에 선언된 값에서 생성, 삭제, 수정이 불가능한 형태의 자료구조 |
딕셔너리형 | 키와 값으로 구성된 객체를 저장하는 구조로 되어 있는 자료구조 |
① 세트(Set)형
㉮ 세트형 개념
세트형은 중복된 원소를 허용하지 않는 집합의 성질을 가지고 있는 자료형이다.
㉯ 세트형 선언
세트형 = set([요소1, 요소2, ...])
세트명 = {요소1, 요소2, ...}
set라는 키워드로 세트형을 초기화하거나 {, }를 이용하여 세트형을 선언
㉰ 세트형 메서드
메서드 | 설명 |
add(값) | 값을 1개 추가하는 메서드 |
update([값1, 값2, ...]) | 여러 개의 값을 한꺼번에 추가하는 메서드 |
remove(값) | 특징 값을 제거하는 메서드 |
② 리스트(List)형
㉮ 리스트형 개념
리스트는 크기가 가변적으로 변하는 선형리스트의 성질을 가지고 있는 자료형이다.
㉯ 리스트형 선언
리스트명 = [요소1, 요소2, ...]
[, ]를 이용하여 리스트형을 선언한다.
㉰ 리스트형 메서드
메서드 | 설명 |
append(값) | 리스트 마지막 요소 뒤에 값을 추가하는 메서드 |
insert(인덱스, 값) | 리스트의 인덱스 위치에 값을 삽입하는 메서드 |
remove(값) | 리스트에서 해당하는 값을 제거하는 메서드 해당하는 값이 여러 개 있을 경우 가장 앞에 있는 값을 제거 |
㉱ 리스트 인덱싱
- 리스트는 여러 값으로 이루어져 있는데 인덱스를 이용해서 중간값에 접근할 수 있다.
- 리스트가 n개의 값을 가질 때 인덱스는 다음과 같다.
첫 번째 요소 | 두 번째 요소 | ... | 뒤에서 두 번째 요소 | 마지막 요소 |
0 | 1 | ... | (n-2) | (n-1) |
-n | -(n-1) | -2 | -1 |
㉲ 리스트 슬라이싱
리스트 슬라이싱은 리스트에서 여러 개의 데이터에 동시에 접근한느 기법이다.
향태 | 설명 |
시작 인덱스 |
- 슬라이싱을 시작할 인덱스 - 시작할 경우 '리스트명[: 종료_인덱스]' 또는 '리스트명[: 종료_인덱스 : 스텝]' 형태가 됨 - 생략할 경우 처음부터 슬라이싱 |
종료 인덱스 |
- 슬라이싱을 종료할 인댁스 - 종료 인덱스에 있는 인덱스 전까지만 슬라이싱 - 생략할 경우 '리스트명[시작_인덱스 : ]' 또는 '리스트명[시작_인덱스: :스텝]' 형태가 됨 - 생략할 경우 마지막까지 슬라이싱 |
스텝 | - 몇 개씩 끊어서 슬라이싱을 할지 결정하는 값 - 생략할 경우 '리스트명[시작_인덱스 : 종료_인덱스]' 또는 '리스트명[시작_인덱스 : 종료_인덱스 : ]' 형태가 됨 - 생략할 경우 1이 기본값 |
③ 튜플형
㉮ 튜플(Tuple)형 개념
튜플형은 초기에 선언된 값에서 값을 생성, 삭제, 수정이 불가능한 형태의 자료형이다.
㉯ 튜플형 선언
튜플명 = (요소1, 요소2, ...)
(,)를 이용하여 튜플형을 선언한다.
㉰ 튜플 인덱싱
- 튜플은 여러 값으로 이루어져 있는데 인덱스를 이용해서 중간값에 접근할 수 있다.
- 튜플이 n개의 값을 가질 때 인덱스는 다음과 같다.
첫 번째 요소 | 두 번째 요소 | ... | 뒤에서 두 번째 요소 | 마지막 요소 |
0 | 1 | ... | (n-2) | (n-1) |
-n | -(n-1) | -2 | -1 |
㉱ 튜플 슬라이싱
튜플 슬라이싱은 튜플에서 여러 개의 데이터에 동시에 접근하는 기법이다.
④ 딕셔너리형
㉮ 딕셔너리(Dictionary)형 개념
딕셔너리형은 키와 값으로 구성된 객체를 저장하는 구조로 되어 있는 자료형이다.
㉯ 딕셔너리형 선언
딕셔너리명 = {키1:값1, 키2:값2, ...}
{, } 안에 콜론(:)을 이용하여 키와 값을 구분하여 선언한다.
㉰ 딕셔너리형 요소 추가
딕셔너리명[키] = 값
- 기존 변수에 키와 값을 추가한다.
- 기존 변수에 해당 키에 해당하는 값이 있었으면 값을 변경한다.
㉱ 딕셔너리형 요소 삭제
del 딕셔너리명[키]
기존 변수에서 해당 키와 키에 해당하는 값을 삭제한다.
식별자
식별자 표기법 [2020년 3회]
표기법 | 설명 |
카멜 표기법 (Camel Case) |
식별자 표기 시에 여러 단어가 이어지면 첫 단어 시작만 소문자로 표시하고, 각 단어의 첫 글자는 대문자로 지정하는 표기법 |
파스칼 표기법 (Pascal Case) |
식별자 표기 시에 여러 단어가 이어지면 각 단어의 첫 글자는 대문자로 지정하는 표기법 |
스네이크 표기법 (Snake Case) |
식별자 표기 시에 여러 단어가 이어지면 단어 사이에 언더바를 넣는 표기법 |
헝가리안 표기법 (Hungarian Case) |
식별자 표기 시 두어에 자료형을 붙이는 표기법 식별자 표기 시에 int형일 경우 n, char형일 경우 c, 문자열일 경우 sz를 붙임 |
연산자 종류 상세 [2021년 3회]
증감 연산자(Increment & Decrement Operator)
증감 연산자는 피연산자를 1씩 증가 혹은 1씩 감소시킬 때 사용하는 연산자이다.
연산자 | 내용 |
++x | 변수의 값을 1 증가시킨 후에 해당 변수를 사용하는 연산자 |
x++ | 변수를 사용한 후에 변수의 값을 1 증가시키는 연산자 |
--x | 변수의 값을 1 감소시킨 후에 해당 변수를 사용하는 연산자 |
x-- | 변수를 사용한 후에 변수의 값을 1 감소시키는 연산자 |
시프트 연산자(Shift Operator) [2021년 2회]
시프트 연산자는 비트를 이동시키는 연산자이다.
연산자 | 내용 |
<< | 왼쪽 값을 오른쪽 값만큼 비트를 왼쪽으로 이동하는 연산자 |
>> | 왼쪽 값에 오른쪽 값만큼의 부호 비트를 채우면서 오른쪽으로 이동하는 연산자 |
관계 연산자(Relation Operate) [2021년 3회]
관계 연산자는 두 피연산자 사이의 크기를 비교하는 연산자이다.
연산자 | 내용 |
> | 왼쪽에 있는 값이 오른쪽에 있는 값보다 크면 참을 반환하고, 그렇지 않으면 거짓을 반환하는 연산자 |
< | 왼쪽에 있는 값이 오른쪽에 있는 값보다 작으면 참을 반환하고, 그렇지 않으면 거짓을 반환하는 연산자 |
>= | 왼쪽에 있는 값이 오른쪽에 있는 값보다 크거나 같으면 참을 반환하고, 그렇지 않으면 거짓을 반환하는 연산자 |
<= | 왼쪽에 있는 값이 오른쪽에 있는 값보다 작거나 같으면 참을 반환하고, 그렇지 않으면 거짓을 반환하는 연산자 |
== | 왼쪽에 있는 값이 오른쪽에 있는 값과 같으면 참을 반환하고, 그렇지 않으면 거짓을 반환하는 연산자 |
!= | 왼쪽에 있는 값이 오른쪽에 있는 값과 다르면 참을 반환하고, 그렇지 않으면 거짓을 반환하는 연산자 |
대입 연산자(Assignment Operator) [2021년 3회]
- 대입 연산자는 변수에 값을 대입할 때 사용하는 연산자이다.
- 오른쪽에 있는 값을 이용해 왼쪽의 변수에 값을 대입한다.
연산자 | 내용 |
= | 왼쪽의 변수에 오른쪽의 값을 대입하는 연산자 |
+= | 왼쪽의 변수에 오른쪽의 값을 더한 후, 그 결과값을 왼쪽의 변수에 대입하는 연산자 |
-= | 왼쪽의 변수에 오른쪽의 값을 뺀 후, 그 결과값을 왼쪽의 변수에 대입하는 연산자 |
*= | 왼쪽의 변수에 오른쪽의 값을 곱한 후, 그 결과값을 왼쪽의 변수에 대입하는 연산자 |
/= | 왼쪽의 변수에 오른쪽의 값을 나눈 후, 그 결과값을 왼쪽의 변수에 대입하는 연산자 |
%= | 왼쪽의 변수에 오른쪽의 값을 나눈 후, 그 나머지를 왼쪽의 변수에 대입하는 연산자 |
, | 동시에 여러 개의 값을 대입하는 연산자 파이썬에서만 제공하는 연산자 |
switch 문 [2020년 1회]
- 조건에 따라 여러 개의 선택 경로 중 하나를 취하고자 할 때 사용하는 명령어이다.
- 파이썬 언어에서는 switch 문이 존재하지 않는다.
- switch 문에서는 조건에 해당하는 case로 이동한다.
- 해당하는 case가 종료되었을 때 break가 있으면 switch 문을 빠져나온다.
- break가 존재하지 않을 경우 break를 만날 때까지 switch 문에 있는 다른 문장을 실행한다.
일반 for 문 [2021년 1회, 2회]
초기식, 조건식, 증감식을 지정하여 반복하는 명령어이다.
① C, 자바 언어에서의 for 문
② 파이썬에서의 for 문
- range 함수에서 사작을 생략하면 0, 스텝 값을 생략하면 1이 자동으로 들어간다.
- range 함수에 값이 하나일 경우 시작 = 0, 스텝 = 1이 자동으로 들어가고, range 함수에 값이 두 개일 경우 스텝 = 1이 자동으로 들어간다.
for each 문 [2021년 1회]
for each 문은 배열이나 리스트의 크기만큼 반복하는데, 반복할 때마다 배열이나 리스트의 항목을 순차적으로 변수에 대입하는 반복문이다.
① 자바 for each 문
for(제어변수 : 배열){
문장;
}
② 파이썬 for each 문
for 변수 in 리스트:
문장
1차원 구조체 배열과 1차원 구조체 포인터 [2021년 1회, 3회]
- 1차원 구조체 배열에서 배열명만 단독으로 사용할 경우 1차원 구조체 포인터와 동일하다.
- 1차원 구조체 배열일 때 배열명[요소].변수명 형태, (*(배열명+요소))..변수명, 배열명->변수명 형태, (배열명+요소)->변수명 형태로 값을 가리킨다.
- 1차원 포인터일 때 포인터[요소].변수명 형태, (*(포인터+요소)).변수명, 포인터->변수명 형태, (포인터+요소)->변수명 형태로 값을 가리킨다.
사용자 정의 함수
사용자 정의 함수 개념 [2021년 2회]
사용자 정의 함수는 사용자가 직접 새로운 함수를 정의하여 사용하는 방법이다.
클래스(Class)
클래스 선언 [2020년 2회]
클래스를 일반변수로 선언한 경우 선언함과 동시에 생성자가 호출되고, 일반변수로 선언한 곳에서 함수가 종료되면 소멸자가 호출된다.
생성자(Constructor) [2020년 4회]
- 생성자는 해당 클래스의 객체가 생성될 때 자동으로 호출되는 특수한 종류의 메서드이다.
- 생성자는 일반적으로 클래스의 멤버 변수를 초기화하거나 클래스를 사용하는데 필요한 경우 사용한다.
- 자바에서는 클래스 명과 동일한 메서드명을 가지고, 반환 값이 없다.
- 파이썬에서는 __init__이라는 메서드명을 사용하고, 첫 번째 매개변수로 self를 적어주며, 반환값이 없다.
오버라이딩(Overriding) [2021년 2회]
오버라이딩은 하위 클래스에서 상위 클래스 메서드를 재정의할 수 있는 기능이다.
오버라이딩 특징은 다음과 같다
- 오버라이드하고자 하는 메서드가 상위 클래스에 존재하여야 한다.
- 메서드 이름은 같아야 한다.
- 메서드 매개변수 개수, 데이터 타입이 같아야 한다.
- 메서드 반환형이 같아야 한다.
[참고 : 수제비 2022]
'자격증 > 정보처리기사' 카테고리의 다른 글
chapter 08. 서버 프로그램 구현 (0) | 2022.05.02 |
---|---|
chapter 07. SQL 응용 (1) | 2022.04.27 |
chapter 05. 인터페이스 구현 (0) | 2022.04.24 |
chapter 04. 통합 구현 (0) | 2022.04.24 |
chapter 03. 데이터 입출력 구현 (0) | 2022.04.21 |