c课程设计说明书

上传人:nu****n 文档编号:164023591 上传时间:2022-10-24 格式:DOC 页数:25 大小:126.50KB
收藏 版权申诉 举报 下载
c课程设计说明书_第1页
第1页 / 共25页
c课程设计说明书_第2页
第2页 / 共25页
c课程设计说明书_第3页
第3页 / 共25页
资源描述:

《c课程设计说明书》由会员分享,可在线阅读,更多相关《c课程设计说明书(25页珍藏版)》请在装配图网上搜索。

1、C+程序设计课程设计 车辆管理系统指导教师: 设计成员: 班 级: 过控094班时 间: 2010年9月 C+程序设计课程设计任务书适用专业:过程装备与控制工程设计题目:车辆管理系统一、已知技术参数或设计前提1、当今时代汽车的数量在日益增加因此对于车辆的管理是越发的重要。2、每辆汽车需要进行新车登记其中包括车辆的型号、颜色等车辆具体信息;还要登记车主的具体信息。3、同时在系统中还要登记二手车过户、违章登记、旧车报废等相关信息。4、将公路车辆的相关信息保存起来,以后可进行添加、编辑、删除等操作。5、交通管理的相关部门将对每天车辆信息的变动进行操作,对车辆进行系统管理。二、设计内容及要求1、在程序

2、中使用类和结构表示公路车辆的信息。2、实现对公路车辆相关信息的添加、编辑、删除等功能。3、实现车主、车牌信息的查阅。4、能够完成对车辆相关信息的保存和修改。5、总览此程序使用了链表结构操作数据,提供创建、插入、删除节点等操作。三、课程设计工作计划1、确定题目,成立设计小组,做用户需求分析(9月8日-9月15日)2、查阅资料,进行问题分析,制定方案,确定成员分工(9月20日-9月29日)3、根据方案编写程序并进行调试(10月1日-10月20日)4、撰写设计说明书,完成设计(10月25日-11月10日)5、提交设计内容,答辩四、相关教材及参考书目1、C+语言基础教程.吕凤翥编著.清华大学出版社2、

3、C+程序设计教程.钱能编著.清华大学出版社指导教师签字: 系 主 任签字: 年 月 日目 录一、需求分析2二、系统总体设计2三、模块功能实现3四、系统的软硬件环境3五、系统的使用说明3六、结束语7参考文献8附录A:程序源代码9附录B:程序调试记录22教师评语23一、需求分析在现今公路上车辆数目的日益增加,对于交通管理部门来说,要对数目繁多的车辆进行系统的管理十分重要。此公路车辆管理系统就是一个可以帮助交管部门对车辆进行系统管理的程序。同类系统多数使用结构体数组来操作数据,本系统使用链表结构操作数据,提高了数据处理的效率。操作更加方便简易。本小组的成员通过网络对信息的查询,相关书籍的参考,以及老

4、师同学的帮助下,用以往所学的c+知识进行整理,完成了对此系统的最终调试。在本系统中完成了对新车信息的登记,对二手车的过户,违章登记,旧车报废等相关信息的录入。还可以进行车主信息的查询。简单的操作和系统化的录入信息给使用者带来了大大的方便。也更加有效的完成了对车辆的管理。二、系统总体设计人力资源管理清册职工模块修改信息模块信息查询模块保存文件模块工资排行模块删除信息模块车辆管理模块车辆管理系统新车登记办证模块二手车过户模块旧车报废模块车牌查询模块车主查询模块违章登记模块三、模块功能实现新车登记办证模块:通过调用函数void newcar()来实现。二手车过户模块:通过调用函数void rewor

5、k()来实现。违章登记模块:通过调用函数void vioRecord()来实现。旧车报废模块:通过调用函数void delet()来实现。车牌查询模块:通过调用函数void query_car_no()来实现。车主查询模块:通过调用函数void query_car_men ()来实现。可以逐个数据查找,如果有相同的就输出到屏幕上,如果这个数据是唯一的,那么就可以退出循环了;如果不是唯一的,那么继续通过循环,并且通过一个判别符号flag来判断是否有查找到。四、系统的软硬件环境1、软件环境系统运行在Windows XP操作系统上。系统编辑编译环境为Visual C+ 6.0。2硬件环境本系统在计算

6、中心实验室的计算机上编辑测试。测试用计算机的主要配置是CPU 2.4GHz,1G内存,160G硬盘。本系统可以运行在使用Windows操作系统的品牌机或兼容机上,具有80486,50MHz以上的处理器都可以运行本管理系统。五、系统的使用说明系统在完成后进行了详细的软件功能测试。本系统可以完成对车辆信息的登记、修改、删除、查询、显示等功能。软件的使用步骤如下:1、运行主程序进入程序登陆界面如图5-1所示。图5-1程序登录界面2、在主菜单程序界面中用户输入1,并按回车键,则会进入到新车登记办证的程序界面如图5-2所示,填入相关信息。图5-2新车登记办证界面3、返回主界面,输入2,并按回车键则会进入

7、到二手车过户的程序界面如图5-3所示,可进行二手车的过户操作。图5-3二手车过户界面4、返回主界面,输入3,并按回车键则会进入到违章登记的程序操作界面如图5-4所示,在这里进行违章车辆信息的登记。图5-4违章车辆登记界面5、返回主界面,输入4,并按回车键则会进入到旧车报废信息的程序界面如图5-5所示,可以对报废车辆进行查阅。图5-5旧车报废界面6、返回主界面,输入5,并按回车键则会进入到车牌查询程序界面如图5-6所示,可以通过车牌进行对车主信息的查询。图5-6车牌查询界面7、返回主界面,输入6,并按回车键则会进入到车主信息的查询界面如图5-7所示。图5-7车主信息查询界面六、结束语车辆管理系统

8、使用了类和结构表示车辆的相关信息,有效的提高了交通部门对于车辆管理的系统体系,帮助相关部门更加有快速、有效的对车辆进行管理。本小组成员通过一个多月的努力,从程序的完成到对程序的调研再到系统设计并编写程序源代码以及系统编译测试,每个小组成员分工协作、共同努力圆满地完成了此次课程设计任务。系统的总体设计以及程序的汇总调试由组长完成;其中车主类、违规记录模块的功能与实现由完成;车辆过户(修改)的模块由完成;车辆报废(删除)类的模块完成;查询类和最后保存文件及主函数的实现由完成。通过本次课程设计,小组成员们感受到了团队合作的重要与难忘,在其中让我们学到了很多,在设计的过程中也让我们较好地掌握了链表的使

9、用方法和面向对象程序设计的基本技能,为将来对c+的深入学习打下了坚实的基础。由于时间问题以及目前我们对于c+的掌握还远不够完善,在程序中难免会出现一些不足,有些地方仍需改进。根据实际情况在今后要进一步的完善其功能,使其不但能满足课程设计的需要,还要有一定的实用价值和实际效益。在整个的课程设计过程中,我们展现出的是一支朝气蓬勃的团队。我们有着敏捷的思考力。我们有着自己的理想和奋斗的目标。而且我们还太年轻没有理由不努力。同时我们也得到了其他各组同学和指导教师的帮助,帮助我们解决了课程设计过程中遇到的一些问题。我们小组所有成员在此表示衷心感谢。参考文献1 C+语言基础教程 清华大学出版社2 C+语言

10、程序设计案例教程 清华大学出版社3 4 附录A:程序源代码/main.cpp#include #include #include #include #include #include using namespace std;/车主类class carmenpublic: carmen();/默认构造函数private: string name;/车主姓名 string postcard;/车主身份证号码;/违规记录类class violatepublic: violate();/默认构造函数private: string menName;/车主姓名 string memPostCard;/车主

11、身份证号 string carNo;/车牌号 string time;/时间 string space;/地点;/*/* 模块功能:车主类、违规记录模块 */* 全局变量:无 */* 创建人:何宗芝 */* 创建日期:2010年10月10日 */*/车辆类class carspublic: cars();/默认构造函数private: string kind;/类型 string color;/颜色 string no;/车牌号;/组合类class managepublic: manage();/默认构造函数 void query_car_no();/车牌查询 void query_car_m

12、en();/车主查询 void newcar();/新车登记办证 void rework();/二手车过户 void delet();/旧车报废 void vioRecord();/违规登记 void vio_query(const string no);/违规查询private: cars acar;/车辆类对象 violate avio;/违规类对象 carmen acarmen;/车主类对象;cars:cars()carmen:carmen()violate:violate()manage:manage()/新车登记办证void manage:newcar() system(cls);

13、string kind; string color; string no; string name; string postcard; cout endl 新车登记办证 endl endl; cout 请根据提示在下面输入新车信息 : endl endl; cout name; cout endl postcard; cout endl kind; cout endl color; cout endl no; ofstream car(car cars.txt, ios:app); assert(car); car setiosflags(ios:left) setw(20) postcard

14、 no endl; car.close(); string username = car +postcard+.txt; ofstream carinfo(username.c_str(); carinfo 车主姓名 : name endl endl 身份证号 : postcard endl endl 车型 : kind endl endl 颜色 : color endl endl 车牌号 : no endl endl; carinfo.close(); cout endl 新车信息录入完成! endl endl; system(pause);/二手车过户/*/* 模块功能:保存文件及主函数的

15、实现 */* 全局变量:无 */* 创建人:丁继文 */* 创建日期:2010年10月12日 */*/void manage:rework() system(cls); string kind; string color; string no; string name; string postcard; string no1; cout endl 二手车过户 endl endl; cout no1; ifstream car(car cars.txt); if (!car) cout endl 这辆车不存在! endl postcard no) if (no = no1) flag = tru

16、e; string carinfo = car +postcard+.txt; ifstream car1(carinfo.c_str(); cout endl 你想过户的车辆信息如下 : endl endl; cout car1.rdbuf() endl; car1.close(); cout endl 请在下面输入过户后的车主信息 : endl; cout endl name; cout endl postcard; ifstream car4(carinfo.c_str(); assert(car4); string str; getline(car4, str); getline(ca

17、r4, str); getline(car4, str); car4 str str kind str str color str str no; car4.close(); carinfo = car +postcard+.txt; ofstream car3(carinfo.c_str(); assert(car3); car3 车主姓名 : name endl endl 身份证号 : postcard endl endl 车型 : kind endl endl 颜色 : color endl endl 车牌号 : no endl endl; car3.close(); temp seti

18、osflags(ios:left) setw(20) postcard no endl; temp.close(); car.close(); if (flag) ofstream car2(car cars.txt); ifstream temp1(car temp.txt); car2 temp1.rdbuf() endl; cout endl 这辆车过户完成! endl endl; else cout endl 这辆车不存在! endl endl; system(pause);/违章登记void manage:vioRecord() system(cls); string no; str

19、ing time; string place; cout endl 违章登记 endl endl; cout 请根据提示输入违章车辆相关信息 : endl endl; cout no; cout endl time; cout endl place; string voiInfo = car +no+.txt; ofstream voiInfoFile(voiInfo.c_str(), ios:app); assert(voiInfoFile); voiInfoFile setiosflags(ios:left) setw(30) time place endl; voiInfoFile.cl

20、ose(); cout endl 违章登记完成! endl endl; system(pause);/旧车报废 /*/* 模块功能:保存文件及主函数的实现 */* 全局变量:无 */* 创建人:钟成 */* 创建日期:2010年10月15日 */*/void manage:delet() string no; string name; string postcard; string no1; system(cls); cout endl 旧车报废 endl endl; cout no1; ifstream car(car cars.txt); if (!car) cout endl 对不起,这

21、辆车不存在! endl postcard no) if (no = no1) flag = true; string carinfo = car +postcard+.txt; ifstream carinfofile(carinfo.c_str(); assert(carinfofile); cout endl 你想报废的车辆信息如下 : endl endl; cout carinfofile.rdbuf() endl endl; cout 你确定要将它报废吗(y/n) : ; if (getch() = n) flag1 = false; break; else temp setiosfl

22、ags(ios:left) setw(20) postcard no endl; car.close(); temp.close(); if (flag) if (flag1) ofstream car1(car cars.txt); assert(car1); ifstream temp1(car temp.txt); assert(temp1); car1 temp1.rdbuf() endl; car1.close(); temp1.close(); cout endl endl 这辆车已经成功报废! endl endl; else cout endl endl 这辆车你没有报废! en

23、dl endl; else cout endl endl 对不起, 你想报废的车辆不存在! endl endl; system(pause);/车牌查询/*/* 模块功能:保存文件及主函数的实现 */* 全局变量:无 */* 创建人:刘鑫 */* 创建日期:2010年10月18日 */*/void manage:query_car_no() system(cls); string findNo; cout endl 根据车牌查询车辆信息 endl endl; cout findNo; string no; string postcard; ifstream car(car cars.txt);

24、 if (!car) cout endl 对不起,记录中没有这辆车的相关信息! endl postcard no) if (no = findNo) flag = true; string carInfo = car +postcard+.txt; ifstream carInfoFile(carInfo.c_str(); assert(carInfoFile); cout endl 你查询的车辆信息如下 : endl endl; cout carInfoFile.rdbuf() endl; carInfoFile.close(); vio_query(no);/违章 break; car.c

25、lose(); if (flag) cout endl 信息查询完成! endl endl; else cout endl 对不起,这个车辆的信息不存在! endl endl; system(pause);/车主查询void manage:query_car_men() system(cls); cout endl 车主查询 endl endl; cout postcard1; string postcard; string no; ifstream car(car cars.txt); if (!car) cout endl 对不起,记录中没有这辆车的信息! endl postcard no

26、) if (postcard = postcard1) flag = true; string carInfo = car +postcard+.txt; ifstream carInfoFile(carInfo.c_str(); assert(carInfoFile); cout endl 你要查询的车辆信息如下 : endl endl; cout carInfoFile.rdbuf() endl; carInfoFile.close(); vio_query(no);/违章 break; car.close(); if (flag) cout endl 信息查询完成! endl endl;

27、 else cout endl 对不起,记录中没有这辆车的信息! endl endl; system(pause);/违章查询void manage:vio_query(const string no) string vioInfo = car +no+.txt; ifstream vioFile(vioInfo.c_str(); if (!vioFile) cout endl 这辆车没有违章! endl endl; return; cout endl 违章记录如下 : endl endl; cout 时间tttt地点 endl endl; cout vioFile.rdbuf() endl

28、endl;char inter_face() system(cls); cout endl; cout t endl t | | endl t 公 路 车 辆 管 理 系 统 endl t | | endl t 1. 新车登记办证 endl t | | endl t 2. 二手车过户 endl t | | endl t | 3. 违章登记 | endl t | | endl t 4. 旧车报废 endl t | | endl t 5. 车牌查询 endl t | | endl t 6. 车主查询 endl t | | endl t 7. 退出系统 endl t | | endl t endl

29、ttt; return getch();int main() manage objcet; while (1) switch (inter_face() case 1: objcet.newcar(); break; case 2: objcet.rework(); break; case 3: objcet.vioRecord(); break; case 4: objcet.delet(); break; case 5: objcet.query_car_no(); break; case 6: objcet.query_car_men(); break; case 7: cout endl endl tt谢谢使用! endl endl tt; exit(0); break; default: break; return 0; 附录B:程序调试记录1问题:程序运行后无法保存信息,操作界面出现错误提示。原因:命名格式出现错误,如:ofstream temp(cartemp.txt);解决方法:在程序中将全部的错误格式改正,如:ofstream temp(car temp.txt);2010-10-20 何宗芝教师评语 年 月 日

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!