블록쌓기 주석좀 달아주세요
한누리
질문 제목 : 이소스 주석좀 달아주세요
ㅠㅠ
질문 요약 :정말모겠어요ㅠㅠ질문 내용 :
// 게임제작.cpp : 콘솔 응용 프로그램에 대한 진입점을 정의합니다.
//
#include stdio.h //저장 경로를 나타내는것
#include stdlib.h
#include conio.h
#include windows.h
#define box_length 15 //게임의 영역(좌우 길이)
#define box_height 15 //바닥의 높이(상하 길이)
void intro_game(void); //게임에 대한 설명 출력
void game_control(void); //게임 제어 함수
void gotoxy(int x, int y); //커서의 위치 제어
int left_right_move(void); //블록을 좌우로 연속적으로 이동
void move_down(int x); //블록을 아래로 이동
void draw_rectangle(int c, int r); //게임 영역을 나타내는 사각형
int max_block(void); //현재 쌓인 블록의 최대값 계산
int block_stack[box_length*2+1]={0}; //해당위치의 값을 0으로 초기화
int main(void)
{
intro_game();
game_control();
gotoxy(1, box_height+3);
printf(game이 종료되었습니다. \n);
return 0;
}
void intro_game(void)
{ //게임에 대한 설명
system(cls);
printf(블록 쌓기 \n\n);
printf(블록이 좌우로 움직일때 스페이스키를 누르면\n);
printf(블록이 떨어지면 바닥에 쌓입니다.\n\n);
printf(아무키나 누르면 게임을 시작합니다. \n);
_getch();
}
void game_control(void)
{
int x, count=0;
system(cls); //사각형 그리기
draw_rectangle(box_length, box_height);
gotoxy(box_length*2+5,3);
printf(블록의 개수: %2d, box_height);
gotoxy(1, box_height+3);
printf(스페이스키를 누르면 블록이 떨어지고\n);
printf(바닥에 쌓입니다. \n); //시도한 횟수, 쌓인 블록의 수 출력 함수 max_block() 블록의 좌우 이동
while(countbox_height) //함수 left_right_move()스페이스바 키를 누르면 블록이 바닦에 쌓임 함수move_down()
{
gotoxy(box_length*2+5,4);
printf(시도한 횟수: %2d, count+1);
gotoxy(box_length*2+5,5);
printf(쌓인 블록수: %2d, max_block());
x=left_right_move();
move_down(x);
count++;
_getch();
}
}
void gotoxy(int x, int y)
{
coord pos = {x - 1, y - 1};
setconsolecursorposition(getstdhandle(std_output_handle), pos);
}
int left_right_move(void) //left_right_move 블록을 좌우로 이동하는 함수
{
int x=3, y=2, temp=2;
do
{
x+=temp;
if (x(box_length*2)) //x방향 최대값 설정
temp=-2;
if (x3)
{
x=3;
temp=2;
}
gotoxy(x, y);
printf(□ );
sleep(50); //블록이 좌우로 움직이는 속도를 조절
gotoxy(x, y);
printf( );
}while(!_kbhit());
block_stack[x]+=1;
return x;
}
void move_down(int x) //바닦에 이동하는 함수
{
int y;
for(y=2;ybox_height+2-block_stack[x];y+=1)
{
gotoxy(x, y);
printf(□ );
sleep(20);
gotoxy(x, y);
printf( );
sleep(10);
}
gotoxy(x, box_height+2-block_stack[x]);
printf(□ );
}
void draw_rectangle(int c, int r)
{
int i, j;
unsigned char a=0xa6;
unsigned char b[7];
for(i=1;i7;i++)
b[i]=0xa0+i;
printf(%c%c,a, b[3]);
&nb;
for(i=0;ic;i++)
printf(%c%c, a, b[1]);
printf(%c%c, a, b[4]);
printf(\n);
for(i=0;ir;i++)
{
printf(%c%c, a, b[2]);
for(j=0;jc;j++)
printf( );
printf(%c%c, a, b[2]);
printf(\n);
}
printf(%c%c, a, b[6]);
for(i=0;ic;i++)
printf(%c%c, a, b[1]);
printf(%c%c, a, b[5]);
printf(\n);
}
int max_block(void)
{
int i, max=0;
for(i=1;ibox_height*2+1;i++)
{
if (max=block_stack[i])
max=block_stack[i];
}
return max;
}
-
세련
이미 주석이 달려있는데 뭔 주석을 또 달아요. 하하.
-
블레이
자유게시판에서 c언어 막 입문 하셨다는 글을 보았는데요. 입문 과정이시면 이 소스부터 시작하지 마시고
처음부터 하시는게 나으실꺼에요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2700562 | 함수포인터에서요 (7) | 소심한여자 | 2025-07-06 |
2700530 | 전처리문 질문입니다. (1) | 아놀드 | 2025-07-05 |
2700510 | c언어를 어케하면 잘할수 있을까요.. | 연연두 | 2025-07-05 |
2700484 | 두 개가 차이가 뭔지 알려주세요...(소수 찾는 프로그램) (2) | 날위해 | 2025-07-05 |
2700426 | 인터넷 창 띄우는 질문이요 (1) | 정훈 | 2025-07-04 |
2700400 | 원넓이를 계산이요 ㅜㅜ | 천칭자리 | 2025-07-04 |
2700368 | if에 관해서 질문이요... | Orange | 2025-07-04 |
2700339 | 이거 결과값이 왜이런건지.. (4) | 그댸와나 | 2025-07-04 |
2700313 | 파일 읽어서 저장하는데 빈파일일 경우 문재가 발생하네요.. (2) | 크나 | 2025-07-03 |
2700287 | 구조체 동적할당 연습을 하는데 오류가 뜹니다...(해결) (3) | 아련나래 | 2025-07-03 |
2700264 | 문자와 숫자 동시에 입력??? | 글고운 | 2025-07-03 |
2700236 | txt파일로만 쓰고 읽게 하려면 어떻게 해야 하나요..?? (8) | 미국녀 | 2025-07-03 |
2700211 | 전위 연산자 (2) | 어른처럼 | 2025-07-02 |
2700183 | C에서 파일이름을 받고, 그 파일의 사이즈를 출력해줘야하는데 내용이 출력이 안되네요 ;ㅅ; | 피스케스 | 2025-07-02 |
2700150 | 꼭좀 도와주세요ㅠㅠㅠ | 호습다 | 2025-07-02 |
2700095 | 연산문제...질문... | 오빤테앵겨 | 2025-07-01 |
2700070 | while문 , 3의배수 출력하는 프로그램좀 짜주세욤. | 횃불 | 2025-07-01 |
2700041 | 초보인데요 ㅎ 배열안에 배열을 집어넣을수 있나요?? | 헛장사 | 2025-07-01 |
2700012 | 배열// (1) | 전갈자리 | 2025-07-01 |
2699895 | 무한루프에 빠집니다.!! 해결좀부탁드려요 (10) | 선아 | 2025-06-30 |