본문 바로가기
Programming/C

[C] 포켓몬 연습 문제 1

by graygreat 2017. 4. 19.
728x90
반응형

구조체 연습

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

// 구조체 선언
typedef struct Pokemon{
    char name[20];
    char type[20];
    int hp; 
} Pokemon;

// 이름, 타입, 체력을 저장하는 함수
void init(Pokemon *pokemon){
    printf("이름 : ");
    scanf("%s", pokemon->name);

    printf("타입 : ");
    scanf("%s", pokemon->type);
    
    pokemon->hp = rand() % 100;
}

int main(){
    Pokemon *arr;
    int i, num;
    
    srand((unsigned)time(NULL));

    printf("포켓몬볼 개수 : ");
    scanf("%d", &num);

    arr = (Pokemon *)malloc(sizeof(Pokemon) * num); // 포켓몬볼 개수만큼 동적할당

    for(i = 0; i < num; i++)
        init(&arr[i]);

    for(i = 0; i < num; i++){
        printf("=============\n");
        printf("이름 : %s\n", arr[i].name);
        printf("타입 : %s\n", arr[i].type);
        printf("체력 : %d\n", arr[i].hp);
        printf("=============\n");
    }

    free(arr);      // 할당된 메모리 해제
}




반응형

'Programming > C' 카테고리의 다른 글

[C] 모래시계, 나비 프로그램 만들기  (0) 2017.04.19
[C] 포켓몬 연습 문제 2  (0) 2017.04.19
[C] 문자열 패턴 찾기  (0) 2017.04.10
[C] strcmp 함수 구현하기  (0) 2017.04.10
[C] 난수 최대값 구하기  (0) 2017.04.10

댓글