Page 158 고등학교 프로그래밍 교과서
P. 158
2 구조체의 정의
실제 앞에서 사용한 각 학생별 성적 정보 구조체는 다음과 같이 정의할 수 있다.
struct myGrade { 구조체 키워드와 구조체 이름
char *name;
int korean;
구조체 멤버
int english;
int math;
};
위 코드는 여러 데이터를 가진 하나의 사용자 정
의 데이터형을 새로 만든다. 구조체를 정의한 뒤에
이 구조체를 사용하려면 일반적인 원시 변수를 선언
하듯이 구조체 변수를 선언하고 정의한다. 이때 선
name korean english math
언과 정의는 별도로 할 수 있다. 구조체 변수가 생성
되면 그 구조체 안에 있는 각각의 멤버에 접근할 때에는 (.)연산자를 사용한다.
printf("%d", kmy.math);
예제 myGrade 구조체를 이용하여 kmy라는 구조체 변수를 선언하고 사용하는 프로
그램을 작성해 보자.
실행 결과 프로그램
성명: 강모연, 국어 01 #include
02 struct myGrade { 구조체 키워드와 구조체 이름
100점, 영어 95점, 수
03 char *name;
학 85점
04 int korean;
구조체 멤버
05 int english;
06 int math;
07 };
08 void grade(struct myGrade st)
09 {
10 printf(" 성명: %s, 국어 %d점, 영어 %d점, 수학 %d점\n", st.name,
st.korean, st.english, st.math);
11 }
12 int main( )
13 {
14 struct myGrade kmy = {"강모연", 100, 95, 85};
15 grade(kmy);
16 return 0;
17 }
156 Ⅱ. C 프로그래밍의 기초
(책)2015프로그래밍-교과서3차심의본 본문.indb 156 2017-09-05 오후 4:16:35