

{"id":145775,"date":"2025-07-09T18:37:45","date_gmt":"2025-07-09T13:07:45","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=145775"},"modified":"2025-07-09T18:37:45","modified_gmt":"2025-07-09T13:07:45","slug":"movie-ticket-booking-system-using-data-structures","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/","title":{"rendered":"DSA Project &#8211; Movie Ticket Booking System"},"content":{"rendered":"<h3>Program 1<\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">\/\/ Project --- Movie Ticket Booking System (2D Array and Queue)\r\n#include &lt;stdio.h&gt;\r\n#include &lt;stdlib.h&gt;\r\n#include &lt;string.h&gt;\r\n\r\n#define ROWS 10\r\n#define COLS 10\r\n\r\n\/\/ Structure to hold customer booking\r\ntypedef struct \r\n{\r\n    int booked;         \/\/ 0 = available, 1 = booked\r\n    char name[50];      \/\/ Name of person who booked\r\n} Seat;\r\n\r\n\/\/ Declare theater seating\r\nSeat theater[ROWS][COLS];\r\n\r\n\/\/ Initialize all seats to available\r\nvoid initializeSeats() \r\n{\r\n    for (int i = 0; i &lt; ROWS; i++)\r\n        for (int j = 0; j &lt; COLS; j++) \r\n        {\r\n            theater[i][j].booked = 0;\r\n            strcpy(theater[i][j].name, \"\");\r\n        }\r\n}\r\n\r\n\/\/ Display seating arrangement\r\nvoid displaySeats() \r\n{\r\n    printf(\"\\nSeating Arrangement (1 = Booked, 0 = Available):\\n\");\r\n    for (int i = 0; i &lt; ROWS; i++) \r\n    {\r\n        printf(\"Row %d: \", i + 1);\r\n        for (int j = 0; j &lt; COLS; j++)\r\n         {\r\n            printf(\"%d \", theater[i][j].booked);\r\n        }\r\n        printf(\"\\n\");\r\n    }\r\n}\r\n\r\n\/\/ Book a ticket\r\nvoid bookSeat() \r\n{\r\n    int row, col;\r\n    char name[50];\r\n\r\n    printf(\"Enter row (1-%d): \", ROWS);\r\n    scanf(\"%d\", &amp;row);   \/\/ 1 \r\n    printf(\"Enter seat number (1-%d): \", COLS);\r\n    scanf(\"%d\", &amp;col);   \/\/1\r\n    getchar();  \/\/ consume newline   \r\n\r\n    if (row &lt; 1 || row &gt; ROWS || col &lt; 1 || col &gt; COLS) \r\n    {\r\n        printf(\"Invalid seat selection.\\n\");\r\n        return;\r\n    }\r\n\r\n    if (theater[row - 1][col - 1].booked)   \r\n    {\r\n        printf(\"Seat already booked.\\n\");\r\n    } \r\n    else \r\n    {\r\n        printf(\"Enter your name: \");\r\n        fgets(name, sizeof(name), stdin);\r\n        name[strcspn(name, \"\\n\")] = 0;  \/\/ remove newline\r\n\r\n        theater[row - 1][col - 1].booked = 1;   \r\n        strcpy(theater[row - 1][col - 1].name, name);\r\n\r\n        printf(\"Seat (%d, %d) booked successfully for %s.\\n\", row, col, name);\r\n    }\r\n}\r\n\r\n\/\/ Cancel a ticket\r\nvoid cancelSeat() \r\n{\r\n    int row, col;\r\n\r\n    printf(\"Enter row of the seat to cancel (1-%d): \", ROWS);\r\n    scanf(\"%d\", &amp;row);\r\n    printf(\"Enter seat number (1-%d): \", COLS);\r\n    scanf(\"%d\", &amp;col);\r\n\r\n    if (row &lt; 1 || row &gt; ROWS || col &lt; 1 || col &gt; COLS) \r\n    {\r\n        printf(\"Invalid seat.\\n\");\r\n        return;\r\n    }\r\n\r\n    if (theater[row - 1][col - 1].booked==1) \r\n    {\r\n        printf(\"Booking for %s canceled.\\n\", theater[row - 1][col - 1].name);\r\n        theater[row - 1][col - 1].booked = 0;\r\n        strcpy(theater[row - 1][col - 1].name, \"\");\r\n    } else\r\n     {\r\n        printf(\"Seat is already available.\\n\");\r\n    }\r\n}\r\n\r\n\/\/ Display all bookings\r\nvoid showBookings() \r\n{\r\n    printf(\"\\nBooked Seats:\\n\");\r\n    int found = 0;\r\n    for (int i = 0; i &lt; ROWS; i++)\r\n        for (int j = 0; j &lt; COLS; j++) \r\n        {\r\n            if (theater[i][j].booked==1) \r\n            {\r\n                printf(\"Seat (%d, %d) - %s\\n\", i + 1, j + 1, theater[i][j].name);\r\n                found = 1;\r\n            }\r\n        }\r\n\r\n    if (!found)\r\n     {\r\n        printf(\"No bookings yet.\\n\");\r\n     }\r\n}\r\n\r\n\/\/ Main menu\r\nint main() \r\n{\r\n    int choice;\r\n    initializeSeats();\r\n\r\n    while (1) \r\n    {\r\n        printf(\"\\n------------Movie Ticket Booking System-----------------------\\n\");\r\n        printf(\"1. Show Seat Layout\\n\");\r\n        printf(\"2. Book a Seat\\n\");\r\n        printf(\"3. Cancel a Booking\\n\");\r\n        printf(\"4. Show All Bookings\\n\");\r\n        printf(\"5. Exit\\n\");\r\n        printf(\"\\n--------------------------------------------------------------------\\n\");\r\n        printf(\"Enter your choice: \");\r\n        scanf(\"%d\", &amp;choice);\r\n        getchar();  \/\/ consume newline\r\n\r\n        switch (choice) \r\n        {\r\n            case 1:\r\n                displaySeats();\r\n                break;\r\n            case 2:\r\n                bookSeat();\r\n                break;\r\n            case 3:\r\n                cancelSeat();\r\n                break;\r\n            case 4:\r\n                showBookings();\r\n                break;\r\n            case 5:\r\n                printf(\"Exiting system. Goodbye!\\n\");\r\n                return 0;\r\n            default:\r\n                printf(\"Invalid choice. Try again.\\n\");\r\n        }\r\n    }\r\n\r\n    return 0;\r\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Program 1 \/\/ Project &#8212; Movie Ticket Booking System (2D Array and Queue) #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #define ROWS 10 #define COLS 10 \/\/ Structure to hold customer booking typedef struct {&#46;&#46;&#46;<\/p>\n","protected":false},"author":581,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24020],"tags":[24331,34845,34846,34847,34844,34801,34857,34858,34856,34855],"class_list":["post-145775","post","type-post","status-publish","format-standard","hentry","category-data-structure-tutorials","tag-data-structures","tag-data-structures-practical","tag-data-structures-program","tag-data-structures-project","tag-dsa","tag-movie-ticket-booking-system","tag-movie-ticket-booking-system-in-data-structures","tag-movie-ticket-booking-system-in-dsa","tag-movie-ticket-booking-system-project","tag-movie-ticket-booking-system-using-data-structures"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>DSA Project - Movie Ticket Booking System - DataFlair<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DSA Project - Movie Ticket Booking System - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Program 1 \/\/ Project --- Movie Ticket Booking System (2D Array and Queue) #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #define ROWS 10 #define COLS 10 \/\/ Structure to hold customer booking typedef struct {&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-07-09T13:07:45+00:00\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"DSA Project - Movie Ticket Booking System - DataFlair","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/","og_locale":"en_US","og_type":"article","og_title":"DSA Project - Movie Ticket Booking System - DataFlair","og_description":"Program 1 \/\/ Project --- Movie Ticket Booking System (2D Array and Queue) #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #define ROWS 10 #define COLS 10 \/\/ Structure to hold customer booking typedef struct {&#46;&#46;&#46;","og_url":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2025-07-09T13:07:45+00:00","author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/c187795dc82ab948373cca526df7c445"},"headline":"DSA Project &#8211; Movie Ticket Booking System","datePublished":"2025-07-09T13:07:45+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/"},"wordCount":8,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"keywords":["Data Structures","data structures practical","data structures program","data structures project","dsa","movie ticket booking system","movie ticket booking system in data structures","movie ticket booking system in dsa","movie ticket booking system project","movie ticket booking system using data structures"],"articleSection":["Data Structure Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/","url":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/","name":"DSA Project - Movie Ticket Booking System - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"datePublished":"2025-07-09T13:07:45+00:00","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/movie-ticket-booking-system-using-data-structures\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Data Structure Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/data-structure-tutorials\/"},{"@type":"ListItem","position":3,"name":"DSA Project &#8211; Movie Ticket Booking System"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/c187795dc82ab948373cca526df7c445","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/2302ebc438084d2f1f993edc1996a0aae01332e81f3227cba8df0c48ec010ca4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/2302ebc438084d2f1f993edc1996a0aae01332e81f3227cba8df0c48ec010ca4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2302ebc438084d2f1f993edc1996a0aae01332e81f3227cba8df0c48ec010ca4?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team provides high-impact content on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. We make complex concepts easy to grasp, helping learners of all levels succeed in their tech careers.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam6\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/145775","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/581"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=145775"}],"version-history":[{"count":5,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/145775\/revisions"}],"predecessor-version":[{"id":145788,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/145775\/revisions\/145788"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=145775"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=145775"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=145775"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}