관심쟁이 영호

[C언어기초 #4.1]배열을 만들어보자!ㅣ1차원 배열ㅣ2차원 배열 본문

학교공부/C언어의 왕!

[C언어기초 #4.1]배열을 만들어보자!ㅣ1차원 배열ㅣ2차원 배열

관심쟁이 영호 2020. 2. 22. 21:26
반응형

안녕하세요!

최고왕입니다 ㅎㅎ


오늘은 배열을 실제로 만들어보는 시간을 가져볼 예정이에요!

 

바로 배열을 만드는 코드를 만들어 볼게요 ㅎㅎ

 

 

3가지의 타입이 들어가는 배열을 만들었어요!

 

각각의 단어가 이해 안 가실 수도 있으니 더 자세히 보겠습니다!

1. 배열에 들어가는 데이터가 어떤 타입인지 컴퓨터에게 설명해주는 부분입니다. 여기서는 int형의 데이터가 들어가요!

 

2. 만들 배열의 이름을 정해주는 부분입니다! 여기서는 arr이 만든 배열의 이름이겠네요!

 

3. 배열의 크기를 설정해주는 부분입니다! 여기서는 배열의 크기가 5겠네요!

 

그럼 위쪽의 그림으로 돌아가면

 

int형 데이터가 들어가는 5의 크기를 가지는 arr이름의 배열.

 

float형 데이터가 들어가는 5의 크기를 가지는 arr2이름의 배열. 

 

double형 데이터가 들어가는 5의 크기를 가지는 arr3이름의 배열.

 

그럼 int형 배열에 초기화(만들어진 공간에 데이터를 넣는다!)를해볼게요!

 

 

arr이라는 이름의 배열의 0번째 자리에 0이라는 int형 숫자를 초기화했어요!

arr이라는 이름의 배열의 1번째 자리에 1이라는 int형 숫자를 초기화했어요!

arr이라는 이름의 배열의 2번째 자리에 2이라는 int형 숫자를 초기화했어요!

arr이라는 이름의 배열의 3번째 자리에 3이라는 int형 숫자를 초기화했어요!

arr이라는 이름의 배열의 4번째 자리에 4이라는 int형 숫자를 초기화했어요!

 

실제로 만든 배열을 시각적으로 보기 위해서 도식화시켜볼게요!

메모리에 5개의 자리를 만들어서 해당하는 숫자인 0, 1, 2, 3, 4가 들어간 모습이에요!

 

5개의 자리 중 첫 번째 자리에는 0이 들어갔겠네요~?

그 해당하는 값을 알아보기 위해서는

 

arr [해당하는 자리의 숫자] 이렇게 나타내요!

그럼 arr [0]의 자리에는 0이라는 숫자가 들어갔어요!

 

근데 5개의 자리이면 1, 2, 3, 4, 5로 되어야 하는데

0, 1, 2, 3, 4라고 표현되어있어요!

이유는 저도 아직 자세히는 모르지만!

컴퓨터는 0부터 시작되게 되어있어요 ㅎㅎ

 

그래서 5개의 자리를 입력했을 때 0, 1, 2, 3, 4인 5개의 자리가 만들어져요.

그럼 초기화를 다시 하고 반복문을 5번 반복하여서 해당하는 arr값을 하나하나 출력해볼게요!

 

 

 

for문의 i는 0부터 시작하고 i는 반복문을 한번 끝낼 때마다 1씩 증가해요!

그러면 i < 5이니까 총 0, 1, 2, 3, 4까지 증가하게 될 것이고

총 5번의 반복만 이루어지기 때문에

5의 크기만 반복하게 돼요!

 

출력을 해보면,

이렇게 출력이 완벽하게 되었네요!

 

2 차열 배열

2차원 배열은 1차원 배열보다 좀 더 세세하게 분해하는 것입니다!

 

먼저 배열을 선언해줄게요!

아까의 1차원 배열과 똑같은 방식에서 [5]의 값만 늘었어요!

 

그럼 2차원 배열을 보기 좋기 시각화해볼게요!

 

이런 식으로 더 세세하게 분해되었다고 보시면 돼요!

 

테이블 구조를 보는 것 같네요.. ㅋㅋ

 

이것 또한 같은 방식으로 초기화합니다!

 

이렇게요!

이렇게 초기화를 하게 된다면

 

테이블 또한 이렇게 된다고 생각하지면 되겠지요~?

 

그럼 하나 한 초기화하기는 힘드니까 반복문을 사용해서 초기화, 출력까지 해볼게요!

 

헐.. 반복문 속에 반복문이 하나 더 있어요 ㅠㅠ

이렇게 해야 반복문을 똑바로 초기화할 수가 있는데요!

 

중복된 반복문을 말로 풀어서 설명해드리면!

 

i가 0일 때 j라는 반복문을 돌게 돼요!

j라는 반복문은 j <5이므로 5번 돌게 될 것이고 그 반복문 내에서 초기화가 진행돼요!

 

그리고 하나하나 출력을 하고 있어요!

아! 참고로 printf("\n") 이것은 줄 바꿈을 위해서 써넣어 준겁니다!

 

이해가 안 가신다면 똑같이 친다음 해당 구문만 빼고 출력을 한번 해보세요!

그럼 출력 화면을 보실게요.

 

오홍 대박 초기화를 성공하고 똑바로 출력이 되었어요!

 

 

끝!!

 

 

오늘은 배열에 대해서 공부를 해보았어요!

 

이렇게 끝냈다고 배열에 대해서 모든 것을 안 것은 아니에요!

 

배열에 대한 관련 함수도 잘 알아야 하고요!

배열의 원리도 알아야 해요 ㅠㅠ

너무 알아둘게 많아요.. ㅋㅋㅋ

 

한번 배열 관련 함수를 찾아보시기를 바라요 ㅎㅎ

만약에 시간 난다면 관련 함수를 정리해서 제가 포스팅해드릴게요!

 

 

 


오늘도 성공적으로 공부를 끝마쳤어요 ㅎㅎ

다소 부족한 면이 보이는데요 ㅠㅠ

 

혹시나 틀린 사항이나 이해 못한 부분이 있다면

댓글로 언제든지 말씀해주세요!

 

항상 최선을 다하는 최고왕이 되겠습니다 ㅎㅎ

 

우리 같이 노력해서 원하는 미래를 만들어보는 거예요!

파이팅

 

IT공부를 열심히 하고 싶은 최고왕이.

300x250
Comments