블록쌓기 주석좀 달아주세요
한누리
질문 제목 : 이소스 주석좀 달아주세요
ㅠㅠ
질문 요약 :정말모겠어요ㅠㅠ질문 내용 :
// 게임제작.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언어 막 입문 하셨다는 글을 보았는데요. 입문 과정이시면 이 소스부터 시작하지 마시고
처음부터 하시는게 나으실꺼에요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2698829 | 학점계산기 (7) | MyWay | 2025-06-20 |
2698782 | 기초적인 함수 질문이요ㅠㅠㅠㅠ | 내담 | 2025-06-20 |
2698749 | 프로그램 짜던 도중 패닉입니다...ㅜ | 파랑 | 2025-06-19 |
2698719 | 조건부컴파일 질문입니다.~ (2) | 큐트 | 2025-06-19 |
2698693 | 재귀 함수 에러 | 바닐라 | 2025-06-19 |
2698673 | 고민이있는데 들어좀주세요!! (1) | 초코맛캔디 | 2025-06-19 |
2698644 | 1부터 n까지의 합을 구하는데 엄청긴숫자의 합을 구할때는 어떻게 해야하나요? (4) | 슬우 | 2025-06-18 |
2698616 | 다른 함수로 안넘어갑니다..;;; | 도1도캣 | 2025-06-18 |
2698587 | 배열하다 막혀서... (3) | WhiteCat | 2025-06-18 |
2698559 | 문자열을 비우는방법 (2) | 하늘 | 2025-06-18 |
2698528 | 착하고 친절한 선생씌구해염~ㅋㅋ (4) | 옆집언니야 | 2025-06-17 |
2698502 | 자료구조 큐 | 캔서 | 2025-06-17 |
2698477 | 실행화면 배경문의요 | 선아 | 2025-06-17 |
2698430 | 변수의 값이 저장이 않되네요;; (4) | 피네 | 2025-06-16 |
2698404 | C#을 배울려고 하는데 C나 C++을 알아야 하나요 ?? (1) | 신당 | 2025-06-16 |
2698342 | 프로그램 질문점녀 (4) | 데빌의눈물 | 2025-06-16 |
2698318 | 파일 입출력 질문입니다~ (2) | 꽃 | 2025-06-15 |
2698291 | 문자 출력 함수 : putchar, fputc에 관하여. | 으뜸 | 2025-06-15 |
2698261 | 씨언어 (1) | 마리 | 2025-06-15 |
2698212 | 구조체, 포인터가 같이 들어간 프로그램 소스코드 있으신분? (4) | 그림자 | 2025-06-14 |