C_Project_(1)-1
C_Project_(1)-1
Code: CSE-110
Semester: 1stSem Year: 2024 Section: A
Comment:
Mark obtained:
The system efficiently tracks occupied and vacant parking slots, ensuring users
can quickly locate a spot. It also provides automated calculations for parking
duration and corresponding charges. By employing structured programming and
data structures, this project demonstrates the practical implementation of
fundamental C concepts, including arrays, functions, and file handling, to create a
functional and user-friendly parking solution.
This project serves as a stepping stone for integrating software-driven solutions
into real-world parking management, contributing to smart city development and
sustainable urban mobility
OBJECTIVE:
APPLICATIONS OF PROJECT:
Automated parking slot allocation and monitoring.
NOVELTY OF PROJECT:
Cost-effective and lightweight solution using C language.
5. File Handling: For storing and retrieving data such as parking records and user
details.
6. Structures: To group related data such as vehicle details and parking slots.
8. Arrays: For managing parking slot statuses and storing static data.
11. Error Handling: Ensuring smooth program execution and handling invalid
inputs.
12. Sorting and Searching Algorithms: For efficient data management like finding
available slots.
1. Start
Add Vehicle
Remove Vehicle
Exit
If Add Vehicle:
If available:
If Remove Vehicle:
Search in records.
If found:
If Exit:
5. End
FLOWCHART:
1. Start
If "Add Vehicle":
Check availability.
If "Remove Vehicle":
4. End Program
CODE:-
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX_SLOTS 10
typedef struct {
int slotNumber;
char vehicleNumber[20];
int isOccupied;
} ParkingSlot;
ParkingSlot parkingSlots[MAX_SLOTS];
void initializeSlots() {
parkingSlots[i].slotNumber = i + 1;
parkingSlots[i].isOccupied = 0;
strcpy(parkingSlots[i].vehicleNumber, "None");
}
// Display Parking Slots
void displaySlots() {
printf("\nSlot Status:\n");
printf("Slot\tVehicle Number\tStatus\n");
printf("%d\t%s\t\t%s\n", parkingSlots[i].slotNumber,
parkingSlots[i].vehicleNumber,
// Add a Vehicle
void addVehicle() {
char vehicleNumber[20];
scanf("%s", vehicleNumber);
if (!parkingSlots[i].isOccupied) {
parkingSlots[i].isOccupied = 1;
strcpy(parkingSlots[i].vehicleNumber, vehicleNumber);
return;
}
// Remove a Vehicle
void removeVehicle() {
char vehicleNumber[20];
scanf("%s", vehicleNumber);
parkingSlots[i].isOccupied = 0;
strcpy(parkingSlots[i].vehicleNumber, "None");
return;
// Main Menu
void menu() {
int choice;
do {
printf("4. Exit\n");
scanf("%d", &choice);
switch (choice) {
case 1:
displaySlots();
break;
case 2:
addVehicle();
break;
case 3:
removeVehicle();
break;
case 4:
break;
default:
int main() {
initializeSlots();
menu();
return 0;
}
Outcome/Result: Smart Parking System Project
2. Real-Time Slot Monitoring: Users can check the current status of parking slots
(occupied or vacant) at any time.
Conclusion:
The Smart Parking System project provides a functional and reliable solution for
parking management, contributing to improved user experience and operational
efficiency in parking facilities.