出租车管理_管理出租车
出租车管理由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“管理出租车”。
出租车管理(链表的应用)
【问题描述】建立数据结构为链表形式的出租车管理系统,可以存储一定数量的待租汽车,提供租车、还车、查找、打印和修改等操作。
【数据结构】使用多个链表管理汽车出租业务。建立待租车辆表和客户租车表。链表结点:至少包含以下属性
{ 车id号,车型,状态,顾客姓名,租用日期 }
其中,车型可用字符表示(如S和M)。状态标志车辆的好坏(可用0或1表示),如果坏了不能出租等待修理。
另有两个属性:日租金额和损坏罚金可灵活设计,一个方案是放在结点中,适用于车型较多的情况;另一个方案是分别定义为符号常量,适用于车型较少的情况。
lend_list:待租车辆表,初始化时将{车id号,车型,日租金额,状态}这些域填入数据,其它域空置。
rented_list:客户租车表,使用全部属性域。
【算法提示】
对所管理的待租车和已租车分别存储于不同的链表中(lend_list链表和rented_list链表)。出租时由lend_list摘下一个结点,将该结点填入顾客姓名和租用日期数据,插入rented_list中。还车时,由rented_list摘下指定结点,将该结点插入lend_list中。
管理对象:最少两种型号的汽车(如SANTANA, MAZDA),设分别有m和n辆。
【主要功能】要求实现以下操作:
(1)数据初始化:建立链表lend_list并输入数据和rented_list(空表)。
(2)租车操作:输入顾客姓名、车型和当天日期,检查lend_list是否有车。如果有车,摘下该结点链入已租车表rented_list中。
(3)还车操作:读入当天日期,输入顾客姓名和状态标志,找出rented_list中该顾客的结点,计算租用天数和应付金额。摘下该结点链入待租车表lend_list中。
(4)查询操作:打印出待租车、已租车和坏车的清单并分别统计数量。
(5)维修操作:找出链中的坏车,将状态标志置为0,表示修好,并打印数量。
(6)菜单选择上述操作及退出。
注:为初始化方便,原始数据可存储在数组或磁盘文件中。Main()函数执行时循环显示菜单,用户选择后,转入相应功能函数中。功能函数执行完毕返回主程序后仍保持菜单状态,直到选择退出。
【主要代码】
【实验过程】
【实验体会】