


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<stdio.h>#include<stdlib.h>#include<string.h>#defineMAX3/*车库容量*/#defineprice0.5/*每车每分钟费用*/typedefstructtimeinthour;intmin;Time;/*时间结点*/typedefstructnodecharnum10;Timereach;Timeleave;CarNode;/*车辆信息结点*/typedefstructNODECarNode*stackMAX+1;inttop;Moni_Cheku;typedefstructcar(Car
2、Node*data;structcar*next;QueueNode;typedefstructNode(QueueNode*head;QueueNode*rear;Moni_Biandao;voidInitStack(Moni_Cheku*);/*初始化车库*/intInitQueue(Moni_Biandao*);/*初始化便道*/intArrival(Moni_Cheku*,Moni_Biandao*);/*车辆到达*/voidLeave(Moni_Cheku*,Moni_Cheku*,Moni_Biandao*);/*车辆离开*/voidList(Moni_Cheku,Moni_Bia
3、ndao);/*显示车库和便道的存车信息*/intmain()Moni_ChekuEnter,Temp;Moni_BiandaoWait;intch;InitStack(&Enter);/*初始化车站*/InitStack(&Temp);/*初始化让路的临时链表*/InitQueue(&Wait);/*初始化便道*/printf("n");printf("A_A欢迎进入停车场管理系统1!八_八叩);printf("n");printf("提示!(1).该车库的最大容量为:d;n",MAX);print
4、f("(2).该车库的收费标准为:%4.2f元/(辆*分钟).n",price);while(1)system("CLS");printf("*n");printf("1.车辆到达");printf("2.车辆离开");printf("3.列表显示");nprintf("4.退出系统n");printf(");printf("请选择(1-4):bb");while(1)(scanf("%d”,&ch);if(
5、ch>=1&&ch<=4)break;elseprintf("错误!请重选(1-4):bb");switch(ch)(case1:Arrival(&Enter,&Wait);break;/*车辆到达*/case2:Leave(&Enter,&Temp,&Wait);break;/*车辆离开*/case3:List(Enter,Wait);break;/*打印列表信息*/case4:exit(0);/*退出主程序*/default:break;return0;voidInitStack(Moni_Cheku*
6、s)/*初始化车库*/(inti;s->top=0;for(i=0;i<=MAX;i+)s->stacks->top=NULL;intInitQueue(Moni_Biandao*Q)/*初始化便道*/(Q->head=(QueueNode*)malloc(sizeof(QueueNode);if(Q->head!=NULL)(Q->head->next=NULL;Q->rear=Q->head;return(1);elsereturn(-1);voidPRINT(CarNode*p,introom)/*输出出库车的信息*/(intA
7、1,A2,B1,B2;printf("请输入离开的时间:/*:*/");scanf("%d:%d",&(p->leave.hour),&(p->leave.min);printf("离开车辆的车牌号为:");puts(p->num);printf("其到达时间为:d:%dn”,p->reach.hour,p->reach.min);printf("离开时间为:%d:%dn",p->leave.hour,p->leave.min);A1=p->
8、reach.hour;A2=p->reach.min;B1=p->leave.hour;B2=p->leave.min;printf("应交费用为:%4.2f元",(B1-A1)*60+(B2-A2)*price);free(p);intArrival(Moni_Cheku*Enter,Moni_Biandao*W)/*车辆到达*/(CarNode*p;QueueNode*t;p=(CarNode*)malloc(sizeof(CarNode);fflush(stdin);printf("请输入车牌号(例如:中CUG888):");sc
9、anf("%s”,&(p->num);if(Enter->top<MAX)/*车库未满,车进车库*/Enter->top+;printf("该车在车库位置d.n”,Enter->top);printf("请输入到达时间(*:*):");scanf("%d:%d",&(p->reach.hour),&(p->reach.min);Enter->stackEnter->top=p;return(1);else/*车库已满,车进便道*/printf("该
10、车须在便道等待!n");t=(QueueNode*)malloc(sizeof(QueueNode);t->data=p;t->next=NULL;W->rear->next=t;W->rear=t;return(1);voidLeave(Moni_Cheku*Enter,Moni_Cheku*Temp,Moni_Biandao*W)/*车辆离开*/inti,room;CarNode*p,*t;QueueNode*q;/*判断车库内是否有车*/if(Enter->top>0)/*有车*/printf("请输入车在车库的位置(1-%d
11、):",Enter->top);/*输入车辆离开的彳息*/while(1)scanf("%d",&room);if(room>=1&&room<=Enter->top)break;elseprintf("错误!请重选:");while(Enter->top>room)/*车辆离开*/Temp->top+;Temp->stackTemp->top=Enter->stackEnter->top;Enter->stackEnter->top=NULL
12、;Enter->top-;p=Enter->stackEnter->top;Enter->stackEnter->top=NULL;Enter->top-;while(Temp->top>=1)Enter->top+;Enter->stackEnter->top=Temp->stackTemp->top;Temp->stackTemp->top=NULL;Temp->top-;PRINT(p,room);/*判断通道上是否有车及车库是否已满*/if(W->head!=W->rear)&a
13、mp;&Enter->top<MAX)/*便道的车辆进入车库*/q=W->head->next;t=q->data;Enter->top+;Enter->top);printf("n请输入现在的时间(*:*):");scanf("%d:%d",&(t->reach.hour),&(t->reach.min);W->head->next=q->next;if(q=W->rear)W->rear=W->head;Enter->stackEn
14、ter->top=t;free(q);elseprintf("n便道里没有车.n");elseprintf("车库里没有车!n");/*没车*/voidList1(Moni_Cheku*S)/*列表显示车库信息*/inti;if(S->top>0)/*判断车库内是否有车*/printf("车库号到达时间t车牌号n");for(i=1;i<=S->top;i+)printf("%d",i);S->stacki->reach.min);printf("tt%sn&qu
15、ot;,S->stacki->num);elseprintf("车库里没有车n");voidList2(Moni_Biandao*W)/*列表显示便道信息*/(QueueNode*p;p=W->head->next;if(W->head!=W->rear)/*判断便道上是否有车*/(printf("在便道里等待的车辆的号码为:n");while(p!=NULL)(puts(p->data->num);p=p->next;elseprintf("便道里没有车.n");voidList(Moni_ChekuS,Moni_BiandaoW)(intflag,tag;flag=1;while(flag)printf(查看*叩);printf("1.车库2.便道3.返回n");printf("*n");printf("请选择(1-3)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC/IEEE 8802-1AS:2021/AMD1:2025 EN Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Part 1A
- 【正版授权】 IEC 63522-24:2025 EN-FR Electrical relays - Tests and measurements - Part 24: Load transfer
- 2025年心理健康教育与心理辅导能力测试试题及答案
- 2025年心理测评师考试卷及答案
- 2025年商法知识竞赛考试试卷及答案
- 2025年国际法与国内法考试题及答案
- 2025年法务会计相关考试题及答案
- 2025年城市规划师执业资格考试卷及答案
- 2025年计算机科学与技术职业资格考试试卷及答案
- 2025年建筑师职业认证考试试卷及答案
- 益脉康滴丸在治疗视网膜概要
- 05s502图集阀门井安装图集
- 房屋交接书(标准版本)
- 农村常见犯罪与刑事处罚课件
- GB/T 79-2007内六角圆柱端紧定螺钉
- GB/T 38943.1-2020土方机械使用电力驱动的机械及其相关零件和系统的电安全第1部分:一般要求
- GB/T 28116-2011抗菌骨质瓷器
- GB/T 13822-2017压铸有色合金试样
- GB/T 13663.3-2018给水用聚乙烯(PE)管道系统第3部分:管件
- 江苏苏州工业园区司法工作办公室招考聘用辅助人员3人模拟试卷【共500题附答案解析】
- 轨道工程施工课件
评论
0/150
提交评论