이제 이 코드의 문제가 무엇인지 쉽게 파악할 수 있을 것입니다. 바로 학생들의 정보가 서로 모여 있지 않고 흩어져 있다는 것이지요.
그림 12-1 | 구조체 변수를 하나씩 생성하면 학생들의 정보가 흩어져서 저장됨
이 문제를 해결하려면 역시 구조체에도 배열을 사용하면 됩니다. 구조체 배열을 선언하는 방법은 일반 자료형 배열을 선언하는 것과 같습니다.
int a[10]; struct myclass a[10]; // 구조체 배열 선언 a[0].number = 23; // 구조체 배열 첫 번째 요소의 멤버 변수 number 초기화 a[0].weight = 75.2; // 구조체 배열 첫 번째 요소의 멤버 변수 weight 초기화 a[0].height = 180.3; // 구조체 배열 첫 번째 요소의 멤버 변수 height 초기화 a[1].number = 27; // 구조체 배열 첫 번째 요소의 멤버 변수 number 초기화 … a[9].number = 75;