[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함수가 작동을 안하네요.. 왜 그럴까요?ㅠ
배열포인터를 넘기면 주소값을 받아줘야하지 않겠어?
'using namespace std; 이거 추가하면 printf랑 scanf가 에러뜨구' 이건 도저히 뭔말인지 모르겠다. 글고 exit함수는 iostream헤더파일에서 갖다쓰나보지뭐. exit함수를 니가 만든거도 아니네
닌 개발하면 안 되겠다 때려치고 다른 일이나 해라