停车管理系统程序c语言,停车场管理系统C语言实现
时间: 2024-01-06 22:04:58 浏览: 88
停车场管理系统C语言实现.doc
好的,停车场管理系统的程序可以分为以下几个模块:
1. 车辆进入模块:当车辆进入停车场时,需要记录车牌号、进入时间等信息,并将该信息保存到系统中。
2. 车辆出去模块:当车辆驶出停车场时,需要根据车牌号查询该车辆的进入时间,并计算出停车费用。同时,需要从系统中删除该车辆的信息。
3. 车位管理模块:需要记录停车场的总车位数和当前可用车位数,并在车辆进入或离开时更新可用车位数。
4. 数据库模块:需要将车辆信息保存到数据库中,并能够根据车牌号查询车辆进出记录。
下面是一个简单的停车场管理系统的C语言实现:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define MAX_CARS 100
// 定义车辆信息结构体
typedef struct {
char plateNumber[10]; // 车牌号
time_t enterTime; // 进入时间
} Car;
// 定义全局变量
Car cars[MAX_CARS]; // 车辆信息数组
int totalSpaces = 100; // 总车位数
int availableSpaces = 100; // 可用车位数
// 车辆进入函数
void carEnter() {
Car car;
printf("请输入车牌号:");
scanf("%s", car.plateNumber);
car.enterTime = time(NULL);
cars[MAX_CARS - availableSpaces] = car;
availableSpaces--;
printf("车辆已进入停车场\n");
}
// 车辆离开函数
void carLeave() {
char plateNumber[10];
printf("请输入车牌号:");
scanf("%s", plateNumber);
int i;
for (i = 0; i < MAX_CARS - availableSpaces; i++) {
if (strcmp(cars[i].plateNumber, plateNumber) == 0) {
double cost = (time(NULL) - cars[i].enterTime) * 0.1;
printf("停车费用为:%.2f元\n", cost);
availableSpaces++;
int j;
for (j = i; j < MAX_CARS - availableSpaces; j++) {
cars[j] = cars[j + 1];
}
printf("车辆已离开停车场\n");
return;
}
}
printf("该车辆未在停车场内\n");
}
// 显示车位信息函数
void showSpaces() {
printf("总车位数:%d\n", totalSpaces);
printf("可用车位数:%d\n", availableSpaces);
}
// 显示所有车辆信息函数
void showCars() {
int i;
for (i = 0; i < MAX_CARS - availableSpaces; i++) {
printf("车牌号:%s,进入时间:%s", cars[i].plateNumber, ctime(&cars[i].enterTime));
}
}
// 主函数
int main() {
int choice;
do {
printf("停车场管理系统\n");
printf("1. 车辆进入\n");
printf("2. 车辆离开\n");
printf("3. 显示车位信息\n");
printf("4. 显示所有车辆信息\n");
printf("5. 退出\n");
printf("请选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
if (availableSpaces == 0) {
printf("停车场已满\n");
} else {
carEnter();
}
break;
case 2:
if (MAX_CARS - availableSpaces == 0) {
printf("停车场为空\n");
} else {
carLeave();
}
break;
case 3:
showSpaces();
break;
case 4:
showCars();
break;
case 5:
printf("谢谢使用\n");
break;
default:
printf("无效的选择\n");
break;
}
} while (choice != 5);
return 0;
}
```
阅读全文