반응형

동적 메모리 할당을 이용하여서 사용자로부터 받은 주소록을 저장하고 출력하는 프로그램을 작성하라. 사용자로부터 먼저 주소의 개수를 입력받도록 하라. 주소의 많은 정보 중에서 이름과 휴대폰 번호만을 저장하도록 하자.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
#include <stdlib.h>
#define SIZE 30
typedef struct BOOK
{
    char name[SIZE];
    char number[SIZE];
}book;
int main(void)
{
    int count=0;
    int i;
    book *p;
    printf("주소의 개수: ");
    scanf("%d",&count);
    getchar();
    p=(book*)malloc(count*sizeof(book));
    if(p==NULL)
    {
        printf("메모리할당오류\n");
        exit(1);
    }
    for(i=0;i<count;i++)
    {
        printf("이름을 입력하세요: ");
        gets(p[i].name);
        printf("휴대폰 번호를 입력하세요: ");
        gets(p[i].number);
    }
    printf("========================================\n");
    printf("이름\t휴대폰 번호\n");
    printf("========================================\n");
    for(i=0;i<count;i++)
    {
        printf("%s\t%s\n",p[i].name,p[i].number);
        printf("========================================\n");
    }
    free(p);
    return 0;
}
cs




반응형

'컴퓨터 & 프로그래밍 & 전자공학 > C언어' 카테고리의 다른 글

양의 정수 저장  (0) 2017.02.22
단어 입력 받기  (0) 2017.02.21
문자열 동적 메모리  (0) 2017.02.21
양의 정수들의 합  (0) 2017.02.21
명령어 라인으로 텍스트 파일 합치기  (0) 2017.02.18

+ Recent posts