정보처리기사 실기 시험 기출 문제 - 포인터와 구조체 사용
문제
다음 C 프로그램이 실행되었을 때의 동작을 설명하고, 출력 결과를 예측하시오.
소스 코드 파일명: pointer_struct_test.c
#include <stdio.h>
main() {
	struct insa {
		char name[10];
		int age;
	} a[] = { "Kim", 28, "Lee", 38, "Park", 42, "Choi", 31 };
	struct insa* p;
	p = a;
	p++;
	printf("%s\n", p->name);
	printf("%d\n", p->age);
}
입력 예시
이 프로그램은 사용자로부터 입력을 받지 않습니다.
출력 예시
Lee
38
해설
이 프로그램은 구조체 배열을 포인터로 접근하고, 포인터를 이용해 배열의 두 번째 요소의 정보를 출력합니다.
- struct insa구조체는 이름과 나이를 저장하는 데 사용됩니다.
- 배열 a는 네 명의 사람(김, 이, 박, 최)의 이름과 나이 정보를 초기화합니다.
- 포인터 p는 구조체 배열a를 가리키며,p++를 통해 배열의 두 번째 요소를 가리킵니다.
- printf함수를 사용해- p가 가리키는 요소, 즉 이씨의 이름과 나이를 출력합니다.
이 프로그램은 구조체와 포인터를 활용하여 배열의 특정 요소에 접근하고 정보를 출력하는 방식을 보여 줍니다.
							추천 자료: ASP.NET Core 인증 및 권한 부여
						
						
							추천 자료: .NET Blazor에 대해 알아보시겠어요? .NET Blazor 알아보기를 확인해보세요!