[code]

#include <stdio.h>  

int main()  

{  

    int arr[10][10];  

    int m=10, n=10;  

    int i, j, r; 

    char a[4]; 

char b[4];

   

   for(i=0; i < m; i++)  

    {  

          for (j=0; j < n; j++)  

          {  

                arr[i][j]=i*n+j+1;  

          }  

    }  

     

     while(1) 

    { 

        

        for(i=0; i < m; i++)  

        {  

              for (j=0; j < n; j++)  

              { 

              if( arr[i][j] ) printf("- ",arr[i][j]);  

              else printf(" * "); 

              }  

              printf(" ");  

        } 

 printf("좌석을 처음 예약하시는건가요? y/n)");

 scanf("%s",b);


 if(b[0] =='n')

 {

          printf("취소할 좌석을 알려주세요");

 scanf("%d", &r);

 arr[r/10][r-1]=r;

 

      

  }


       printf("좌석을 예약하시겠습니까?(y또는 n) "); 

       scanf("%s", a); 

       if(a[0] =='y') 

       { 

          printf("좌석을 선택해주세요. "); 

          scanf("%d", &r); 

          

          for( i=0 ; i<m ; i++ ) { 

              for( j=0 ; j<n ; j++ ) { 

                 if( arr[i][j] == r ) { 

                    r = 0; 

                    arr[i][j] = 0;   

                    break; 

                 } 

              } 

              if( r == 0 ) 

              break; 

          } 

           

          if( r ) { 

            puts("없는 좌석이거나 이미 예약되었습니다."); 

          } 

       } 

       else 

        break; 

   } 

    return 0; 

[/code]


--------------------------------------------------------------------------------------------

이렇게 한꺼번에 짜는거까진 성공했는데.. 여기서 2인예약, 랜덤예약 이런거까지 넣어보라고해서.. 넣을라고했는데

main하나에 계속 넣기에는 너무 길이도 커지고 못잡해져서 함수써서 바꿀려고했는데 막히네요..

-----------------------------------------------------------------------------------------------



[code]

#include <stdio.h>

#include<stdio.h>

#include<iostream>


int show()

{

exit(0);

}

void reservation(char arr[10][10])

{

int r,i,j;

int m=10, n=10;

int arr[10][10];



       printf("좌석을 선택해주세요.");

          scanf("%d", &r); 

          //r = find_seat(r, arr, &i, &j); 

          for( i=0 ; i<m ; i++ ) { 

              for( j=0 ; j<n ; j++ ) { 

                 if( arr[i][j] == r ) { 

                    r = 0; 

                    arr[i][j] = 0;   // means * 

               

                 } 

              } 

 }

             

         

}

int main()  

{  

int z;

    int arr[10][10];  

    int m=10, n=10;  

    int i, j, r; 

int *pz;

    char a[4]; 

char b[4];

   // initialize 

   for(i=0; i < m; i++)  

    {  

          for (j=0; j < n; j++)  

          {  

                arr[i][j]=i*n+j+1;  

          }  

    }  

     

     while(1) 

    { 

      // print status   

        for(i=0; i < m; i++)  

        {  

              for (j=0; j < n; j++)  

              { 

              if( arr[i][j] ) printf("- ",arr[i][j]);  

              else printf(" * "); 

              }  

              printf(" ");  

        } 


printf("극장예약시스템입니다. ");

printf("1.예약");

printf("2.예약변경");

printf("3.종료");

scanf("-",&r);


if(r == 3)

     {

show();


     }

else if(r==1)

{

reservation(arr(*)[10][10]);

}



}


return 0;


}

[/code]



------------------------------------------------------------------------------------------------------

r이 1일때 reservation 함수로 가져와서 arr[][]값을 가져와야되는데 그래서 포인터 이래저래 막써봐도 

않되네요....ㅠㅠㅠ..


해결방법좀 알려주세요.. return 값을 arr[][]이걸로 받아도 않되고... 주소값그대로 받으면 된다는 생각은 있는데 어찌할지....


그리고 완전간단한건데 여기에 using namespace std; 이거 추가하면 printf랑 scanf가 에러뜨구 그냥 iotream없애면 exit함수가 작동을 안하네요.. 왜 그럴까요?ㅠ