
停车场管理系统49360.doc
10页- next; } if((p->next==NULL)&&(p->haoma>item)){ q=head->next; while((q->next)->next!=NULL) q=q->next; q->next=new ky(item,p); } else p->next=new ky(item,p->next); }}int kycw::shanchu(){ //弹出最小的车位 ky * p; length--; p=head->next; int a; a=p->haoma; head->next=p->next; return a;}/**********************************便道**********************************/struct node{ int data; node *next; node(node *nextnode=NULL) { next=nextnode; } node(int item,node *nextnode=NULL) { data=item; next=nextnode; }};class biandao{private: node *head; int length;public: biandao() { head=new node(); length=0; } bool isempty() //判断便道是否为空 { return head->next==NULL; } int changdu() //便道中剩余车辆 { return length; } void jinrubiandao(int cp); //车辆进入便道 int jinrucheku();};void biandao::jinrubiandao(int cp) //车辆进入便道{ node *p; p=head; length++; while(p->next!=NULL) p=p->next; p->next=new node(cp,NULL);}int biandao::jinrucheku() //便道最前端的车进入停车位,记下车牌号{ length--; node *p; int c; p=head; c=p->next->data; head->next=(p->next)->next; return c;}/******************************主程序*************************/int main(){ int M=4; int N=2; chewei cw[4]; biandao bd;。
WORD 停车场管理系统[实验目的]综合运用线性表、队列、排序、随机数等数据结构知识,掌握并提高分析、设计、实现与测试程序的综合能力[实验容与要求]停车场拥有M个车位和一条进入停车场的便道,便道上最多停放N辆汽车汽车要想进入车位,首先进入便道等候若有空闲车位,则停车入位,否则在便道继续等候,直至有车位空出若便道已经停满等候的汽车,后到达的汽车只能离开,选择其他停车场设计一个停车场管理系统,模拟停车场的运作,并统计停车场的收入1) 使用随机数产生某一时间段进入和离开停车场的车辆数目;(2) 存储并记录如下数据项:汽车到达和离去的时间与汽车的车号;(3) 车辆到达时,提示汽车的停车位置编号(为车辆分配编号最小的可用车位),若车位已满给出相应提示;(4) 汽车离去时,输出汽车在停车场停留的时间和应交纳的费用5) 对该停车场进行统计:统计每天到达、离开的车次,停车总时数、每天停车场的收入等[测试数据]M=30,N=5,以1小时为时间的最小单位,每小时停车费30元,每小时到达的车辆数目在0-20辆之间均匀分布,车辆停留1小时后离开的概率是25%,每多停留1小时后离开概率增加25%,4小时后一定要离开。
一天以24小时计算[实现提示]用队列模拟便道,可用车位需按照编号排序,申请车位时分配编号最小的车位,可用车位动态变化,选择排序方法时应考虑算法效率include












