- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算 法 与 数 据 结 构
课 程 设 计 报 告
请尊重我的劳动成果不要复制!
题 目: 汽车租借公司的管理
班 级:
学 号:
姓 名:
成 绩:
2014年 1月 1日
一、题目
汽车租借公司的管理
(1)问题描述
设计数据结构及算法完成某个汽车租借公司日常工作的组织与管理。该管理系统的基本管理对象为汽车,每台汽车用一个license number进行唯一标识。每个汽车存在三种可能状态:
●可以租借(available for rent)
●已借(rented)
●修理中(in repair)
其中在available队列中汽车应该依据汽车行驶过的路程进行排序,行驶路程最少的汽车排在最前面。在rented队列中的汽车应依据其预期返回时间进行排序,排在最前的应是预期最早返回的汽车。
(2)课程设计目的
应用线性数据结构存储信息,并能够应用上面的基本操作实现事务管理。
(3)基本要求
① 用三个链表组织三种状态的汽车。
② 能够实现租借的日常事务:引入新车,租借,收费,修理等。
③ 租借收费应根据汽车行驶的路程及借去的时间综合计算得出,路程收费标准如下:
⒈ 低于100km收费20.00元
⒉100km以外的路程每km收费0.15元
④ 汽车根据行驶的路程定期进行维护。
⑤ 还需实现辅助操作:汽车查询,打印全部信息,计算并打印收入、成本及收益。
⑥ 管理系统应有完整地界面(最好是图形化界面)。
(4) 实现提示
主要集中在链表的基本操作上。
二、设计思想
1、问题分析
该公司的所有车辆只有以下三种状态:
●可以租借(available for rent)
●已借(rented)
●修理中(repairing)
一.每种状态的都有要能够实现车辆的添加、删除、显示的最最基本的功能,他们里面又都有多辆车需要统一管理,而这些车辆无疑都是属性相同的车辆,所以可以建立一个cars结构体,包含他们共同的属性。
公司日常业务有添加新车,租借汽车,归还收费、修理汽车,修理完毕,配置信息,汽车查询,打印全部信息,计算收益。其所有功能如下:
1.添加新车,2.租借汽车,3.归还收费、4.修理汽车,5.修理完毕,6.配置信息,7.汽车查询,8.打印信息,9.计算收益,10.退出
二.基本实现:
采用的链式结构,即对链表的操作。另外有两个配置文件:
1.data.dat:储存的信息有汽车编号、汽车状态(0表示未借出,1表示借出,2表示维修中)、已行驶的路程、预期归还的时间、借出的次数、该车的获得的收益。
2.data.ini:每辆车的成本、每次修理费、油费/km、租费(100km以下)、租费(超过100km)。
三.结构关系
struct cars
包含了一辆车的的基本信息:
1.汽车编号license_number(int);
2.汽车状态0--可以租借,1--已借出,2--修理中stutes(int);
3.汽车行驶过的路程car_runned(float);
4.汽车预期返回的时间return_time(int);
5.汽车修理的次数repaired_time(int);
6.汽车收入income(float);
7.next指针struct cars *next;
四.相关函数
1.读取data.ini配置信息的数据:void ReadDataIni();
2.设置data.ini配置信息的数据:void setDataIni();
3.将数据存档到data.dat中:void save_data(struct cars *carData);
4.追加数据存档到data.dat中:void add_data(struct cars *carData);
5.根据汽车所行驶的距离排序:struct cars *rank_Distance(struct cars *carDistance);
6.根据预期返回时间排序:struct cars *rank_Time(struct cars *carTime);
7.建立可以租借的链表:struct cars *create_available(void);
8.建立已借出的链表:struct cars *create_rented(void);
9.建立修理中的链表:struct cars *create_repairing(void);
10.打印汽车的信息:void printThreeOfCars(struct cars *ThreeOfCar);
11.计算链表数据个数:int calculateCars(struct c
您可能关注的文档
最近下载
- DIY烟油配方整理.xlsx VIP
- 2025中数联物流科技(上海)有限公司招聘笔试备考试题及答案解析.docx VIP
- 2025中国数联物流纪委办公室、巡视办公室相关岗位招聘笔试模拟试题及答案解析.docx VIP
- 开利VRV空调样册B-XCT-38VP-202106-02.pdf VIP
- 七年级(上)生物分组实验教案.pdf VIP
- 江苏省淮安市洪泽区洪泽外国语中学2024-2025学年九年级下学期3月月考语文试题(原卷版+解析版).docx VIP
- 2026年护士护理个人工作计划(三篇).pdf VIP
- 赤城县非凡矿业有限责任公司矿山地质环境保护与土地复垦方案.pdf VIP
- 2025《水下清淤机器人的结构方案设计》13000字(论文).docx
- [硕士]宣钢近北庄铁矿滑坡机理及稳定性分析.pdf VIP
原创力文档


文档评论(0)