본문 바로가기
C언어

[C언어] 동적 메모리할당을 이용하여서 사용자로부터 받은 주소록을 저장하고 출력하는 프로그램을 작성하라. 사용자로부터 먼저 주소의 개수를 입력받도록 하라. 주소의 많은 정보중에서 이..

by 이얏호이야호 2020. 5. 14.

공부하시는대에 도움이 됐으면 좋겠습니다.

답안코드 확인해주세요!

 

더보기
#include <stdio.h>

#include <stdlib.h>

typedef struct contacts {

	// 구조체 타입 정의

	char name[100];

	char mobile_phone[100];

}

CONTACTS;

int main(void) {

	CONTACTS *contacts;

	// 동적 메모리 공간을 가리키는 포인터

	int size, i;

	printf("주소의 개수: ");

	scanf("%d", &size);

	contacts = (CONTACTS *)malloc(sizeof(CONTACTS)* size);

	// 동적 메모리 할당

	if( contacts == NULL ) {

		printf("동적 메모리 할당 오류");

		exit(1);

	}

	for (i=0; i<size ;i++) {

		printf("이름을 입력하시오: ");

		fflush(stdin);

		// 입력 버퍼를 비운다. gets(contacts[i].name);

		printf("휴대폰 번호를 입력하시오: ");

		gets(contacts[i].mobile_phone);

	}

	printf("========================\n");

	printf("이름 휴대폰 번호\n");

	printf("========================\n");

	for (i=0;i<size;i++)

	printf("%s %s \n", contacts[i].name, contacts[i].mobile_phone);

	printf("\n========================\n");

	free(contacts);

	// 동적 메모리 공간 해제

	return 0;

}


더 많은 C코드가 보고 싶다면?

https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4

댓글