Menu
Coddy logo textTech

Multiple Cards

Coddy의 플레잉 카드 생성기 (텍스트 기반) 코스 레슨 — 6개 중 6번째.

여러 개의 카드를 보여줍시다!

challenge icon

챌린지

중급

이제 여러 장의 카드를 지원하기 위해, printCard의 입력을 정수(kind)와 문자열(suit)에서 정수 배열(kinds)과 문자열 배열(suits)로 변경하려고 합니다. 예를 들어:

입력 - [1, 2, 3], ["heart", "club", "spade"]는 하트 에이스, 클로버 2, 스페이드 3까지 총 3장의 카드를 결과로 출력합니다.

배열의 길이는 동일하다고 가정할 수 있습니다.

정확한 형식을 위해 테스트 케이스를 확인하세요. 카드 사이에는 공백 한 칸을 추가해야 합니다.

직접 해보기

#include <stdio.h>
#include <string.h>

void printCard(int kind, char* suit) {
    char* suitSymbol = " ";
    if (strcmp(suit, "club") == 0) suitSymbol = "♣";
    else if (strcmp(suit, "diamond") == 0) suitSymbol = "♦";
    else if (strcmp(suit, "heart") == 0) suitSymbol = "♥";
    else if (strcmp(suit, "spade") == 0) suitSymbol = "♠";

    char kindBuf[4] = " ";
    if (kind == 1) strcpy(kindBuf, "A");
    else if (kind >= 2 && kind <= 10) sprintf(kindBuf, "%d", kind);
    else if (kind == 11) strcpy(kindBuf, "J");
    else if (kind == 12) strcpy(kindBuf, "Q");
    else if (kind == 13) strcpy(kindBuf, "K");

    printf("╔═════════╗\n");
    if (kind == 10) printf("║ 10      ║\n");
    else printf("║ %s       ║\n", kindBuf);
    printf("║         ║\n");
    printf("║         ║\n");
    printf("║    %s    ║\n", suitSymbol);
    printf("║         ║\n");
    printf("║         ║\n");
    if (kind == 10) printf("║      10 ║\n");
    else printf("║       %s ║\n", kindBuf);
    printf("╚═════════╝\n");
}

플레잉 카드 생성기 (텍스트 기반)의 모든 레슨

1Introduction

Introduction