这篇文章主要为大家详细介绍了C语言实现简单的停车场管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文分享用C语言实现一个简单的停车管理系统的具体代码,供大家参考。具体内容如下
1.问题描述
1)有两层停车场,每层六个车位。一楼车位满了才能用二楼(停车场可以用二维数组实现)。每辆车的信息包括车牌号、楼层号、车位号、停车时间四项,其中停车时间以分钟计算;
2)假设停车场初始状态为一楼空,二楼已经有四辆车,车位为二楼1-4号,停车时间依次为20、15、10、5;
3)停车操作:当一辆车进入停车场时,先输入其车牌号,然后给它分配一个楼层号和一个车位号(分配前检查车位的使用情况,如果一楼有空车位,必须停在一楼)。停车时间设为5,之前的停车时间会增加5。(此问题简化了时间的处理:一辆车进入只给其他车加5分钟);
4)收费管理(取车):当一辆车离开时,输入其车牌号,先根据其停车时间计算费用,每5分钟0.2元,将该车对应的停车位设置为可用。
5)输出停车场所有车辆的信息;
6)退出系统;
涉及的知识
结构的使用,使用数组作为函数参数等。
2.上代码#include "stdio.h"#includelt;string.hgt;struct car{ char car_num这就是本文的全部内容。希望对大家的学习有帮助,也希望大家能支持一下搜源网。; int floor; int position_num; int time;}CAR = { {"0",1,1,0},{"0",1,2,0},{"0",1,3,0},{"0",1,4,0},{"0",1,5,0},{"0",1,6,0} ,{"冀F12345",2,1,20},{"冀F17845",2,2,15},{"冀F12856",2,3,10},{"冀F12445",2,4,5},{ "0",2,5,0 }, {"0",2,6,0} };void park(struct car CAR[]){ int i, j,k; int flag = 0; char carn[10]; printf("\n请输入车牌号\n"); scanf("%s", carn); for (k = 0; k lt; 12; k++) { if (strcmp(CAR[k].car_num, carn) == 0) { printf("该车已在停车场内\n"); flag = 2; break; } } for (i = 0; i lt; 12; i++) { if (strcmp(CAR[i].car_num,"0") == 0amp;amp;flag==0) { strcpy(CAR[i].car_num, carn); for (j = 0; j lt; 12; j++) { if (strcmp(CAR[j].car_num, "0") != 0) { CAR[j].time += 5; } } printf("该车可停在了%d层%d号\n", CAR[i].floor, CAR[i].position_num); flag = 1; break; } } if (flag == 0) { printf("\n停车场已满\n"); }}void leave(struct car CAR[]){ int i, j; int flag = 0; char carn[10]; float price; scanf("%s",carn); for (i = 0; i lt; 12; i++) { if (strcmp(CAR[i].car_num,carn)==0) { strcpy(CAR[i].car_num,"0"); price = CAR[i].time*0.04; CAR[i].time = 0; flag = 1; printf("\n停车费%f\n", price); } } if (flag == 0) { printf("\n停车场内无此车\n"); } }void information(struct car CAR[]){ printf("车牌号 \t层号\t位号\t时间\n"); for (int i = 0; i lt; 12; i++) { printf("%-10s\t%d\t%d\t%d\n", CAR[i].car_num, CAR[i].floor, CAR[i].position_num, CAR[i].time); }}int main(){ int n; int m = -1; while (m != 0) { printf("\n*************************\n"); printf("1.停车\n"); printf("2.离开\n"); printf("3.输出停车场信息\n"); printf("0.退出\n"); printf("*************************\n"); printf("请输入功能号0-3:"); scanf("%d", amp;m); while (m lt; 0 || mgt;3) { printf("\n输入错误!请输入正确的功能号0-3:"); scanf("%d", amp;m); } if (m == 1) park(CAR); else if (m == 2) leave(CAR); else if (m == 3) information(CAR); } return 0;}3.运行结果部分截图
[10]
精彩评论