Chủ Nhật, 28 tháng 4, 2019

C언어 배열 출력과 입력받기 : 네이버 블로그

c언어 배열 예제,c언어 배열 함수,c언어 배열 복사,c언어 배열 입력,c언어 배열 포인터,c언어 배열 크기,c언어 배열 동적할당,c언어 배열 선언,c언어 배열 초기화,c언어 배열 출력,

C언어 배열 출력과 입력받기

c언어 배열 예제,c언어 배열 함수,c언어 배열 복사,c언어 배열 입력,c언어 배열 포인터,c언어 배열 크기,c언어 배열 동적할당,c언어 배열 선언,c언어 배열 초기화,c언어 배열 출력,

2017. 4. 21. 14:28

이웃추가

이번 포스팅에는
계속 이어서 C언어 배열 출력과
입력받는것에 대해 알아볼께요.

배열의 선언과 초기화하는 
방법에 대해서는
위 포스팅에 정리되어있어요.

1.C언어 배열 출력하기

아래는 배열에 대해 설명했던 그림인데요.
자세한 내용이 알고싶다면
이 포스팅의 바로 전 포스팅인
변수주소와 배열주소 글을 한번
읽어주세요

암튼 이 그림을 보면
집이름,방이름과 집의주소,방의주소 가 보이시죠?

배열을 우리가 사는 집에 
비유해 본건데요.

배열의 값을 출력하기 위해서는
방이름을 이용하면 되요.

이렇게 서식문자 하나에
배열의 방이름을 작성해주면 되는데요.
배열의 방 안에 값이 저장되기 때문에
배열이름[숫자]는 곧 그 안의 값을 나타내요.

그런데 배열의 크기가 5인 배열을
출력해서 하나하나 입력하기가 쉬웠지만,
배열의 크기가 더 커지면
하나하나 입력하는게 무지 힘들겠지요?

그렇기때문에 C언어 배열 출력을
할때에는 반복문을 사용하는데요.

반복문을 사용할수 있는 이유는
배열의 첨자를 변수나 식으로
작성할수 있기 때문인데요.

*배열의 첨자 : 배열의 값을 나타낼때
대괄호 안에 몇번째인지 작성하는 숫자. 
ex ) array[2] = 2가 첨자.

이렇게 for 반복문을 이용해
C언어 배열 출력을 좀 더
쉽게 코딩할수 있어요.

프로그램을 실행했을때 결과값은
당연히 하나하나 작성했던것과
차이가 없어요.ㅎㅎ

2. C언어 배열 입력받기

입력함수로는 scanf 함수를 
사용할껀데요.

scanf 함수에서 변수를 입력받을때에
인수는 주소연산자(&)을 이용해 
주소로 넘겨줘야하는데요.

배열을 입력받을때에도
배열의 주소를 인수로  사용해줘야해요.
그렇다면 배열의 주소는 어떻게 구할까요?

우리가 지금 구해야되는건
집주소가 아닌 방주소 인데요.

배열 주소를 구하는 방법은 두가지가 있는데요
방이름에 주소연산자를 붙여주거나,
+연산자를 사용할수도 있어요.

먼저 주소연산자 이용해
입력받는걸 보여드릴께요.

이렇게.
값을 나타내는 방이름
앞에 주소연산자(&)을 붙여
주소를 구해주면 되요.

그리고 두번째로 + 연산자는
위 처럼 배열이름 + 숫자로 코딩해주면
되는데요.

이 뜻은 +연산자는
array의 주소를 기준으로 
주소를 구하는데요.

예를 들어 보자면
위 코드에서 i의 값이 1이라면
식이 array+1이 되겠지요?

그럼 array의 주소(집의주소)를 기준으로
한칸 이동해 두번째방의 주소가 구해지는거지요.

+0이면 첫번째방,
+1이면 두번째방,
+2이면 세번째방 이런식으로요.

저는 처음에 배열이름 자체는 주소를 뜻한다는
말만 기억하고 주소연산자나 +연산자를
이용하지않고 array[i] 이런식으로 코딩을 해서
멘붕이 온적이 있었는데요.

저는 독학이여서 ㅎㅎㅎ
이렇게 사소한부분에서 막히더라구요.

위의 배열하숙집 그림보고 
꼭 구분해서 기억하세요~~

여기까지 C언어 배열 출력과 입력받기에
대해 알아봤어요.
다음 포스팅에서는 배열관련
문제를 풀어볼까 생각중이네요 ㅎㅎ

Link Source : http://m.blog.naver.com/dd1587/220988783965

Không có nhận xét nào:

Đăng nhận xét