조회 수 983 추천 수 0 댓글 0

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void show(int arr[10][10])
{
     system("cls");
     int i,j;
     for(i=0;i<10;i++)
    { 
       for(j=0;j<10;j++)
       {  
           printf("%c ",arr[i][j]);
         
       }
        printf("\n");
    }  
}

void changij(int arr[10][10], int pi, int pj)            {
    
    
    
    
    
    
    
 }//changij
int main(void)
{
    char eat=' ';
    char inwall=' ';
    char point=15;
    int arr[10][10]={
        {eat,eat,eat,eat,eat,eat,eat,eat,eat,eat},
        {inwall,eat,eat,eat,inwall,eat,eat,eat,eat,eat},
        {inwall,eat,inwall,eat,inwall,eat,eat,eat,inwall,eat},
        {inwall,eat,eat,eat,inwall,eat,eat,inwall,eat,eat},
        {inwall,eat,inwall,eat,inwall,inwall,eat,eat,inwall,eat},
        {eat,eat,inwall,eat,eat,eat,eat,eat,inwall,eat},
        {eat,inwall,inwall,inwall,eat,inwall,inwall,eat,inwall,eat},
        {eat,eat,inwall,eat,eat,inwall,inwall,inwall,inwall,eat},
        {inwall,eat,inwall,inwall,eat,eat,eat,inwall,eat,eat},
        {inwall,inwall,inwall,inwall,inwall,inwall,eat,eat,eat,inwall}
        };
       
       
    inwall='*';
    int i=0, j=0;
    int pi=0, pj=0;
    char ch=-32;
    char store=eat;
    char wall=inwall;
    char oldch=14;
    int k=0;
    arr[pi][pj]=point;
    show(arr);
   
    for(;;)
    {
        if(ch!=-32)
        oldch=ch;
       
        ch=getch();
       
        if(ch==-32)
        continue;

        if((ch=='l' || ch==77) && pj<9)
        {
             point=62;      
            
             if(ch==oldch)
             {
                 if(k==1)
                 {    
                       if(pi==0)
                       arr[pi][pj]=22;
                       else if(pi==9)
                       arr[pi][pj]=21;
                       else
                       arr[pi][pj]=16;
                
                 }
                 else
                 arr[pi][pj]='-';
                
                 store=arr[pi][pj+1];
                    
                     if(store==wall);
                     else
                     pj++;
                     if(store==' ' || store=='-')
                     k=0;
                     else
                     k=1;
                                         
                
             }//move

         }//(ch=='l' || ch==77) && pj<9


        if((ch=='j' || ch==75) && pj>0)
        {
             point=60;
             if(ch==oldch)
             {  
                 if(k==1)
                 {   
                      if(pi==0)
                      arr[pi][pj]=22;
                      else if(pi==9)
                      arr[pi][pj]=21;
                      else
                      arr[pi][pj]=16;
                 }
                 else
                 arr[pi][pj]='-';
                 store=arr[pi][pj-1];
                    
                     if(store==wall);
                     else
                     pj--;
                     if(store==' ' || store=='-')
                     k=0;
                     else{
                     //printf("걸림");
                     //system("pause");
                     //arr[pi][pj]=16;
                     k=1;
                     }
             }//move
        }//if
        if((ch=='i' || ch==72) && pi>0)
        {
             point=30;
             if(ch==oldch)
             {   if(k==1)
                 {    
                       if(pj==0)
                       arr[pi][pj]=25;
                       else if(pj==9)
                       arr[pi][pj]=23;
                       else
                       arr[pi][pj]=16;
                 }
                 else
                 arr[pi][pj]='|';
                 store=arr[pi-1][pj];
                    
                     if(store==wall);
                     else
                     pi--;
                     if(store==' ' || store=='|')
                     k=0;
                     else{
                     //printf("걸림");
                     //system("pause");
                     //arr[pi][pj]=16;
                     k=1;
                     }
             }//move
        }//if 
        if((ch=='k' || ch==80) && pi<9)
        {
             point=31;
             if(ch==oldch)
             {   if(k==1)
                 {
                      if(pj==0)
                      arr[pi][pj]=25;
                      else if(pj==9)
                      arr[pi][pj]=23;
                      else
                      arr[pi][pj]=16;
                 }
                 else
                 arr[pi][pj]='|';
                 store=arr[pi+1][pj];
                    
                     if(store==wall);
                     else
                     pi++;
                     if(store==' ' || store=='|')
                     k=0;
                     else{
                     //printf("걸림");
                     //system("pause");
                     //arr[pi][pj]=16;
                     k=1;
                     }
             }//move       
        }//if            
       
       
        arr[pi][pj]=point;
        show(arr);         
         
         
          }//for

   
   
   
   
    system("pause");
    return 0;
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 299
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1079
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2397
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10321
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4721
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8281
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 18960
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 37861
349 정올 기초다지기(포인터-자가진단4) killerjack 2014.11.15 560
348 정올 기초다지기(포인터-자가진단5) killerjack 2014.11.15 540
347 정올 기초다지기(포인터-자가진단6) killerjack 2014.11.15 493
346 정올 기초다지기(포인터-자가진단7) killerjack 2014.11.15 508
345 정올 기초다지기(aG001-포인터1) killerjack 2014.11.15 442
344 정올 기초다지기(aG002-포인터2) killerjack 2014.11.15 471
343 정올 기초다지기(aG003-포인터3) killerjack 2014.11.15 428
342 정올 기초다지기(aG004-포인터4) killerjack 2014.11.15 364
341 정올 기초다지기(aG005-포인터5) killerjack 2014.11.22 536
340 정올 기초다지기(파일 입출력-자가진단1) killerjack 2014.11.22 1072
339 정올 기초다지기(파일 입출력-자가진단2) killerjack 2014.11.22 580
338 test killerjack 2014.12.20 247
337 visual studio 무료 다운로드 및 기타 컴파일러들 좋은아빠되기 2015.03.23 1112
336 정올 기초다지기(파일입출력-자가진단3) killerjack 2015.04.11 582
335 정올 기초다지기(파일입출력-자가진단4)미완성 killerjack 2015.04.11 274
334 ddd 선우 2016.03.05 44
333 c언어 곱셈 처리(선우) 선우 2016.03.05 132
332 3의 배수 5의 배수 빼기(승민) 승민 2016.03.05 205
331 c언어 곱셈 처리 2 (선우_) 선우 2016.03.05 125
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 ... 26 Next
/ 26