디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅁㅁㅁ(115.20) 2010.11.24 22:07:38
조회 129 추천 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/17 - -
234299 횽들 동적 메모리 할당 좀 물어봅세 [3] Deanex(116.124) 11.02.12 93 0
234298 요즘 대형포탈사이트 개인계정 해킹당하는건 왜 당하는거냐? [3] d(118.217) 11.02.12 163 0
234294 니ㅁ들 컴퓨터 성별은 머임? [3] 미클갤로그로 이동합니다. 11.02.12 123 0
234293 수학잘하는 애들이 프로그래밍도 잘함 [13] (125.176) 11.02.12 322 0
234291 형들 게임같은거 파일들 분해하고 할려면 뭘 배워야 하나요? [3] ㅇㅇ(119.195) 11.02.12 105 0
234290 웹이 쉽다는애들은 어떤부류에 사람들이여? [4] ㅅㄱ(219.241) 11.02.12 130 0
234289 html5를 배우고 싶은데.. [1] vnt(219.255) 11.02.12 101 0
234288 프로그래밍 하는새끼들 거의다 오타쿠 기질이 있음 [4] (125.176) 11.02.12 205 0
234287 웹 종니 쉽지. [2] qewr(125.132) 11.02.12 112 0
234286 해골책과 용책 샀는데 기대된다 Type1nject갤로그로 이동합니다. 11.02.12 133 0
234285 자바개발자 하늘에별따기 [7] 시크한훈남갤로그로 이동합니다. 11.02.12 331 0
234284 인터넷에서 html 기초문법책파는거 만큼 돈쉽게 버는게 없을것같다. [4] ㄷㅈ(121.88) 11.02.12 116 0
234283 초밥술사님 이런초밥은 초밥인가여 ㅇㅅㅇ? [4] 미니앵두갤로그로 이동합니다. 11.02.12 114 0
234282 그대는 객체지향을 이해하고 있는가? - 천재플머 명언 - [8] 천재플머(121.139) 11.02.12 214 0
234281 디시 왜 이래 [8] 미클갤로그로 이동합니다. 11.02.12 144 0
234280 니들 20년전에 윈도우 전문가, 한글 워드 전문가라는 직종이 있었다. [3] 계백(61.255) 11.02.12 146 0
234279 웹 종나 쉽지. ㅋㅋㅋㅋ [2] 계백(61.255) 11.02.12 123 0
234278 뭐야 드림하이에 수지 오버니삭스로 나오네? [1] 초밥술사갤로그로 이동합니다. 11.02.12 852 0
234277 형님들 좆밥질문만해서 죄송하지만 마지막질문이니 한번만봐주세요 [6] 늅늅이(202.150) 11.02.12 60 0
234276 형님들 좆밥질문만해서 죄송하지만 하나만 알려주심 안될까욤 [4] 늅늅이(202.150) 11.02.12 81 0
234275 firewall이 이정도는 되야지 [3] 멍게엔열무(110.15) 11.02.12 136 0
234274 야 늬들은 전에 그 버블볼인가 만든 꼬맹이 어떻게 생각하냐? [1] 투데이(121.161) 11.02.12 93 0
234273 플래시 액션스크립트에서 ByteArray()가 뭐하는것인가요 [3] 강횡성갤로그로 이동합니다. 11.02.12 115 0
234272 extern "C"<--여기서 C가의미하는것이 정확히좀 ㅇㅅㅇ;; [6] 미니앵두갤로그로 이동합니다. 11.02.12 174 0
234271 님들 이게 무슨뜻이에요 [5] 강횡성갤로그로 이동합니다. 11.02.12 103 0
234270 이제 프갤에 봇이안보이네요 [9] (220.89) 11.02.12 178 0
234268 동해 폭설... 쉣더.. [1] 고래고래(121.183) 11.02.12 110 0
234267 ipconfig /all 치는데 왜꺼지지 공유기여서그런가 [2] 풋사과1갤로그로 이동합니다. 11.02.12 83 0
234266 형님들 개 좆밥질문해서 죄송하지만 왜 오류나는지좀 알려주심안대여??? [5] 늅늅이(202.150) 11.02.12 88 0
234265 웹이 쉬운거야?? [1] ㅅㄱ(219.241) 11.02.12 78 0
234264 웹이 만만하다고 깔게아니라 [3] ㄷㅈ(121.88) 11.02.12 160 0
234263 직장생활시 디팬스는 생활화 해야함.... [5] ㅅㄱ(219.241) 11.02.12 163 0
234262 첫 직장에서 4년째 근무 중 [7] 박뮤탈갤로그로 이동합니다. 11.02.12 255 0
234261 횽들 내가 C 공부 어느정도 끝내고 Java를 공부했느데 말이야 [3] 대마법서오즈갤로그로 이동합니다. 11.02.12 175 0
234260 씨,씨발, 싸,싸,싼다!!! [4] 땡칠도사갤로그로 이동합니다. 11.02.12 303 0
234255 어제의 영어떡밥 종결.txt [10] Minryu갤로그로 이동합니다. 11.02.12 267 0
234254 왠지 이런거 하고 싶어 [2] ssonacy갤로그로 이동합니다. 11.02.12 111 0
234253 c공부 테크트리 짜봤음. 고수만 좀 봐주셈 [6] 이마트(116.45) 11.02.12 250 0
234252 횬들..C->C++->C#->WPF 이렇게 가도 되나? MFC빼먹고..? [4] 냠냠(115.138) 11.02.12 309 0
234251 만만한게 웹이지. 십숑퀴드라. 계백(61.255) 11.02.12 81 0
234249 웹플머 하지마라 뉴비쇼키들아. [2] 캐닭(112.133) 11.02.12 181 1
234248 게임회사는 왜 연봉이 적은걸까요? [6] ㅇㅇ(121.137) 11.02.12 381 0
234247 회사 그만둔다 말했다... [2] 캐닭(112.133) 11.02.12 140 0
234245 프겔의 루비스트들은 보라능 [2] DMW(125.138) 11.02.12 148 0
234242 난 취직하려고 프로그래밍 배웠음 학원에서 [6] (125.176) 11.02.12 224 0
234241 직장생활 6개월정도 한 뉴비입니다 늅늅 [2] 야메떼♥갤로그로 이동합니다. 11.02.12 162 0
234240 지금쯔음 적절할것같은짤 [4] !!!!!!(110.8) 11.02.12 117 0
234238 내가쓴걸지우는데 자꾸 블록(드래그같이)씌워져서 지워짐 ㅠㅠ 이럴수가(58.122) 11.02.11 62 0
234237 횽들 디시 검색 프로그램이나 크롬 js소스 같은거 없음여? ㅇㅇㅇ? ㅇㅇㅇ(121.144) 11.02.11 128 0
234236 이런 인젝션막음?? [6] Pr0xy갤로그로 이동합니다. 11.02.11 172 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2