C++课程设计报告(含代码)_第1页
C++课程设计报告(含代码)_第2页
C++课程设计报告(含代码)_第3页
C++课程设计报告(含代码)_第4页
C++课程设计报告(含代码)_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C+课程设计报告C+课程设计报告专 业:学 号:姓 名:同 组 人:提交日期:【设计目的】1、通过设计一个较为简单的商场库存货物管理系统,进一步熟悉C+中类的概念、类的封装、继承的实现方式。2、了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程,加深对C+的理解与Visual C+环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。【设计内容】1、设计某公司的库存管理系统。此程序是为了更好的处理货物的详细信息。包括货物的货物的入库、出库、查询、统计。并且能够很好的让使用者了解库存货物的有关信息。2、系统要求能够按编号显示、查找、增加、删除、和保存各类货物的信息。输入和输出货物的有关信息并且对输入保存文件里确定程序至少具备以下功能:查询模块、增加模块、删除模块、货物的有关信息数据存盘等的基本模块。3、系统具有“货物的有关信息数据存盘”的功能,所以货物的有关信息数据可以保存到磁盘文件,那么也就意味着今后可以从磁盘文件读出货物的有关信息,可以方便用户使用,避免数据重复录入,考虑到系统实现简洁,货物数据文件采用文本文件,货物数据文件名:date.dat。4、作为一个完整的系统,除了具有增加货物,删除货物的信息模块,还应该具有修改货物相关信息的功能, 所以本系统具备了“商品入库”、“商品出库”、“查询统计”、“商品报损”、“退出系统”,这5个基本功能,就可以以最简捷的方式实现对货物的管理,也就实现了系统的要求。5、下图中黑体字部分程序块为我完成的代码块商场库存货物管理系统商品入库查询统计退出系统商品信息商品分类信息按名称查询按类别查询商品出库商品报损直接退出报损商品信息【实验环境】1 硬件环境:(1)电脑型号戴尔 Inspiron 5557 笔记本电脑 (扫描时间:2017年01月11日)(2)操作系统Windows 10 Enterprise 64位 ( DirectX 12 )(3)处理器英特尔 Core i7-6500U 2.50GHz 双核(4)主板戴尔 03XTY7 ( 英特尔 PCI 标准主机 CPU 桥 - 100 Series 芯片组 Family/eSPI Controller - 9D48 )(5)内存8 GB ( 镁光 DDR3L 1600MHz )(6)主硬盘三星 SSD 850 EVO 500GB ( 500 GB / 固态硬盘 )(7)显卡Nvidia GeForce 930M ( 4 GB )(8)显示器友达 AUO38ED ( 15.3 英寸 )2软件环境:Windows 10 Enterprise 64位 ( DirectX 12 )、Visual Studio 2015【设计中使用函数说明】(1) char manage:first_face()/首页:该函数是该系统的首页。 (2)void manage:in_cangku()/入库函数:该函数是将商品信息录入到文件中。(3)void manage:out_cangku()/ 出库函数:该函数将商品信息读取后找到用户想要出库的商品然后进行商品报损。(4)void manage:find_property()/查询函数:该函数用于让用户选择自己想要的查询商品的方式:俺商品名称查询、按商品价格查询、按商品价格查询。(5)void manage:find_name()/按商品名称查询:该函数会读取用户输入的商品名称,然后打开存储文件找到该商品并显示在屏幕上。(6)void manage:find_price()/按商品价格查询:该函数会读取用户输入的商品价格,然后打开存储文件找到该商品并显示在屏幕上。(7)void manage:find_kind()/按大类查询该函数会读取用户输入的商品大类,然后打开存储文件找到该商品并显示在屏幕上。(8)void manage:call_break()/商品报损函数:该函数将商品信息读取后找到用户想要报损的商品然后进行商品报损【测试结果】1. 商场库存货物管理系统首页2.商品入库3.商品查询4按商品名查询5.按商品价格查询6.按商品大类查询7.商品报损【设计总结】 经过一个学期对C+程序设计的学习,我学习到了基本的理论知识,了解到了C+语言程序设计的思想,这些知识都为我的课程实践和进一步的学习打下了坚实的基础。在为期近一周的C+课程设计中,我体会颇多,学到了很多东西。我加强了对C+程序设计这门课程的认识,并且复习了自己以前学习到的知识。这些都使得我对计算机语言的学习有了更深入的认识!总之,通过这次课程设计,我收获颇丰,相信会为自己以后的学习和工作带来很大的好处。像职工信息表这样的程序设计,经历了平时在课堂和考试中不会出现的问题和考验。而这些问题,这并不是我们平时只靠课本,就可以轻易解决的。所以,锻炼了我们挑战难题,学会用已掌握的知识去解决具体问题的能力,进一步培养了独立思考问题和解决问题的能力。特别是学会了在VisualC+中如何调试程序的方法。当然,老师的指导和同学的帮助也是不可忽视的,他们给了我许多提示和帮助,教会了我编译复杂程序的方法。在老师和同学的帮助下,通过自己的努力,终于完成了这次职工信息表的简单课程设计。我经过这段时间的编程,对其中的艰辛,我是深有体会。从刚开始的选择程序、理解程序到后来的调试程序以及改进程序这个过程中,我遇到了各种各样的困难和挫折。但是我坚定信念,对自己充满了信心,想尽一切办法克服重重困难。 通过课程设计的训练,我进一步学习和掌握了对程序的设计和编写,从中体会到了面向对象程序设计的方便和巧妙。懂得了在进行编写一个程序之前,要有明确的目标和整体的设计思想。另外某些具体的细节内容也是相当的重要。这些宝贵的编程思想和从中摸索到的经验都是在编程的过程中获得的宝贵财富。这些经验对我以后的编程会有很大的帮助的,我要好好利用。 虽然这次课程设计是在参考程序的基础之上进行的,但是我觉得对自己是一个挑战和锻炼。我很欣慰自己能在程序中加入自己的想法和有关程序内容,也就是对它的程序改进了一番改进,并有创新。但是我感觉自己的创新还不够典型,总之还不是很满意。另外由于时间的紧迫和对知识的了解不够广泛,造成了系统中还存在许多不足,功能上还不够完善。以后我会继续努力,大胆创新,争取能编写出透射着自己思想的程序。这次课程设计让我充分认识到了自己的不足,认识到了动手能力的重要性。我会在以后的学习中更加努力锻炼自己,提高自己,让自己写出更好更完善的程序,为以后的编程打好基础!【参考文献】1BjarneStroustrup,THEC+PROGRAMMINGLANGUAGE,HigherEducationPressPearsonEducation,20022美WalterSavitch著,周靖译,C+面向对象程序设计基础、数据结构与编程思想,清华大学出版社,20043美BrianOverland著,董梁等译,C+语言命令详解,电子工业出版社,20004美AIStevens著,林瑶等译,C+大学自学教程,电子工业出版社,20045刁成嘉主编,面向对象C+程序设计,机械工业出版社,20046刘瑞新主编,曹建春,沈淑娟,张连堂等编著,VisualC+面向对象程序设计程,机械工业出版社,2004【源程序清单】/list.h/首页char manage:first_face()system(cls);cout endl;cout endl tt endl tt endl tt 商场库存货物管理系统 endl tt endl tt 1. 商品入库 endl tt endl tt 2. 商品出库 endl tt endl tt 3. 查询统计 endl tt endl tt 4. 商品报损 endl tt endl tt 5. 退出系统 endl tt endl tt endl endl tt;return _getch();/入库void manage:in_cangku()system(cls);string name;/商品名double price;/价格int store_Number;/仓库编号string dalei;/商品大类int shelf_Number;/货架号long quantity = 0; /商品数量cout endl 商品入库,请输入相关信息 : endl endl;cout name;cout endl price;cout endl quantity;cout endl store_Number;cout endl dalei;cout endl shelf_Number;ofstream storeFile(store.txt, ios:app);/ofstream类“写”,storeFile对象. /ios:app写入的数据将被追加在文件的末尾,此方式使用ios:outstoreFile setiosflags(ios:left) setw(20) name setw(15) price setw(10) quantity setw(10) store_Number setw(20) dalei shelf_Number endl;/setiosflags(ios:left)左对齐输出storeFile.close();cout endl endl t该商品已经入库. endl endl t;system(pause);/暂停/ 出库void manage:out_cangku()system(cls);string name;/商品名cout endl t商品出库,输入出库商品信息 : endl endl;cout name;ifstream storeFile(store.txt);/ifstream类“读”if (!storeFile)/打开失败ofstream storeFile1(store.txt);/“写”storeFile1.close();cout endl endl t仓存为空! endl endl name_1 price_1 quantity_1 store_Number_1 dalei_1 shelf_Number_1)if (name_1 = name)flag = true;elsetempFile setiosflags(ios:left) setw(8) name_1 setw(5) price_1 setw(8) quantity_1 setw(5) store_Number_1 setw(10) dalei_1 shelf_Number_1 endl;tempFile.close();storeFile.close();if (!flag)/“1”打开失败cout endl endl t仓库中没有这种商品! endl endl t;system(pause);return;ofstream storeFile1(store.txt);/“写”ifstream tempFile1(temp.txt);/“读”storeFile1 tempFile1.rdbuf();/将tempFile1流对象中的流重定向到storeFile1上,实现替换.storeFile1.close();tempFile1.close();cout endl t这些商品已经出库, 请仔细检查! endl endl t;system(pause);/查询void manage:find_property()while (1)system(cls);cout endl 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= endl endl tt;char select = _getch();switch (select)case 1:find_name();break;case 2:find_price();break;case 3:find_kind();break;case 4:return;/跳出函数default:break;/按商品名称查询void manage:find_name()system(cls);cout endl t按商品名查询 : endl endl;cout name;string name_1;/商品名double price_1;/价格int store_Number_1;/仓库编号string dalei_1;/商品大类int shelf_Number_1;/货架号long quantity_1 = 0; /商品数量ifstream storeFile(store.txt);/“读”if (!storeFile)/打开失败cout endl endl t对不起,你的库存为空! endl endl t;system(pause);return;bool flag = false;cout endl 商品名 价格 商品数量 仓库编号 商品大类 货架号 endl name_1 price_1 quantity_1 store_Number_1 dalei_1 shelf_Number_1)if (name_1 = name)flag = true;cout setiosflags(ios:left) setw(8) name_1 setw(5) price_1 setw(8) quantity_1 setw(5) store_Number_1 setw(10) dalei_1 shelf_Number_1 endl;storeFile.close();if (!flag)cout endl endl 对不起,库存中没有这种商品!;cout endl endl;system(pause);/按商品价格查询void manage:find_price()system(cls);cout endl t按商品价格查询 : endl endl;cout price;string name_1;/商品名double price_1;/价格int store_Number_1;/仓库编号string dalei_1;/商品大类int shelf_Number_1;/货架号long quantity_1 = 0; /商品数量ifstream storeFile(store.txt);/“读”if (!storeFile)cout endl endl t对不起,你的库存为空! endl endl t;system(pause);return;bool flag = false;cout endl 商品名 价格 商品数量 仓库编号 商品大类 货架号 endl name_1 price_1 quantity_1 store_Number_1 dalei_1 shelf_Number_1)if (price_1 = price)flag = true;cout setiosflags(ios:left) setw(8) name_1 setw(5) price_1 setw(8) quantity_1 setw(5) store_Number_1 setw(10) dalei_1 shelf_Number_1 endl;storeFile.close();if (!flag)cout endl endl 对不起,库存中没有这个价格的商品!;cout endl endl;system(pause);/按大类查询void manage:find_kind()system(cls);cout endl t按商品大类查询 : endl endl;cout dalei;string name_1;/商品名double price_1;/价格int store_Number_1;/仓库编号string dalei_1;/商品大类int shelf_Number_1;/货架号long quantity_1 = 0; /商品数量ifstream storeFile(store.txt);/“读”if (!storeFile)cout endl endl t对不起,你的库存为空! endl endl t;system(pause);return;bool flag = false;cout endl 商品名 价格 商品数量 仓库编号 商品大类 货架号 endl name_1 price_1 quantity_1 store_Number_1 dalei_1 shelf_Number_1)if (dalei_1 = dalei)flag = true;cout setiosflags(ios:left) setw(8) name_1 setw(5) price_1 setw(8) quantity_1 setw(5) store_Number_1 setw(10) dalei_1 shelf_Number_1 endl;storeFile.close();if (!flag)cout endl endl 对不起,库存中没有这类商品!;cout endl endl;system(pause);/商品报损void manage:call_break()system(cls);string name;/商品名cout endl t商品报损,请输入要报损商品信息 : endl endl;cout name;ifstream storeFile(store.txt);/“读”if (!storeFile)ofstream storeFile1(store.txt);/“写”storeFile1.close();cout endl endl t仓存为空! endl endl t;system(pause);return;bool flag = false;string name_1;/商品名double price_1;/价格string dalei_1;/商品大类string shelf_Number_1;/货架号long quantity_1 = 0; /商品数量ofstream tempFile(temp.txt);/“写”string store_N

温馨提示

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

评论

0/150

提交评论