Page 277 고등학교 프로그래밍 교과서
P. 277
161쪽 스스로 해결하기 162쪽 컴퓨팅 사고력을 키우는 수행 평가
#include
#include
int age;
struct empInfo { char name[10];
char num[10]; };
char name[10]; struct human {
char phone[15]; int age;
}; char name[10];
int main() { struct person myfriend;
int a, flag=0;
};
char sname[10];
int main( )
{
struct empInfo emps[5] = {
struct human man1 = {20, "서대영", 20, "유시진"};
{"s2001002", "강대영", "010-1234-0001"},
printf("%s의 친구 이름은 %s입니다.", man1.name, man1.myfriend.
{"s2006012", "김길수", "010-1234-0002"},
name );
{"s2011007", "이미영", "010-1234-0003"},
return 0;
{"s2012005", "이도엽", "010-1234-0004"},
}
{"s2016001", "권순동", "010-1234-0005"}
};
[해설] 구조체가 맴버로 구조체 변수를 가지는 구조이다. human 구조체는
printf("검색할 사원 이름을 입력하시오: ");
person 구조체형 변수를 멤버 변수로 가지고 있어야 프로그램이 실행된다.
scanf("%s", sname);
for(a=0; a<5; a++) {
if (strcmp(emps[a].name, sname)==0) { //두개의
문자열을 비교하는 함수 163쪽 내 실력 확인하기
printf("성명: %s\n", emps[a].name);
1 ③
printf("사원번호: %s\n", emps[a].num);
printf("전화번호: %s\n", emps[a].phone); 2 14byte
flag = 1; [해설] 구조체가 차지하는 메모리 공간은 14byte이다.
} 다만 이를 sizeof(s1)으로 연산하면 16byte를 반환하는데 이는 구조체 패딩이
} 라는 메모리 관리 효율 정책 때문이다. 구조체 패딩에 따라 4의 배수로 크기
if (flag == 0) { 를 설정한다.
printf("해당사원이 없습니다.") ;
}
}
정답 및 해설 275
(책)2015프로그래밍-교과서3차심의본 본문.indb 275 2017-09-05 오후 4:17:13