车辆管理系统面向对象课程设计文档(共26页).doc
-
资源ID:13987172
资源大小:444KB
全文页数:27页
- 资源格式: DOC
下载积分:20金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
车辆管理系统面向对象课程设计文档(共26页).doc
精选优质文档-倾情为你奉上*实践教学* 兰州理工大学计算机与通信学院2014年秋季学期 面向对象 课程设计题 目: 车辆管理系统 专业班级: 计算机科学与技术4班 姓 名: 古雪瑞 学 号: 指导教师: 庞淑侠 成 绩: 专心-专注-专业前 言信息时代的到来意味着工作效率的日渐提高,同时也给车辆管理部门带来更大的压力,管理部门必须及时准确地提供各种参考材料,若无法作到这一点,将成为企业发展、机构运转的瓶颈。基于这一原因,车辆管理工作无一例外受到领导的高度重视。随着车辆资料价值的日渐提升,社会对车辆管理部门也提出了更高的要求,对车辆早已不限于“用好”,更多地要求“管好”,车辆资料管理已向前延伸到公文的管理,向后扩展到信息资源的整理、采编、发放。就在车辆管理部门职能不断扩大、业务不断扩充的同时,机构改革、企业改制等等政策又要求车辆部门精兵简政,缩减日常经费开支,充分利用现有资源产生更多经济效益。“向管理要效益”已成为车辆部门的运营之本,车辆部门必须提高其自身的管理水平。“提升车辆管理档次,将车辆交给计算机管理”正在成为一种潮流。同时,计算机管理突出优势也在影响车辆管理的机制。以手工检索为目的的著录卡片、目录等,不仅在编制阶段大量占用车辆员的工作时间,检索利用也非常繁琐,缺少经验的车辆员甚至无法在别人编制的目录中查找车辆,更加难以保证“查全率”,使用计算机检索,将彻底解决这一问题;另外,为了保护车辆资料,大中型车辆馆都编制了“二套车辆”,造成保管费用高涨,复印机使车辆复制更加简便,却造成纸张消耗量的剧增,同时,大量复制文件的出现又给车辆管理带来新的安全问题,更与车辆管理的严肃性相抵触,使用计算机查询,将纸载车辆管理与电子车辆利用结合起来,可以完美解决这一难题,大幅度降低车辆管理费用。本系统主要服务于机动车管理人员的日常工作,利用本系统可以方便的监控本区域的驾驶员信息,在此基础上力求软件界面人性化及操作简单,程序具有健壮性。目 录摘 要随着现代社会的不断发展,交通的便利,车辆的数量在不断的增加,为了更好的管理车辆信息,便设计了车辆管理系统来负责各种车辆的常规信息管理工作。系统中的车辆主要有大客车、小轿车和卡车。每种车辆有车辆编号、车牌号、车辆制造公司、车辆购买时间、车辆型号、总公里数、耗油量/公里等。大客车有载客量信息,小轿车有厢数(两项或三厢)信息,卡车还有载重量等信息。主要功能有:车辆信息的添加、查询、删除、修改、统计。关键字:系统设计;类;继承;车辆管理第一章 系统总体设计 本系统通过调用函数来实现信息录入、信息修改、信息删除、信息查询以及数据保存文件等功能。add()函数用于添加车辆信息;modify()函数用来修改车辆信息;del()函数用来删除车辆信息;search()函数用来查询车辆信息;read()函数用于将文件中的数据读取到内存中;save()函数用于将内存中的车辆信息存入文件内;主函数main()用于调用这些函数。具体功能如下:(1)添加车辆信息:主要完成车辆信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当车辆信息库已满,则提示不能再添加新的数据。(2)查询车辆信息:可按照三种方式来查询车辆信息,分别为:按车辆制造公司查询:输入车辆制造公司,输出所查询的信息,若不存在该记录,则提示“该车辆制造公司不存在!”;按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”;按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有车辆!”;(3)显示车辆信息库:输出当前车辆信息库中所有车辆信息,每条记录占据一行。(4)修改车辆信息:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。(5)删除车辆信息:主要完成车辆信息的删除,如果当前车辆信息库为空,则提示“车辆信息库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该车辆的记录,如果该编号不在车辆信息库库中,则提示“该编号不存在”。(6)统计车辆信息输出当前车辆信息库中总物品数,以及按车辆类别,统计出当前车辆信息库中各类别的物品数并显示。(7)保存车辆信息:将当前程序中的车辆信息存入文件中。(8)读取车辆信息:从文件中将车辆信息读入程序。1.系统功能模块图根据用户需求,本系统将主要实现以下功能: 图1-1 系统功能模块图2.各类间关系本系统共使用三个类:car类,truck类,bus类。其中类car描述小轿车信息,类truck描述卡车信息,类bus描述大客车信息。它们之间的关系如图1-2所示:图1-2 系统类间关系图其中:类carclass Car:public Basepublic:double carFee;char carID20;char carName20;void read();/读取小轿车信息void add();/添加小轿车信息void modify(int);/修改小轿车信息void del(int);/删除小轿车信息void save();/保存小轿车信息void search();/查询小轿车信息类truckclass Truck:public Basepublic:char truckID20;char truckName20; int truckNum;void read();/读取卡车信息void add();/添加卡车信息void modify(int);/修改卡车信息void del(int);/删除卡车信息void save();/保存卡车信息void search();/查询卡车信息;类busclass Bus:public Basepublic: char busName20; char busID20;int busNum;void read();/读取大客车信息void add();/添加大客车信息void modify(int);/修改大客车信息 void del(int);/删除大客车信息void save();/保存大客车信息void search();/查询大客车信息;第二章 详细设计本系统的主要功能包括添加,删除,修改,查询,统计,保存车辆信息等。系统的各个功能可通过类car,类truck,类bus的相互调用来实现。下面分别介绍类Car,Truck,Bus的详细设计。类Car主要描述轿车信息。类Car具体实现流程为:class Base /基类public:virtual void read()=0; /纯虚函数声明virtual void add()=0;virtual void modify(int)=0;virtual void del(int)=0;virtual void save()=0;virtual void search()=0;class Car:public Base /小轿车类继承public:double carFee; char carID20; char carName20;void read(); /储存小轿车信息void add(); /添加小轿车信息void modify(int); /修改小轿车信息void del(int); /删除小轿车信息void save(); /保存小轿车信息void search(); /查询小轿车信息;const int MAXcar=10;extern Car carMAXcar;extern int count_car;如图所示:其中:成员函数read()主要功能为储存小轿车信息,实现方式为:记录小轿车信息成员函数add()主要功能为添加小轿车信息,实现方式为:录入小轿车信息成员函数modify(int)主要功能为修改小轿车信息,实现方式为:修改小轿车信息成员函数del(int)主要功能为删除小轿车信息,实现方式为:删除小轿车信息成员函数save()主要功能为保存小轿车信息,实现方式为:保存录入的小轿车信息成员函数search()主要功能为查询小轿车信息,实现方式为:查看小轿车信息类Truck主要描述卡车信息。类Truck具体实现流程为:class Truck:public Base /卡车类继承public:char truckID20; char truckName20; int truckNum;void read(); /储存卡车信息void add(); /添加卡车信息void modify(int); /修改卡车信息void del(int); /删除卡车信息void save(); /保存卡车信息void search(); / 查询卡车信息;如图所示:其中:成员函数read()主要功能为储存卡车信息,实现方式为:记录卡车信息成员函数add()主要功能为添加卡车信息,实现方式为:录入卡车信息成员函数modify(int)主要功能为修改卡车信息,实现方式为:更改卡车信息成员函数del(int)主要功能为删除卡车信息,实现方式为:删除卡车信息成员函数save()主要功能为保存卡车信息,实现方式为:保存录入的卡车信息成员函数search()主要功能为查询卡车信息,实现方式为:查看卡车信息类Bus主要描述卡车信息。类Bus具体实现流程为:class Bus:public Base /大客车类继承 public: char busName20; char busID20; int busNum; void read(); /储存大客车信息 void add(); /添加大客车信息 void modify(int); /修改大客车信息 void del(int); /删除大客车信息 void save(); /保存大客车信息 void search(); /查询大客车信息;如图所示:其中:成员函数read()主要功能为储存客车信息,实现方式为:记录客车信息成员函数add()主要功能为添加客车信息,实现方式为:录入客车信息成员函数modify(int)主要功能为修改客车信息,实现方式为:更改客车信息成员函数del(int)主要功能为删除客车信息,实现方式为:删除客车信息成员函数save()主要功能为保存客车信息,实现方式为:保存录入的客车信息成员函数search()主要功能为查询客车信息,实现方式为:查看客车信息第三章 系统测试1.测试方法1、按是否查看程序内部结构分为:(1)(black-box testing):只关心输入和输出的结果(2)(white-box testing):去研究里面的和程序结构2、按是否运行程序分为:(1)(static testing):是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档可能存在的错误的过程。包括:对于代码测试,主要是测试代码是否符合相应的标准和规范。对于,主要测试软件的实际界面与需求中的说明是否相符。对于,主要测试用户手册和需求说明是否真正符合用户的实际需求。(2)(dynamic testing),是指实际运行被测程序,输入相应的测试数据,检查输出结果和预期结果是否相符的过程 2.测试用例本系统采用自创数据单位为数据原型进行测试,所用数据为:甘A66666大众小轿车5厢编号1甘A88888现代大客车30人编号2甘A12345皮卡卡车40吨编号3等。3.测试结果本系统主要完成车辆信息的添加,删除,修改,查询和统计功能。(1)添加功能主要实现对车辆信息的增加,图3.1 为车辆信息添加功能界面。用户可以选择编号1进入车辆信息添加操作,输入想要添加的车辆信息,进而保存下来所添加的车辆信息。 图3.1(2)删除功能主要实现对车辆信息的删除,图3.2为车辆信息删除功能界面。用户可以选择编号3进行车辆信息的删除操作,通过选择要删除的车辆信息序列号进行车辆信息的删除,然后按编号0退出删除车辆信息操作。 图3.2(3)修改功能主要实现对车辆信息的修改,图3.3为车辆信息修改功能界面。用户可以选择编号2进入车辆信息修改操作,通过输入要修改的车辆信息的编号进行车辆信息的修改,随后可按编号0退出车辆信息修改操作。 图3.3 (4)查询功能主要实现对车辆信息的查询,图3.4为车辆信息查询功能界面。用户可以选择编号4进入车辆信息查询操作,通过输入车辆的车牌号可查询到所需要的车辆信息,随后可退出车辆信息查询操作。 图3.4第四章 软件使用说明书1、系统运行环境操作系统:Windows XP Windows 7运行环境:Visual C+6.02、系统操作提示(1)进入车辆管理系统主菜单,可通过按0-3继续以下操作。选择编号1可以进入小轿车信息管理子菜单,选择编号2可以进入卡车信息管理子菜单,选择编号3可以进入大客车信息管理子菜单,选择编号0则会退出本系统。 图4.1(2)在主菜单通过编号1进入小轿车管理子菜单,可通过按编号0-5进行以下操作。选择编号1可进行小轿车信息的添加,选择编号2可以进行小轿车信息的查询,选择编号3可以进行小轿车信息的删除,选择编号4可以进行小轿车信息的修改,选择编号5则可显示所有小轿车信息,选择编号0则会退出小轿车信息管理子菜单,回到主菜单。 图4.2(3)在主菜单通过按编号2进入卡车管理子菜单,可通过按编号0-5进行以下操作。选择编号1可进行卡车信息的添加,选择编号2可以进行卡车信息的查询,选择编号3可以进行卡车信息的删除,选择编号4可以进行卡车信息的修改,选择编号5则可显示所有卡车信息,选择编号0则会退出卡车信息管理子菜单,回到主菜单。 图4.3(4)在主菜单通过按编号3进入大客车管理子菜单,可通过按编号0-5进行以下操作。选择编号1可进行大客车信息的添加,选择编号2可以进行大客车信息的查询,选择编号3可以进行大客车信息的删除,选择编号4可以进行大客车信息的修改,选择编号5则可显示所有大客车信息,选择编号0则会退出大客车信息管理子菜单,回到主菜单。 图4.4(5)在各个子菜单上可按编号0回到主菜单。 图4.5 (6)以卡车为例,在卡车管理子菜单中,按编号1可进入卡车信息添加界面,如图4.6然后可通过选择y或n选择是否保存所添加的车辆信息,在小轿车和大客车管理子菜单中同样如此。 图4.6总 结课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实际能力的重要环节。是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新月异,当今计算机应用在生活中可以说无处不在。因此对于二十一世纪的大学生来说,掌握计算机开发技术十分重要。我的题目是车辆管理系统的设计,对于我们这些新手来说,这是很大的考验,所以怎样才能找到课堂所学与实际应用的最佳结合点,怎样才能让自己的程序更加直观简练,怎样才能让程序的运行更加人性化,这都是在课程设计中必须考虑的问题。 很感谢学校和老师给了我们一个能够自主实践的机会,让我们能够培养自己的自学能力以及实际操作能力。通过这次课程设计,我获益良多。从拿到题目直到完成整个课设的内容,实现了从理论到实际的转变。在设计程序的过程中可以说是困难重重,各种错误以及不足都被检查出来,而这次课程设计则使我及时的发现并纠正从前的错误,养成了自主学习与参考书籍的好习惯。 参考文献1. C+面向对象程序设计教程,陈维兴 林小茶,清华大学出版社,20092. C+程序开发教程,张基温,清华大学出版社,20023. C+语言教程,吴祖峰 陈文宇 张松梅,电子科技大学出版社,20084. C语言程序设计(第二版),谭浩强,清华大学出版社,19995. C+语言程序设计教程与试验,温秀梅 丁学钧,清华大学出版社,20086. Visual C+面向对象编程教程(第2版),王育坚,清华大学出版社,2003致谢 忙碌了一周左右的时间,课程设计终于接近了尾声,虽然是第二次做课程设计,但还是感到有一些的吃力,在这里衷心感谢老师的悉心指导,以及同学的支持帮助。经过了这么长忙碌的日子,课程设计终于顺利的完成。在设计时遇到了很多编程的问题,最后在庞老师的帮助下不断完善,同时也在同学的编程中学到了一些新思路,这对我启发很大,尤其是同学们之间的相互交流,同学们提出了许多宝贵的意见和建议,让我拓宽了视野。最后,感谢本次课程设计,给了我一次动手实践,将理论与实践相结合的机会,这是我一次宝贵的实践经历。