배열은 다수의 데이터를 저장하고 처리하는 경우에 유용하게 사용할 수 있다.
예를 들어 한반에 30명있을때 각각의 학생들의 점수를 입력받아 저장 해야할때 배열이 쓰이게된다.
위같은 상황에서 배열을 사용하지 않으면 변수선언은 물론 입력받는 것부터 저장, 출력도 30번을 적어야한다.
이 세가지만 하더라도 코드의 줄은 90줄이다. 그래서우리는 배열이라는 것을 사용하는것이다.
한 반에 10명이 있을때 각각의 학생들의 점수를 입력받아 저장, 출력하는 코드를 짜보았다 코드는 아래와 같다.
#include<stdio.h>
#define SIZE 10
#pragma warning(disable:4996)
int main(void)
{
int students[SIZE];
int i;
int sum=0;
for (i = 0; i < SIZE; i++) {
printf("%2d 번 >>>> ", i + 1);
scanf("%d", &students[i]);
sum += students[i];
}
printf("%d명의 평균 점수는 %d입니다.", SIZE, sum/SIZE);
}
이 처럼 배열을 사용하게 되면 반복문하나로 다수의 변수의 값을 지정해줄수있다.
배열을 선언 할때는 일반적인 변수 선언과는 조금 차이가 있다.
int number[4];
처럼 배열을 선언하는데 여기서 int는 배열을 이루는 변수의 자료형이고
number은 배열의 이름이며 [4]는 배열의 길이가 된다.
쉽게말해 긴 상자에 한 색상(자료형)의 양말(변수)이 4개 들어 있다는 것이다.
그리고 이것을 1차원 배열이라 한다.
[int][int][int][int]
하나의 배열의 자료형은 모두 동일 해야하며 정수형, 실수형, 문자형 모두다 사용할 수 있다.
배열의 길이가 3일때 배열의 첫번째 요소는 0이고 두번째 요소는 1이고 세번째 요소는 2이다.
배열의 위치는 1-2-3 이아닌 0부터 시작하여 0-1-2 이다. 자주 혼돈하므로 참고하자.
배열을 사용함에 있어 반복문은 필수이다.
배열을 초기화 할때는 {}이 기호를 이용하여 아래 처럼 초기화를 할수있다. (배열의 선언과 초기화)
int number[5] = {1,2,3,4,5} // 5개의 배열 선언과 동시에 차례대로 1,2,3,4,5로 초기화
int number[5] = {0} // 0으로 모두 초기화
int number[5] = {1} // 0의자리인 첫번째 요소를 1로 초기화하고 남은 공간은 0으로 초기화
int number[] = {1,2,3,4,5,6,7} // 배열의 길이가 자동으로 7개가 되며 해당 숫자로 초기화된다.
이외에도 배열을 이용한 문자열 배열과 2차원 배열 그리고 3차원 배열이 있다.
'C' 카테고리의 다른 글
C언어 들여쓰기 단축키(자동정렬 단축키) (2) | 2014.05.22 |
---|---|
C언어 포인터(Pointer)란? 포인터의 완벽 이해 (4) | 2014.05.19 |
c언어 반복문 연습 여러가지 기호로 삼각형 출력하기 (0) | 2014.05.11 |
c언어 문자열의 길이 구하기 (2) | 2014.04.29 |
c언어 배열의 숫자를 반대로 출력하기 (비트연산자 이용) (0) | 2014.04.29 |