오늘은 C++의 배열을 학습하고, 코드로 작성해 보자.
배열이 변수와 다른 점은 길이를 가진다는 점이다.
배열이 어떤 경우에 필요한지 이해하고 작성할 수 있도록 해보자.
배열이란?
배열은 데이터를 연속적으로 저장할 수 있는 변수이다.
일반적인 변수는 한 개의 데이터를 저장하는데, 배열은 여러 개의 데이터를 저장할 수 있다.
그래서 연관성이 있는 데이터를 한 개의 변수에 저장하기 좋다.
먼저, 변수 생성 방법을 보자.
int num1 = 1;
int num2 = 2;
int num3 = 3;
숫자 1, 2, 3을 각각 num1, num2, num3에 저장했다.
변수 세 개를 각각 생성하고 저장하는 코드는 조금 번거로워 보이기도 한다.
그럼 이번에는 배열을 생성해 숫자를 저장해보자.
int num[5];
num[0] = 1;
num[1] = 2;
num[2] = 3;
배열 num의 길이를 5로 생성해 1, 2, 3을 저장했다.
변수 num1, num2, num3을 따로 관리하던 것과 달리 배열 num 하나에 1, 2, 3 세 개 숫자가 모두 들어간 것이다.
아래와 같이 간단히 작성도 가능하다.
int num[5] = {1, 2, 3};
한 개씩 저장하는 방법도 있지만, 이렇게 한 번에 저장하는 방법도 있다.
배열의 구조
배열의 구조를 살펴보자.
배열 arr을 그림으로 그려보았다.
길이가 7인 배열을 생성했다.
7개의 칸으로 표현되었는데, 각 칸의 아래에는 0부터 숫자가 쓰여있다.
이것을 인덱스라고 하는데, 배열의 각 메모리를 의미한다.
int arr[10];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
배열의 첫 번째 칸부터 1, 2, 3을 저장한다고 가정해보자.
배열의 0번째 인덱스가 바로 첫 번째 칸이다.
그러므로 여섯 번째 칸에 데이터를 저장하고 싶다면 arr[5]에 저장해야 한다.
배열을 활용한 코드 구현하기
배열을 활용해서 코드를 작성해보자.
학생의 점수를 저장하는 코드를 작성해보자.
int score[10] = {90, 85, 100, 95, 100};
배열 score를 길이 10으로 생성했다.
학생의 점수는 정수값이기 때문에 int형으로 선언했다.
그리고 {} 안에 콤마로 구분하여 점수를 작성했다.
이렇게 작성하면 각 인덱스에 직접 저장하지 않아도 데이터를 한 번에 작성할 수 있다.
cout << "첫 번째 학생의 점수는 " << score[0] << "입니다." << endl;
첫 번째 학생의 점수는 90 입니다.
이번에는 학과명을 저장하는 배열을 작성해보자.
char major[20] = "electronic";
학과명은 문자이므로 char형 배열 major를 생성했다.
문자열의 길이보다 배열의 길이가 길어야 하므로 20으로 설정했다.
학과명은 꽤 길 수 있으니 대부분의 길이를 저장할 수 있을 만한 숫자로 적당히 선언했다.
char형 변수에는 문자를 한 개 저장할 수 있고, 작은 따옴표 안에 문자를 작성한다.
하지만 배열을 문자열을 저장하므로 큰 따옴표 안에 작성한다.
cout << "My major is " << major << endl;
My major is electronic
char형 배열은 인덱스로 순서대로 호출하지 않더라도, 배열명을 입력하면 바로 모든 문자 출력이 가능하다.
오늘은 배열의 개념을 학습하고 코드를 작성해 보았다.
배열이 변수와 다른 점을 알아보고, 적절한 길이와 데이터 타입을 선언해 배열을 생성하는 연습을 해보자.
'2025 C언어 강의' 카테고리의 다른 글
C++ for 반복문을 공부하자 (1) | 2025.01.13 |
---|---|
C++ 조건문 if, else if, else를 공부하자! (1) | 2025.01.12 |
C++ 함수를 공부하자 (함수 생성, 반환형, return 0) (1) | 2025.01.10 |
C++ 변수를 공부하자 (int, char, float 데이터 타입) (2) | 2025.01.09 |
C++ 메인 함수를 공부하자 (int main, void main, return) (6) | 2025.01.05 |