《汽车租借公司的管理系统数据结构课程设计报告模板》由会员分享,可在线阅读,更多相关《汽车租借公司的管理系统数据结构课程设计报告模板(5页珍藏版)》请在金锄头文库上搜索。
1、汽车租借公司的管理系统数据结构课程设计报告算法与数据结构课程设计报告请尊重我的劳动成果不要复制!题目:汽车租借公司的管理班级:学号:姓名:成绩:题目汽车租借公司的管理问题描述设计数据结构及算法完成某个汽车租借公司日常工作的组织与管理。该管理系统的基本管理对象为汽车,每台汽车用一个licensenumber进行唯一标识。每个汽车存在三种可能状态:够租借(availableforrent)HE借(rented)修理中(inrepair)其中在available队列中汽车应该依据汽车行驶过的路程进行排序行驶路程最少的汽车排在最前面。在rented队列中的汽车应依据其预期返回时间进行排序,排在最前的应
2、是预期最早返回的汽车。课程设计目的应用线性数据结构存储信息,并能够应用上面的基本操作实现事务管理。 基本要求用三个链表组织三种状态的汽车。 能够实现租借的日常事务:引入新车,租借,收费,修理等。租借收费应根据汽车行驶的路程及借去的时间综合计算得出,路程收费标准如下: 低于100km收费20.00元100km以外的路程每km收费0.15元汽车根据行驶的路程定期进行维护。还需实现辅助操作:汽车查询,打印全部信息,计算并打印收入、成本及收益。 管理系统应有完整地界面(最好是图形化界面)。实现提示主要集中在链表的基本操作上。二、设计思想1、问题分析该公司的所有车辆只有以下三种状态:一. 够租借(ava
3、ilableforrent)HE借(rented)修理中(repairing)每种状态的都有要能够实现车辆的添加、删除、显示的最最基本的功能,她们里面又都有多辆车需要统一管理,而这些车辆无疑都是属性相同的车辆,因此能够建立一个cars结构体,包含她们共同的属性。公司日常业务有添加新车,租借汽车,归还收费、修理汽车,修理完毕,配置信息,汽车查询,打印全部信息,计算收益。其所有功能如下:二. 添加新车,2.租借汽车,3.归还收费、4.修理汽车,5.修理完毕,6.配置信息,7.汽车查询,8.打印信息,9.计算收益,10.退出基本实现:采用的链式结构,即对链表的操作。另外有两个配置文件1. data.
4、dat:储存的信息有汽车编号、汽车状态(0表示未借出,1表示借出,2表示维修中)、已行驶的路程、预期归还的时间、借出的次数、该车的获得的收益。2. data.ini:每辆车的成本、每次修理费、油费/km、租费(100km以下)、租费(超过100km)。三. 结构关系structcars包含了一辆车的的基本信息:1. 汽车编号license_number(int);2. 汽车状态0-能够租借,1-已借出,2-修理中stutes(int);3. 汽车行驶过的路程car_runned(float);4. 汽车预期返回的时间return_time(int);5. 汽车修理的次数repaired_tim
5、e(int);6. 汽车收入income(float);四. nex甘旨针structcars*next;相关函数1. 读取data.ini配置信息的数据:voidReadDataIni();2. 设置data.ini配置信息的数据:voidsetDataIni();3. 将数据存档到data.dat中:voidsave_data(structcars*carData);4. 追加数据存档到data.dat中:voidadd_data(structcars*carData);5. 根据汽车所行驶的距离排序:structcars*rank_Distance(structcars*carDista
6、nce);6. 根据预期返回时间排序:structcars*rank_Time(structcars*carTime);7. 建立能够租借的链表:structcars*create_available(void);8. 建立已借出的链表:structcars*create_rented(void);9. 建立修理中的链表:structcars*create_repairing(void);10. 打印汽车的信息:voidprintThreeOfCars(structcars*ThreeOfCar);11. 计算链表数据个数:intcalculateCars(structcars*ThreeOf
7、Car);12. 删除链表中的汽车:voiddeleteThreeOfCar(structcars*ThreeOfCar,intxuhao);插入到能够租借的车链表中:structinsertThreeOfCars(structcars*ThreeOfCar,intLicenseNumber,intStu,floatCarRunned,intReturnTime,intRepairedTime,floatIco);13. 增加新车:voidAddNewCar(structcars*available,structcars*rented,structcars*repairing);14. 出租汽
8、车:voidRentCar(structcars*available,structcars*rented,structcars*repairing);15. 归还收费:voidReturnCar(structcars*available,structcars*rented,structcars*repairing);16. 修理汽车:voidRepairCar(structcars*available,structcars*rented,structcars*repairing);17. 查看修理状况:voidBackCar(structcars*available,structcars*re
9、nted,structcars*repairing);18. 汽车查询:voidresearch(structcars*ThreeOfCar,intid);19. 汽车查询结果:voidReasearchCar(structcars*available,structcars*rented,structcars*repairing);20. 打印所有车的信息:voidPrintAllCar();21. 计算收益:voidCalculation(structcars*ThreeOfCar);22. 计算收益:voidCalculateProfit();23. 配置信息:voiddisplaySeting();设置配置信息:voidsetInformation();三、软件结构图及流程图软件结构图即函数调用图(图中用五号宋体)如下图2_虱一*创立3/出租汽车RentCar()/归还收清/a还操作SBM