You are on page 1of 19

BUS RESERVATION SYSTEM

A PROJECT REPORT
Submitted by
SHAMSHAD ALAM (220101120029)
WAHAB KHAN (220101120040)
SUNIL KUMAR (220101120041)
RAJ KAPOOR (220101120042)
SUMANT KUMAR (220101120045)
SAMEER PATEL (220101120033)

in partial fulfillment for the award of the


degree of
BACHELOR OF TECHNOLOGY
in
COMPUTER SCIENCE & ENGINNERING

SCHOOL OF ENGINEERING AND TECHNOLOGY

PARALAKHEMUNDI CAMPUS

CENTURION UNIVERSITY OF TECHNOLOGY AND MANAGEMENT

ODISHA

NOVEMBER 2023
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
CENTURION UNIVERSITY OF TECHNOLOGY&MANAGEMENT,
PARALAKHEMUNDI-761211

BONAFIDE CERTIFICATE

Certified that this project report “BUS RESERVATION SYSTEM” is the bonafide work of
“WAHAB KHAN” who carried out the project work under my supervision. This isto further
certify to the best of my knowledge, that this project has not been carried out earlier in this institute
and the university.

SIGNATURE SIGNATURE
(Prof. Rama Chandra Padhy) (External)
Department of computer science and engineering

Certified that the above mentioned project has been duly carried out as per
the norms of the college and statutes of the university.

SIGNATURE

(Prof. Debendra Maharana)


HEAD OF THE DEPARTMENT
Computer Science & Engineering

DEPARTMENT SEAL
DECLARATION

I hereby declare that the project entitled “BUS RESERVATION SYSTEM” submitted for
the “Project” of 3th semester B. Tech in Computer Science and Engineering is my original
work and the project has not formed the basis for the award of any Degree / Diploma or
any other similar titles in any other University / Institute.

Name of the Student:

Signature of the Student:

Registration No:

Place: PARALAKHEMUNDI

Date:
ACKNOWLEDGEMENTS

I wish to express my profound and sincere gratitude to Ms. Biswa Ranjan Routray,
Department of Computer Science and Engineering, SoET, Paralakhemundi Campus, who
guided me into the intricacies of this project nonchalantly with matchless magnanimity.

I thank Prof. Debendra Maharana, Head of the Dept. of Department of Computer Science
and Engineering, SoET, Paralakhemundi Campus and Prof. Ashish Ranjan Dash, Dean,
School of Engineering and Technology, Paralakhemundi Campus for extending their support
during Course of this investigation.

I would be failing in my duty if I don’t acknowledge the cooperation rendered during


various stages of image interpretation by Prof. Rama Chandra Padhy.

I am highly grateful to Prof. Rama Chandra Padhy, who evinced keen interest and
invaluable support in the progress and successful completion of my project work.
I am indebted to Prof. Rama Chandra Padhy, for their constant encouragement, co-
operation and help. Words of gratitude are not enough to describe the accommodation and
fortitude which they have shown throughout my endeavor.

Name of the Student:

Signature of the Student:

Registration No:

Place: Paralakhemundi

Date:
TABLE OF CONTENTS
CHAPTER NO. TITLE PAGE NO.

CERTIFICATE 2
DECLARATION 3
ACKNOWLEDGEMENTS 4

ABSTRACT ........................................................................................................... 6

1. INTRODUCTION............................................................................................................ 7
2. METHODOLOGY .......................................................................................................... 8
3. SYSTEMREQUIREMENT ............................................................................................ 9
3.1 HardwareSpecificationServer ....................................................................................... 9
3.2 Software Specification Server...................................................................................... 9
4. PROPOSED SOLUTION............................................................................................... 9
5. IMPLEMENTATION ..................................................................................................... 10
5.1 Source code… .............................................................................................................. 10
5.2 Output .......................................................................................................................... 14
6. CONCLUSION ................................................................................................................ 18
7. FUTURE SCOPE ............................................................................................................. 18
8. REFERENCES… ............................................................................................................. 19
A PROJECT ON BUS RESERVATION SYSTEM

Abstract
The Bus Reservation System is a comprehensive software solution designed to streamline and
enhance the process of booking and managing bus tickets. This system aims to provide
convenience to both passengers and bus operators by offering a user-friendly online platform.
Passengers can search for available bus routes, select preferred seats, and make secure online
payments, while bus operators can efficiently manage their fleets and reservations. Key features
of the Bus Reservation System include an intuitive user interface, real-time seat availability
updates, secure payment processing, and the ability to track and modify reservations.
Additionally, the system offers insights and analytics to help bus operators optimize routes,
schedules, and pricing strategies .This system not only benefits passengers by making ticket
booking hassle-free but also improves the operational efficiency of bus companies. It simplifies
the reservation process, reduces manual paperwork, and enhances the overall travel experience.
The Bus Reservation System contributes to the modernization of the bus transportation industry
and aligns with the growing trend of digitization in the travel sector.
Key Words: Bus Ticket, Reservation, C Program, Booking System
1. INTRODUCTION
The Bus Reservation System is a critical component of modern transportation management,
enabling passengers to book and manage bus tickets efficiently. In an era of digitalization,
where convenience and accessibility are paramount, this project aims to develop a robust and
user-friendly bus reservation system using the C programming language.This system will offer
passengers the ability to check bus schedules, select routes, reserve seats, and make secure
payments online. It will also provide administrators with tools to manage bus routes, monitor
bookings, and ensure a smooth operation of the bus service.By developing this bus reservation
system in C, we are leveraging the power of a versatile and widely-used programming language
to create a reliable, efficient, and cost-effective solution. This project is designed to benefit
both passengers and bus service providers, offering a seamless booking experience while
enhancing the overall management of bus services.

The success of this project hinges on the collaboration of a skilled development team and the
use of C's capabilities for efficient data handling and system control. With this system, we aim
to streamline bus reservations and contribute to the ease of travel for passengers in an
increasingly interconnected world.
2. METHODOLOGY
Requirements Analysis: Begin by gathering detailed requirements for the system. Understand
the needs of the users and stakeholders, including features like booking, cancellation, and
payment processing.

System Design: Design the system's architecture, database schema, and user interfaces. Create
a system blueprint that outlines the components and how they interact.

Data Modeling: Define the data structures necessary for storing information, such as buses,
routes, reservations, and passenger details. Decide whether you'll use a database or file-based
storage.

User Interface Design: Design a user-friendly interface for booking and managing reservations.
Create wireframes or mockups to visualize the user experience.

Database Setup (Optional): If using a database, set up the database system, create tables, and
establish connections to store and retrieve data.

Coding: Write the C code to implement the system's functionality. This includes: Functions for
user registration and login. Booking and cancelling reservations .Payment processing (if online
payments are involved).Search and display of available buses and routes.

Testing: Rigorously test the system for correctness and robustness. Perform unit testing,
integration testing, and user acceptance testing to identify and fix issues.

Security Implementation: Implement security measures to protect user data and payment
information. Use encryption for sensitive data.

Error Handling and Validation: Ensure proper error handling and validation of user inputs to
prevent data corruption and system crashes.

Documentation: Create comprehensive documentation, including user manuals and code


documentation, to help users and developers understand the system.

Deployment: Deploy the system on a server or platform of your choice. Ensure that it's
accessible to users. Developing a bus reservation system is a complex task and may involve
collaboration with a team of developers, database administrators, and designers. Ensure you
follow best practices in coding and adhere to industry security standards when handling user
data and payments.
3. SYSTEM REQUIREMENT
3.1 Hardware Specification Server: Processor-7th generation i5 RAM-128MB (min) Hard
disk-20GB Client: Processor-7th generation i5 Ram-128MB (min) Hard disk- 20GB
3.2Software Specification Platform - Windows 8,10

4. PROPOSED SOLUTION
User Interface Design: Create wireframes or mock ups for the user interface, including
screens for booking, cancelling, and managing reservations.

Database Setup (if applicable): If using a database, set up the database system, design the
schema, and establish connections for data storage and retrieval.

User Registration and Login: Implement user registration and login functionality.

Booking System: Develop the booking process, including seat selection and availability
checks.

Reservation Cancellation: Implement reservation cancellation functionality.

Payment Processing (if online payments are involved):Develop payment processing


capabilities, integrating with payment gateways if necessary.

Search and Display of Buses and Routes: Implement features to search and display available
buses and routes.

Testing and Quality Assurance: Conduct unit testing and integration testing for each
component.

Perform user acceptance testing to ensure the system functions correctly.


5.IMPLEMENTATION
SOURCE CODE:-
#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#define NUM_SEATS 20

#define MAX_NAME_LENGTH 50

struct Passenger {

char name[MAX_NAME_LENGTH];

char gender;

char start;

char destination;

int age;

double ticketCost;

};

int seatAvailability[NUM_SEATS];

void displaySeatAvailability() {

printf("Seat Availability:\n");

for (int i = 0; i < NUM_SEATS; i++) {

if (seatAvailability[i] == 0) {

printf("Seat %d: Available\n", i + 1);


} else {

printf("Seat %d: Reserved\n", i + 1);

printf("\n");

void reserveSeat(int seatNum, struct Passenger passenger) {

if (seatAvailability[seatNum - 1] == 0) {

seatAvailability[seatNum - 1] = 1;

double ticketCost = 0.0;

if (passenger.start == 'A' && passenger.destination == 'B') {

ticketCost = 20.0; // Adjust the cost based on your requirements

}else if (passenger.start == 'A' && passenger.destination == 'C'){

ticketCost = 40.0;

}else if (passenger.start == 'A' && passenger.destination == 'D'){

ticketCost = 60.0;

} else if (passenger.start == 'B' && passenger.destination == 'C') {

ticketCost = 20.0; // Adjust the cost based on your requirements

}else if (passenger.start == 'B' && passenger.destination == 'D') {

ticketCost = 40.0;

} else if (passenger.start == 'C' && passenger.destination == 'D') {

ticketCost = 20.0; // Adjust the cost based on your requirements

}
printf("Seat %d is reserved for passenger: %s \n \n Age: %d \n Gender: %c \n Start:
%c \n Destination: %c \n Cost: $%.2f \n",

seatNum, passenger.name, passenger.age, passenger.gender, passenger.start,


passenger.destination, ticketCost);

} else {

printf("Seat %d is already reserved. Please choose another seat.\n", seatNum);

void cancelSeat(int seatNum) {

if (seatAvailability[seatNum - 1] == 1) {

seatAvailability[seatNum - 1] = 0; // Mark the seat as available again

printf("Seat %d reservation is canceled.\n", seatNum);

} else {

printf("Seat %d is not reserved. Cannot cancel.\n", seatNum);

int main() {

for (int i = 0; i < NUM_SEATS; i++) {

seatAvailability[i] = 0; // 0 represents an available seat

while (1) {
int choice;

printf("Bus Reservation System Menu:\n");

printf("1. Display Seat Availability\n");

printf("2. Reserve a Seat\n");

printf("3. Cancel Reservation\n");

printf("4. Exit\n");

printf("Enter your choice: ");

scanf("%d", &choice);

switch (choice) {

case 1:

displaySeatAvailability();

break;

case 2:

if (NUM_SEATS == 0) {

printf("Sorry, all seats are reserved.\n");

break;

int seatNum;

struct Passenger passenger;

printf("Enter passenger name: ");

scanf("%s", passenger.name);
printf("Enter passenger age: ");

scanf("%d", &passenger.age);

printf("Enter passenger gender (M/F): ");

scanf(" %c", &passenger.gender);

printf("Enter starting stop (A/B/C): ");

scanf(" %c", &passenger.start);

printf("Enter destination stop (B/C/D): ");

scanf(" %c", &passenger.destination);

printf("Available Seats:\n");

displaySeatAvailability();

printf("Enter seat number to reserve: ");

scanf("%d", &seatNum);

if (seatNum < 1 || seatNum > NUM_SEATS) {

printf("Invalid seat number. Please choose a valid seat.\n");

} else {

reserveSeat(seatNum, passenger);

break;

case 3:

int cancelSeatNum;

printf("Enter seat number to cancel reservation: ");

scanf("%d", &cancelSeatNum);
cancelSeat(cancelSeatNum);

break;

case 4:

printf("Exiting the Bus Reservation System.\n");

exit(0);

default:

printf("Invalid choice. Please choose a valid option.\n");

return 0;

Output:
DISPLAY SEAT AVAILABILITY:
RESERVE A SEAT

CANCELLATION OF THE SEAT


EXITING:

5. CONCLUSION

In conclusion, the bus reservation system project implemented using C has successfully
demonstrated the capabilities of creating a user-friendly platform for booking and managing
bus reservations. The project has achieved its primary objectives, such as allowing users to
view bus schedules, reserve seats, and generate tickets. It also includes essential features like
user authentication, seat availability tracking, and fare calculation.The project's codebase has
been well-structured and documented, making it maintainable and extensible for future
enhancements. However, there is always room for improvement, such as incorporating real-
time updates and more advanced security measures to protect user data.

Overall, the bus reservation system project showcases the potential of using C for creating
efficient and functional software solutions in the transportation sector. It provides a solid
foundation for further development and refinement based on specific requirements and
feedback from users.
FUTURE SCOPE

1. Online Booking: You can upgrade the system to allow users to make reservations and
payments online. This could involve creating a web-based interface or mobile app.
2. Seat Selection: Implement a feature that allows passengers to select their seats when
booking, similar to how airlines do it.
3. User Accounts: Develop a user account system where passengers can create profiles,
store booking history, and receive personalized offers.
4. Real-time Tracking: Incorporate GPS and mapping technology to enable passengers to
track the bus's real-time location and estimated arrival time.
5. Payment Integration: Integrate with various payment gateways to provide multiple
payment options, including credit cards, mobile wallets, and more.
6. Feedback and Ratings: Allow passengers to leave feedback and ratings for their
journeys, helping to improve the service quality.
7. Admin Dashboard: Enhance the admin panel with advanced features for managing
routes, schedules, buses, and passenger data efficiently.
8. Route Optimization: Use algorithms to optimize routes and schedules for better
efficiency and cost savings.
9. Mobile App: Develop a mobile app for both Android and iOS platforms to reach a wider
audience.
10. Data Analytics: Implement data analytics to gather insights from booking patterns,
passenger preferences, and operational data.
11. Integration with IoT: Use Internet of Things (IoT) devices to monitor bus conditions,
such as temperature, fuel levels, and maintenance requirements.
12. Multi-language Support: Make the system multilingual to cater to a diverse customer
base.
13. Accessibility Features: Ensure that the system is accessible to all, including people with
disabilities.
14. Integration with Other Services: Collaborate with hotels, travel agencies, and other
services to offer bundled packages.
15. Customer Support Chatbot: Implement a chatbot for customer support, providing quick
responses to common queries.
REFERENCES
Data Structures Using C" by Aaron M. Tenenbaum and Yedidyah Langsam: This book can help
you understand the fundamental data structures needed for a reservation system.

"C Programming Absolute Beginner's Guide" by Perry and Miller: This beginner-friendly book
covers C programming essentials that are essential for any project.

GitHub - Search for open-source projects related to bus reservation systems in C. Many
developers share their code on GitHub, which can serve as a valuable reference.

You might also like