중첩된 구조체 배열, 포인터에 데이터를 저장하는 방법에 대해 알아보는 프로그램
// 중첩된 구조체 배열에 데이터를 저장
#include <stdio.h>
struct person
{
char name[10];
int age;
struct phone
{
char home_num[14];
char mobile_num[14];
} number;
};
int main(void)
{
struct person man[3];
printf("이름을 입력하고 Enter :");
scanf("%s", man[0].name);
printf("나이를 입력하고 Enter :");
scanf("%d", &man[0].age);
printf("집전화를 입력하고 Enter :");
scanf("%s", man[0].number.home_num);
printf("휴대폰번호를 입력하고 Enter :");
scanf("%s", man[0].number.mobile_num);
printf("\n");
printf("name : %s\n", man[0].name);
printf("age : %d\n", man[0].age);
printf("home : %s\n", man[0].number.home_num);
printf("mobile : %s\n", man[0].number.mobile_num);
return 0;
}
// 실행 결과
// 중첩된 구조체 포인터에 데이터를 저장
#include <stdio.h>
struct person
{
char *name;
int age;
struct phone
{
char *home_num;
char *mobile_num;
} number;
};
int main(void)
{
struct person man, *pt;
pt=&man;
pt->name="jaeho";
pt->age=18;
pt->number.home_num="02-345-0084";
pt->number.mobile_num="019-945-0001";
printf("name : %s\n", pt->name);
printf("age : %d\n", pt->age);
printf("home : %s\n", pt->number.home_num);
printf("mobile : %s\n", pt->number.mobile_num);
return 0;
}
// 실행 결과
// 중첩된 구조체 배열에 데이터를 저장
#include <stdio.h>
struct person
{
char name[10];
int age;
struct phone
{
char home_num[14];
char mobile_num[14];
} number;
};
int main(void)
{
struct person man[3];
printf("이름을 입력하고 Enter :");
scanf("%s", man[0].name);
printf("나이를 입력하고 Enter :");
scanf("%d", &man[0].age);
printf("집전화를 입력하고 Enter :");
scanf("%s", man[0].number.home_num);
printf("휴대폰번호를 입력하고 Enter :");
scanf("%s", man[0].number.mobile_num);
printf("\n");
printf("name : %s\n", man[0].name);
printf("age : %d\n", man[0].age);
printf("home : %s\n", man[0].number.home_num);
printf("mobile : %s\n", man[0].number.mobile_num);
return 0;
}
// 실행 결과
// 중첩된 구조체 포인터에 데이터를 저장
#include <stdio.h>
struct person
{
char *name;
int age;
struct phone
{
char *home_num;
char *mobile_num;
} number;
};
int main(void)
{
struct person man, *pt;
pt=&man;
pt->name="jaeho";
pt->age=18;
pt->number.home_num="02-345-0084";
pt->number.mobile_num="019-945-0001";
printf("name : %s\n", pt->name);
printf("age : %d\n", pt->age);
printf("home : %s\n", pt->number.home_num);
printf("mobile : %s\n", pt->number.mobile_num);
return 0;
}
// 실행 결과
'공부 > c언어' 카테고리의 다른 글
[c언어] 자기참조구조체. 동적 할당을 이용한 연결 리스트 (0) | 2011.06.21 |
---|---|
[c언어] 자기참조구조체. 구조체 변수와 주소를 이용한 연결 리스트 (0) | 2011.06.21 |
[c언어] 구조체 속의 구조체. 중첩된 구조체를 정의하여 데이터를 저장 (2) | 2011.06.20 |
[c언어] 구조체를 헤더파일로 불러오는 프로그램 (0) | 2011.06.20 |
[c언어] 함수의 결과값으로 구조체를 반환 (0) | 2011.06.19 |