본문 바로가기

C

[C언어] 실습: 좌석 예약 프로그램 구현하기

반응형

좌석 예약 프로그램 구현하기


<입력 및 출력 형식>

[1] 예약 [2] 취소 [3] 현황 [4] 종료

===========================

1 2 3 4 5 6 7 8 9 10

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

0 0 0 0 0 0 0 0 0 0

===========================

좌석 선택: 2

===========================

1 2 3 4 5 6 7 8 9 10

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

0 1 0 0 0 0 0 0 0 0

===========================

좌석 선택:

 

#include<stdio.h>
#define SIZE 10

void seatStatus(int a[]);

int main(){

   int seat[SIZE] = {0};   // 10개 좌석에 대한 변수를 선언하고 0으로 초기화 해준다.
   int menu, tmp;

   while(1){
      printf("\n\n[1] 예약\t[2] 취소\t[3] 현황\t[4] 종료\n");
      printf("메뉴 선택 : ");
      scanf("%d", &menu);

      if(menu == 1){
         seatStatus(seat);
         printf("예약 좌석 번호 : ");
         scanf("%d", &tmp);

         if(seat[tmp - 1] == 1)
            printf("잘못 선택되었습니다.\n");
         else
            seat[tmp - 1] =  1;   // screen 화면의 좌석은 1번부터 10번까지 이기 때문에, 사용자가 입력한 숫자에서 '-1'을 해준다.
      }
      else if(menu == 2){
         seatStatus(seat);
         printf("취소 좌석 번호 : ");
         scanf("%d", &tmp);

         seat[tmp - 1] = 0;
      }
      else if(menu == 3){
         seatStatus(seat);
      }
      else
         break;
   }

   printf("프로그램을 종료합니다.\n");

   return 0;
}

void seatStatus(int a[]){   // 1번 부터 10까지 좌석의 현황을 나타내는 함수이다.
   printf("=============================================================\n");
   printf("    1    2    3    4    5    6    7    8    9    10\n");
   printf("-------------------------------------------------------------\n");
   for(int i = 0; i < SIZE; i++){
   printf("%5d", a[i]);
   }
   printf("\n=============================================================\n");
}

 

반응형