디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

프갤횽들 C언어 이거 실행좀 되게해주세요

ㅁㅁㅁ(115.20) 2010.11.24 22:07:38
조회 123 추천 0 댓글 5

#include<stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
void play_game();
void get_alphabet();
void clear_screen();
void display_screen();
void free_node();
void initailize();
void gotoxy(int x, int y);
void cursor_off();
void sleep(long wait);
struct S_ALPHA {
int  x, y;
char alphabet;
struct S_ALPHA *next;
};
struct S_ALPHA   *alpha;
int count;

void main()
{
initailize();  // 초기화 함수를 호출한다.
play_game();  // 게임을 시작한다.
free_node();  // malloc()으로 할당한 메모리를 반납한다.
}

void play_game()
{
char keyin; // 키 입력 및 새로 생성된 알파벳

do {
 clear_screen();  // 화면을 지운다.
 sleep(1000); // 1초 동안 대기한다.
 get_alphabet(); // 화면의 임의의 좌표에 대문자 알파벳을 하나 생성한다.
 display_screen(); // 화면에 알파벳들을 표시한다.
 keyin = getch(); // 키보드에서 영문자를 하나 입력하고, 소문자는 대문자로 변경한다.
 if (keyin >= \'a\' && keyin <= \'z\')
  keyin = keyin - 0x20;
} while (keyin == alpha->alphabet);  // 키 입력과 생성된 문자가 같으면 반복한다.
                      // 연결리스트의 첫번째 항목이 새로 추가된 노드이다.
printf("game over your score %d",count);// 게임 오버
// 게임 스코어를 출력한다.
}

void get_alphabet()
{
    int x, y, dup;
    struct S_ALPHA *temp;
 int count = 0;
// x, y 좌표를 생성한다.
do {
srand(time(NULL));
x=rand()%80;//0 ~ 79 사이의 x 좌표를 생성한다.
y=rand()%24;//0 ~ 23 사이의 y 좌표를 생성한다.
dup = 0;
// 리스트에 (x,y)좌표가 등록되어 있는지 검사한다.
temp=alpha;//temp를 alpha로 초기화하고,
//temp가 NULL이 아니면 다음을 반복한다. {
  //만일 x와 temp->x가 같고 또한 y와 temp->y가 같으면
    //  dup를 1로 만든다.
temp->next;//temp를 다음 노드로 옮긴다.
do{
 if(temp->x ==x && temp->y == y)
 {
  dup=1;
 }
}while(temp!=NULL);

} while (dup == 1);    // (x,y)가 이미 등록되어 있으면, 다시 (x,y)를 수행한다.
srand(time(NULL));
temp = (struct S_ALPHA *)malloc(sizeof(struct S_ALPHA));//temp에 struct S_ALPHA 구조체 크기의 메모리를 할당한다.
temp->x=x;//temp->x에 x를 저장하고,
temp->y=y;//temp-y에 y를 저장한다.
temp->alphabet=rand()%26+65;//temp->alphabet에  \'A\' ~ \'Z\'까지 영문자를 하나 생성하여 저장한다.
temp->next=alpha;//temp->next를 alpha 리스트에 연결한다.
count++;//count를 증가시킨다.
}
void clear_screen() // 보너스: 이 함수는 기분 좋게 다 짜 준다.
{
    struct S_ALPHA *temp;

    temp = alpha;
    while (temp != NULL) {
        gotoxy(temp->x, temp->y);
        putch(\' \');
               temp->next=temp;
   }
}

void display_screen()
{
    // clear_screen() 함수를 참고하여 작성하라.
    struct S_ALPHA *temp;

    temp = alpha;
    while (temp != NULL) {
        gotoxy(temp->x, temp->y);
        putch(temp->alphabet);
                temp->next=temp;// 위 함수에서 putch(\' \'); 대신에 putch(temp->alphabet); 을 넣으면 된다.
}

free(temp);
// 프로그램이 끝나기 전에 malloc()으로 할당한 노드들을 반납한다.
}

void free_node()
{
 struct S_ALPHA *temp;
 
 while (alpha != NULL) {   // alpha가 NULL이 아니면 반복한다.
  temp = alpha; // temp가 리스트의 첫번째 노드를 가리킨다.
  alpha = alpha->next; // alpha는 다음 노드를 가리킨다.
  free(temp); // temp를 반납한다.
 }
}

void initailize()
{
srand(time(NULL));//랜덤 함수를 초기화 한다.
count=0;//count를 0으로 초기화하고,
cursor_off();//커서를 제거한다
alpha=NULL;//alpha를 NULL로 초기화 한다.
}

void gotoxy(int x, int y)
{
 COORD Pos = { x, y };
 SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);
}

void cursor_off()
{
 CONSOLE_CURSOR_INFO Coff = { 100, 0 };
 SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &Coff);
}
void sleep(long wait) {
 long goal;

 // clock()은 프로그램이 실행된 후의 지연시간을 밀리초 단위로 리턴한다.
 goal = wait + clock(); // goal = 현재시간 + 지연시간
 while (goal > clock()) ; // 목표 시간에 도달할 때까지 대기
}
연결리스트에서 잘못한거같은데 ㅜㅜ 능력자 프갤형들 부탁해요

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 힘들게 성공한 만큼 절대 논란 안 만들 것 같은 스타는? 운영자 24/06/10 - -
232540 너희 프로그래머 관련 영화중에 이거 봤냐? [3] 어둠이(118.176) 11.01.27 196 0
232539 책빌려왔는데 너무 좀그렇다 꿀레(14.33) 11.01.27 66 0
232537 아이폰 SDK처음에 개념쌔울만한 기초 책 뭐가 있나요? [6] 뉴비뉴비(122.135) 11.01.27 84 0
232536 1기가 파일 올릴만한곳 ?? 춫천좀 [6] 2417(211.232) 11.01.27 58 0
232534 테이블이 500개 컬럼은 xxxxxx ... =ㅅ=; [1] 2417(211.232) 11.01.27 91 0
232533 자바스크립트좀 물어볼게 [7] URA!갤로그로 이동합니다. 11.01.27 98 0
232532 오라클 입문책 괜춘한거 없을까요 [10] ㄱㄷ(211.208) 11.01.27 218 0
232530 이번에 대학들어가는 신입생인데요 ㅎㄷㄷ [6] ㄷㄷㄷ(221.162) 11.01.27 153 0
232529 당연히 업데이트 할 때 그냥 copy 로 붙여넣는 것 아닌가요??왜욕함요 [3] 개쉛기갤로그로 이동합니다. 11.01.27 129 0
232528 현재 회사 홈페이지 php 코딩 상황 [4] URA!갤로그로 이동합니다. 11.01.27 179 0
232527 GET 방식으로 URL 호출하는거 있잖아. 영광의비석갤로그로 이동합니다. 11.01.27 143 0
232525 수시합격자들 대상으로 강의 [3] ㄷㄷㄷ(221.162) 11.01.27 115 0
232524 교수님이 다음학기에 Objective-c 강좌여신다는데 [6] 영광의비석갤로그로 이동합니다. 11.01.27 220 0
232522 가끔 물상무횽의 글을 읽다보면 두렵다.. [9] 물상횽닭(112.216) 11.01.27 140 0
232521 여기 회사는 전라도 사람들이 주류라서 [5] .3(124.137) 11.01.27 196 0
232510 횽들 C# 배열 카피에 대한 질문 허허벌판갤로그로 이동합니다. 11.01.27 146 0
232509 아래 글 보니까 생각나는 그녀 이야기... [5] 물속의다이아갤로그로 이동합니다. 11.01.27 190 0
232508 회사 데이터 베이스 날려 먹었음 개같은.... [8] 호비뉴갤로그로 이동합니다. 11.01.27 252 0
232506 안드로이드 옙 프로그램 질문좀 [4] 캐초보(220.76) 11.01.27 92 0
232504 피온하시는분 [4] ㄷㄷㄷ(221.162) 11.01.27 87 0
232503 어제 데이터베이스 정리하면서... [8] 호비뉴갤로그로 이동합니다. 11.01.27 150 0
232502 내가 왜 저런 씹 종자들을 비난하는 줄 아냐? [3] 물속의다이아갤로그로 이동합니다. 11.01.27 273 0
232501 우장은 봅니다. [10] 우장닭(112.216) 11.01.27 157 0
232499 헐? 증발? [2] ㄷㄷㄷ(221.162) 11.01.27 84 0
232498 갓졸업하고 취직했는데 [2] ㄱㄷ(211.208) 11.01.27 211 0
232488 C, C++ 배우고, 자바 시작하고 있는데요. 간단한 질문좀... [1] 영순이(61.78) 11.01.27 144 0
232487 본인이 즐겨쓰는 디버깅메세지 [2] ㄷㄷ(121.50) 11.01.27 110 0
232486 형들 WinAPi,OpenGL쪽으로 공부하고 싶은데 책추천좀요 ㅠ [3] 꿀레(14.33) 11.01.27 154 0
232484 SDS 다니던 사람이 9급 공무원 시험 쳐서 떠낫슴. [5] 2417(211.232) 11.01.27 379 0
232483 Beautiful Leg's Legend [1] 美脚傳說(211.54) 11.01.27 121 0
232482 현 프라젝트의 현실 중 하나 [2] 물속의다이아갤로그로 이동합니다. 11.01.27 221 0
232481 어려운 프로그래밍은 전부 외주(하청이나 재택 프리랜서)로 돌리네 [1] 2417(211.232) 11.01.27 169 0
232479 프로그래밍 독학으로 취업 불가능?? [4] PriSr(203.255) 11.01.27 310 0
232478 마더업체에서 월-금 9-9, 토 10-7, 설날 하루 근무를 강요한다. [4] 물속의다이아갤로그로 이동합니다. 11.01.27 227 0
232477 으잌? 횽들 이거 레알? [6] 김치맛요거트(14.56) 11.01.27 130 0
232476 최후의 심판 암호 해독법 [1] 분당살람갤로그로 이동합니다. 11.01.27 158 0
232475 데브피아는 왤케 느리지 [4] 마법사게이맨(175.115) 11.01.27 131 0
232474 디버깅 할때 CPU의 레지스터에 대한 질문 [3] 옹메니(115.91) 11.01.27 111 0
232473 점심.월급.저녁 2417(211.232) 11.01.27 70 0
232472 혹시 겜서버개발자 이신분 있나요??? [2] fa(121.162) 11.01.27 112 0
232471 텍스쳐 정점 4개로 이미지 뿌려주고 회전시킬라고 하는데요 [4] joon갤로그로 이동합니다. 11.01.27 117 0
232470 C언어 공부할때 프로그램이요 ㅠ [20] 도움좀 ㅠ(175.210) 11.01.27 222 0
232469 C언어 거의 다 배워가는 왕초짜프로그래머인데 질문 좀 할게요. [6] BeyondLight갤로그로 이동합니다. 11.01.27 137 0
232468 질문글 [2] ㄹㅇㄴㅁ(211.112) 11.01.27 53 0
232467 나 그냥 개인적으로 궁금함... [1] 분당살람갤로그로 이동합니다. 11.01.27 77 0
232466 축구와 프로그래밍의 공통점은 수학이다.jpg [1] ㅇㅇ(121.133) 11.01.27 180 0
232464 욕설녀.swf [1] 1dzNp1rOAv6z(119.71) 11.01.27 114 0
232461 언수외 말고 C언어 공부하고 싶다 [3] Mois갤로그로 이동합니다. 11.01.27 133 0
232460 ■ 아침을 여는 업적왕 이명박 플레이어.swf [2] 아따(218.50) 11.01.27 113 0
232459 카운터 116.44(116.44) 11.01.27 102 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2