*동*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 1
검색어 입력폼
  • c언어로 구현한 카드게임 - 원카드
    #include #include #include #include #define random(n) rand()%n // 컴퓨터로부터 임의의수를 받는 함수를 매크로화 시킴#define dalay(n) Sleep(n)#define UP 72#define LEFT 75#define RIGHT 77#define DOWN 80typedef enum {die, save, win} LIFE;void defualt_state();void state_pan_card(int x, int y, int p); // x,y 는 좌표 p는 그릴것인지 지울것인지 판단void setting_game();void print_pan(); // state의 판대로 화면을 추력하는 함수void card_give(int who, int n);void print_givecard(int who); // 각 player들이 카드를 받는 모션void print_outcard(int who); // 각 player들이 카드를 내는 모션void print_card_table(int who);void gotoxy(int, int); // 화면출력 point를 이동시키는 함수void nocursor(); //화면의 커서를 없앤다.void gamestart_msg();void opencard_print(int cd);void game();void key_left(int *x, int y, int*n);void key_right(int *x, int y, int*n);void card_sort(int who, int n);void print_outcard(int who);void print_win();void print_lose();int key(int *x, int*y, int *n);int takecard();int user_card_choice();int com_card_choice(int who);struct player {enum LIFE life;int n_card;int card[15];}; // player들의 상태를 나타냄typedef struct player PLAYER;struct state {int pan[24][40];int turn_point; // 턴이 어느 방향으로 진행되고 있는지를 나타냄(0 - 오른쪽, 1 - 왼쪽)int turn_who; // 지금 누구의 차례인지를 나타냄int save_member;int add_card;int opencard;} g_state; // 게임의 상태를 저장하는 구조체PLAYER player[4]; // 게임을 하는 player 4명.int card[5][14]; // 카드가 뭉치에 들어있는지 player가 사용하는지를 판단함(0-뭉치, 1-사용중)/* 배열의 행부분의 숫자는 [0]조커 [1]~[4]까지 스페이드, 다이아, 클러버, 하트의 순이다.그리고 배열의 열부분의 숫자는 [0][1] 칼라조커 [0][2] 흑백조커를 제외하고는[1] - A 부터 [13] - K 의 카드 숫자순서대로이다. */int m_x = 17, m_y = 8;char *SHAPE[] = { " ","♠", "◇", "♣", "♡", " J"};char JQK[] = {'J','Q','K'};int main() {int ch;gamestart_msg();fflush(stdin);ch = getch();nocursor();defualt_state();setting_game();print_pan();fflush(stdin);gamestart_msg();fflush(stdin);ch = getch();state_pan_card(m_x,m_y,0);state_pan_card(m_x-2,m_y,1);g_state.opencard = takecard();opencard_print(g_state.opencard);print_pan();game();system("cls");if (player[0].life == 0 || player[0].life == 1)print_lose();else if (player[0].life ==2)print_win();fflush(stdin);ch = getch();gotoxy(0,24);return 0;}void print_win() {gotoxy(20,8);printf("■ ■ ■■■ ■ ■");gotoxy(20,9);printf("■ ■ ■ ■ ■■ ■");gotoxy(20,10);printf("■ ■ ■ ■ ■ ■ ■");gotoxy(20,11);printf(" ■ ■ ■ ■ ■ ■■");gotoxy(20,12);printf(" ■■■ ■■■ ■ ■");gotoxy(30,13);printf("Pleas any key~");}void print_lose() {gotoxy(20,8);printf("■ ■ ■■ ■■■");gotoxy(20,9);printf("■ ■ ■ ■ ■ ");gotoxy(20,10);printf("■ ■ ■ ■■ ■■■");gotoxy(20,11);printf("■ ■ ■ ■ ■ ");gotoxy(20,12);printf("■■■ ■ ■■ ■■■");gotoxy(30,13);printf("Pleas any key~");}void sevencard() {int co;fflush(stdin);gotoxy(m_x+15,m_y+6);printf("1.%s 2.%s 3.%s 4.%s","♠", "◇", "♣", "♡", " J");gotoxy(m_x+15,m_y+7);printf("Choose One! : ");scanf("%d",&co);g_state.opencard = co*100 + 7;print_pan();}void card_sort(int who, int n) {int i;for(i = n;i < player[who].n_card - 1;i ++)player[who].card[i] = player[who].card[i+1];player[who].card[i] = 0;player[who].n_card --;print_card_table(who);}void game() {int n_c;int who = 0;int shape, number;int o_shape, o_number;int tmp;int i, cnt_d, cnt_w;while(1) {tmp = cnt_d = cnt_w = 0;fflush(stdin);if(g_state.turn_who == 0)n_c = user_card_choice();elsen_c = com_card_choice(g_state.turn_who);if(n_c == -1) {if(g_state.add_card == 0)card_give(g_state.turn_who,1);elsecard_give(g_state.turn_who,g_state.add_card);g_state.add_card = 0;}else {o_shape = g_state.opencard / 100;o_number = g_state.opencard % 100;card[o_shape][o_number] = 0;g_state.opencard = player[g_state.turn_who].card[n_c];shape = g_state.opencard / 100;number = g_state.opencard % 100;if(shape == 0) {if(number == 1)g_state.add_card += 7;elseg_state.add_card += 5;} else if(number == 1) {if(shape == 1)g_state.add_card += 5;elseg_state.add_card += 3;} else if(number == 2) {g_state.add_card += 2;} else if(number == 7) {if(g_state.turn_who == 0)sevencard();elseg_state.opencard = (random(4) + 1) * 100 + 7;} else if(number == 11) {tmp++;} else if(number == 12) {if(g_state.turn_point == 0 ) g_state.turn_point = 1;else g_state.turn_point = 0;} else if(number ==13) {tmp--;}card_sort(g_state.turn_who,n_c);print_outcard(g_state.turn_who);}if(player[g_state.turn_who].n_card >= 15)player[g_state.turn_who].life = 0;else if(player[g_state.turn_who].n_card == 0)player[g_state.turn_who].life = 2;opencard_print(g_state.opencard);print_card_table(g_state.turn_who);print_pan();dalay(300);if(player[0].life != 1)break;for(i=1;i
    프로그램소스| 2009.05.21| 1,500원| 조회(3,541)
    미리보기
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 05월 05일 화요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
7:06 오전
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감