더북(TheBook)

미션 40: 내 친구를 리스트로 저장하기 ➋

미션 39의 ‘내 친구를 리스트로 저장하기 ➊’ 코드에서 구조체 선언과 동시에 초기화하도록 코드를 수정하세요.

list_5.c

#include <stdio.h>
 
main() {
    struct man {
        int age;
        char name[10];   // 이름 저장을 위해 문자형 배열 변수 선언 
        struct man *next;
    };
 
    // ➊ 구조체 변수 선언과 동시에 초기화
    struct man a = { 8, "이시은" }; 
    struct man b = { 6, "이우진" };
    struct man c = { 7, "이지훈" };
    struct man d = { 7, "이지연" };
 
    a.next = &b;
    b.next = &c;
    c.next = &d;
    d.next = NULL; 
 
    struct man *p; // ➋ 구조체 포인터 변수 선언
 
    for (p = &a; p; p = p->next)
        printf("나이는 %d, 이름은 %s \n", p->age, p->name);
}

실행 결과

나이는 8, 이름은 이시은

나이는 6, 이름은 이우진

나이는 7, 이름은 이지훈

나이는 7, 이름은 이지연

에서 구조체 변수와 초기화를 동시에 한 것을 확인할 수 있습니다. 또한 에서는 man 구조체 포인터 변수를 선언하였습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.