숫자 퍼즐게임 도와주세요ㅠㅠㅠㅠㅠ
어둠
질문 제목 : 숫자퍼즐게임 질문질문 요약 :왜 움직임에 에러가 나는거죠 어디가 문제인가요??질문 내용 :
#include stdio.h
#include conio.h
#include time.h
#include stdlib.h
#include windows.h
#define left 75
#define right 77
#define up 70
#define down 80
void map();
void mix(int x[3][3]);
void draw();
void move();
void gotoxy(int x,int y);
void blank(int x[3][3]);
int main()
{
int answer[3][3]={{1,2,3},{4,5,6},{7,8,0}};
int puz[3][3];
char insert;
mix(puz);
while(1)
{
gotoxy(0,0);
map();
draw(puz);
blank(puz);
insert=getch();
move(insert,puz);}
return 0;
}
void move(char c,int x[3][3])
{
int i,j,y,z,temp;
for(i=0;i3;i++)
{
for(j=0;j3;j++)
{
if(x[i][j]==0)
{
y=i;
z=j;
}
}
}
switch(c)
{
case left:
if(z==0)
{
break;
}
temp=x[y][z];
x[y][z]=x[y][z+1];
x[y][z+1]=temp;
break;
case right:
if(z==2)
{
break;
}
temp=x[y][z];
x[y][z]=x[y][z-1];
x[y][z-1]=temp;
break;
case up:
if(y==0)
{
break;
}
temp=x[y][z];
x[y][z]=x[y+1][z];
x[y+1][z]=temp;
break;
case down:
if(y==2)
{
break;
}
temp=x[y][z];
x[y][z]=x[y-1][z];
x[y-1][z]=temp;
break;
}
}
void mix(int x[3][3])
{
int i,j;
int num=0;
int random;
srand(time(null));
random=rand();
for(i=0;i3;i++)
{
for(j=0;j3;j++)
{
x[i][j]=(random+num)%9;num+=7;
}}
}
void gotoxy(int x,int y)
{
coord cur;
cur.x=x;
cur.y=y;
setconsolecursorposition(getstdhandle(std_output_handle),cur);
}
void map()
{
printf(┌────────────┐\n);
printf(│┌──┐┌──┐┌──┐│\n);
printf(││ ││ ││ ││\n);
printf(│└──┘└──┘└──┘│\n);
printf(│┌──┐┌──┐┌──┐│\n);
printf(││ ││ ││ ││\n);
printf(│└──┘└──┘└──┘│\n);
printf(│┌──┐┌──┐┌──┐│\n);
printf(││ ││ ││ ││\n);
printf(│└──┘└──┘└──┘│\n);
printf(└────────────┘\n);
}
void draw(int x[3][3])
{
int i,j;
gotoxy(6,2);
printf(%d,x[0][0]);
gotoxy(14,2);
printf(%d,x[0][1]);
gotoxy(22,2);
printf(%d,x[0][2]);
gotoxy(6,5);
printf(%d,x[1][0]);
gotoxy(14,5);
printf(%d,x[1][1]);
gotoxy(22,5);
printf(%d,x[1][2]);
gotoxy(6,8);
printf(%d,x[2][0]);
gotoxy(14,8);
printf(%d,x[2][1]);
gotoxy(22,8);
printf(%d,x[2][2]);
}
void blank(int x[3][3])
{
if(x[0][0]==0)br]==0)
{
gotoxy(3,2);
printf( );
gotoxy(3,1);
printf( );
gotoxy(3,3);
printf( );
}
if(x[0][1]==0)
{
gotoxy(11,2);
printf( );
gotoxy(11,1);
printf( );
gotoxy(11,3);
printf( );
}
if(x[0][2]==0)
{
gotoxy(19,2);
printf( );
gotoxy(19,1);
printf( );
gotoxy(19,3);
printf( );
}
if(x[1][0]==0)
{
gotoxy(3,5);
printf( );
gotoxy(3,4);
printf( );
gotoxy(3,6);
printf( );
}
if(x[1][1]==0)
{
gotoxy(11,5);
printf( );
gotoxy(11,4);
printf( );
gotoxy(11,6);
printf( );
}
if(x[1][2]==0)
{
gotoxy(19,5);
printf( );
gotoxy(19,4);
printf( );
gotoxy(19,6);
printf( );
}
if(x[2][0]==0)
{
gotoxy(3,8);
printf( );
gotoxy(3,7);
printf( );
gotoxy(3,9);
printf( );
}
if(x[2][1]==0)
{
gotoxy(11,8);
printf( );
gotoxy(11,7);
printf( );
gotoxy(11,9);
printf( );
}
if(x[2][2]==0)
{
gotoxy(19,8);
printf( );
gotoxy(19,7);
printf( );
gotoxy(19,9);
printf( );
}
}