미로 찾기 게임을 만들었는데 함 봐주세요^^
김자영
질문 제목 : 미로 찾기 게임을 만들었는데 함 봐주세요^^게임을 만들었는데 최대한 코딩한 걸 줄여볼려고 하는데 함 봐주세요질문 내용 : 게임은 자기가 지나간 곳을 1로 남기고 현재 있는 위치를 2로 남깁니다 그래서 배열에 모두 1을 남기고 3에 들어 갈시
성공하는거고요 벽에 붙이치거나 배열 전체를 1로 안 만들시 실패하는 게임입니다.
#includestdio.h
#includeconio.h
#includewindows.h
void keyboad(int (*way)[11]);
void wall(int (*way)[11]);
int way[11][11]={0};
char a;
void goal(int (*way)[11]);
#define left 75
#define right 77
#define up 80
#define down 72
void fail(int (*way)[11]);
int main()
{
wall(way); //벽 입력
goal(way);
for(int i=0;i11;i++)
{
for(int j=0;j11;j++)
{
printf(%d,way[i][j]);
}
printf(\n);
}
keyboad(way); //방향키return 0;
}void wall(int (*way)[11])
{
for(int i=0;i11;i++)
{
way[0][i]=1;
way[i][0]=1;
way[10][i]=1;
way[i][10]=1;
}
}
void goal(int (*way)[11])
{
way[6][3]=3;
way[7][4]=1;
way[7][3]=1;
way[7][2]=1;
way[6][2]=1;
way[6][4]=1;
}
void keyboad(int (*way)[11])
{
int x=1,y=1;
while(1)
{
a=getch();
if(left==a)
{
way[x][y]=1;
system(cls);
y--;
if(way[x][y]==1)
{
printf(벽에 닿아서 실패했습니다);
break;
}
else if(way[x][y]==3)
{
way[x][y]==1;
fail(way);
break;
}
way[x][y]=2;
for(int i=0;i11;i++)
{
for(int j=0;j11;j++)
{
printf(%d,way[i][j]);
}
printf(\n);
}
}
else if(right==a)
{
way[x][y]=1;
system(cls);
y++;
if(way[x][y]==1)
{
printf(벽에 닿아서 실패했습니다\n);
break;
}
else if(way[x][y]==3)
{
way[x][y]==1;
fail(way);
break;
}
way[x][y]=2;
for(int i=0;i11;i++)
{
for(int j=0;j11;j++)
{
printf(%d,way[i][j]);
}
printf(\n);
}
}
else if(up==a)
{
way[x][y]=1;
system(cls);
x++;
if(way[x][y]==1)
{
printf(벽에 닿아서 실패했습니다\n);
break;
}
else if(way[x][y]==3)
{
way[x][y]==1;
fail(way);
break;
}
way[x][y]=2;
for(int i=0;i11;i++)
{
for(int j=0;j11;j++)
{
printf(%d,way[i][j]);
}
printf(\n);
}
}
else if(down==a)
{
way[x][y]=1;
1;
system(cls);
x--;
if(way[x][y]==1)
{
printf(벽에 닿아서 실패했습니다\n);
break;
}
else if(way[x][y]==3)
{
way[x][y]==1;
fail(way);
break;
}
way[x][y]=2;
for(int i=0;i11;i++)
{
for(int j=0;j11;j++)
{
printf(%d,way[i][j]);
}
printf(\n);
}
}
}
}
void fail(int (*way)[11])
{
int tot=0;
for(int i=0;i11;i++)
{
for(int j=0;j11;j++)
{
//way[i][j]=1; // 전체 배열이 통과할시 성공인지를 증명
if(way[i][j]!=1)
{
tot+=1;
}
}
}
if(tot==0)
{
printf(성공입니다\n);
}
else
{
printf(골인은 했지만 안 밟은 곳이 있어서 실패입니다\n);
}
}
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2698967 | 파일삭제 윈도우 폴더까지 접근하게하는 함수가 뭔가요 (2) | 샤인 | 2025-06-21 |
2698938 | c언어 메모리질문 (3) | 나래 | 2025-06-21 |
2698909 | 서비스 요청 고객 관리 프로그램 짜는것좀 도와주세요ㅜㅜ (4) | 궁수자리 | 2025-06-21 |
2698882 | 프로그래밍좀 짜주세요 (3) | 황예 | 2025-06-21 |
2698855 | 카프-라빈 알고리즘 코딩 분석좀 도와주세요.. | 꽃봄 | 2025-06-20 |
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 |