《c++课程设计某公司的库存管理系统》由会员分享,可在线阅读,更多相关《c++课程设计某公司的库存管理系统(26页珍藏版)》请在金锄头文库上搜索。
1、信息科学与技术学院程序设计基础课程设计报告题目名称: 某公司的库存管理系统 学生姓名: 王 祺 学 号: 2011508015 专业班级:计算机科学与技术 2011级 1班指导教师: 高 攀 2012 年 6月 27 日 目录1 课程设计题目与要求- 3 -1.1课程设计题目:- 3 -1.2课程设计要求:- 3 -1.3 其他要求:12 总体设计23详细设计43.1类设计43.2主模块设计44 运行结果65 课程设计总结81 课程设计题目与要求1.1课程设计题目:某公司的库存管理系统1.2课程设计要求:1、问题描述(功能要求): 某公司现有以下设备:普通电视机、DVD、带DVD的电视机,带D
2、VD的电视机的售价为普通电视机和DVD单价之和的80%,要求对所有的库存设备都能按照品名进行显示、查找、增加和删除、保存的功能。 2、问题的解决方案: 根据系统功能要求,可以将问题解决分为以下步骤: (1)分析系统中的各个实体之间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法); (4)完成类中各个成员函数的定义; (5)完成系统的应用模块; (6)功能调试; (7)完成系统总结报告以及系统使用说明书。 1.3 其他要求: (1)只能使用C/C+语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形
3、菜单界面更好) (3)学生可自动增加新功能模块 1 石河子大学课程设计报告2 总体设计在公司库存管理系统中,物品信息主要为:物品名称,颜色,物品生产厂家,生产厂家地址,物品型号,物品生产日期,物品的单价和数量。 公司库存管理系统中系统需要我们实现六个功能:1、物品录用2、显示物品功能;3、添加物品功能;4、查找物品功能;5、删除物品功能;6、保存物品功能。在物品录用功能中用户可以根据自己的需要输入自己想输入的物品信息(名称、颜色、生产厂家、厂家地址、型号、生产日期、数量),然后将其保存,一开始系统会提示输入自己想输入的物品型号,然后再输入相关型号的物品信息,输入完之后会再次提示用户是否继续输入
4、,然后再根据提示进行相关操作。在显示物品功能中,当用户选择此功能时系统会打开保存信息的文件然后将用户所有保存的信息全部显示出来。在添加物品功能中,用户可以根据系统的提示输入相关物品的信息,并将其保存。在查找物品功能中,用户根据系统提示输入自己想查找的相关物品名称,然后在库存中的相关物品中查找,如果有此物品则会显示此物品的所有信息,如果没有则会显示无此物品信息。在删除物品功能中,用户根据系统的提示输入自己想删除的物品名称,然后将其删除。在保存物品功能中,当用户选择此功能时,系统会将用户需要的所有物品保存。公司库存管理系统中功能模块图:1、物品信息录用公司库存管理系统2、添加物品信息3、显示物品信
5、息4、查找物品信息5、删除物品信息6、保存物品信息输入普通电视机的信息输入DVD的信息输入带DVD的普通电视机的信息添加普通电视机的信息添加DVD的信息添加带DVD的普通电视机的信息输入名称查找普通电视机的信息输入名称查找DVD的信息输入名称查找带DVD的普通电视机的信息输入名称删除普通电视机的信息输入名称删除DVD的信息输入名称删除带DVD的普通电视机的信息图1 公司库存管理系统中功能模块图 3详细设计3.1类设计公司库存管理系统中四个类的类层次图为:Wiring类TV类DVD类TV_DVD类图2 公司库存管理系统中中四个类的类层次图3.2主模块设计公司库存管理系统中各功能模块的实现: 1、
6、物品信息录用菜单2、添加物品信息3、显示物品信息4、查找物品信息5、删除物品信息6、保存物品信息图3 公司库存管理系统中菜单函数的功能图 1、物品信息录用功能模块: 1、物品信息录用功能输入普通电视机的相关信息输入DVD的相关信息输入带DVD的普通电视机的相关信息 图4 物品信息录用功能的功能图 3、添加物品信息功能的模块图添加物品信息添加普通电视机的相关信息添加DVD的相关信息添加带DVD的普通电视机的相关信息 图5 添加物品信息功能的功能图 4、查找物品信息功能的模块图输入物品名称查找普通电视机的相关信息查找物品信息输入物品名称查找DVD的相关信息输入物品名称查找带DVD的普通电视机的相关
7、信息 图6 查找物品信息功能的功能图 5、删除物品信息功能的模块图删除物品信息输入物品名称删除DVD的相关信息输入物品名称删除普通电视机的相关信息输入物品名称删除带DVD的普通电视机的相关信息 图7 删除物品信息功能的功能图公司库存管理系统中四个类的UML图为: Wiring+Name10:char+Color10:char+Address50:char+Factory50:char+Type20:char+year:int+month:int+day:int+numbe:int+wiring()+wiring() pay():void虚基类Wiring派生类DVD TV+price1:flo
8、at+TV()+set1():void+pay():void DVD+price2:float+DVD()+set2():void+pay():void派生类TVTV_DVD+price:float+TV_DVD()+set3():void+pay():void派生类TV_DVD 图8 公司库存管理系统中类派生关系的UML图4 运行结果(1).程序运行主界面(2)商品录入界面(3)商品显示界面(4)查找商品界面(5)删除商品界面(6)保存商品界面5 课程设计总结经过这两周的课程设计周,我发现自己还存在许多不足的地方,我发觉自己的C+语言程序设计编程基础不是很牢固,我在暑假期间还会多多学习复习一
9、下C+语言设计,我觉得这门语言程序设计还是挺好的,我在暑假期间还会多用这门程序设计语言设计一些程序,熟练地使用这门设计语言,我也会试着使用多文件进行程序编译,这样方便简单一些,我觉得老师说得挺对的:不用多文件编译就不是一个计算机编程人员,这一年的程序设计白学了。我觉得这句话说得没错,况且我也觉得不用多文件编译真的不怎么方便,有错误时也不怎么好修改,在暑假时我会多学习学习一些知识,充实自己,我觉得自己不能落后于别人,应该勤奋努力,掌握一些专业知识,为以后的深造和工作打好基础。参考文献:1郑莉 等编著C+语言程序设计(第三版)北京:清华大学出版社2郑莉 等编著C+语言程序设计(第三版)学生用书北京
10、:清华大学出版社3李春葆 等编著C+程序设计学习与上机实验指导 北京:清华大学出版社4范辉 等编著Visual C+6.0程序设计简明教程 高等教育出版社附录:源程序清单#include#include#include#includeusing namespace std;class wiringpublic:char name10;/物品名称char color10;/物品颜色char address50;/厂商地址char factory50;/生产厂商char type20;/物品型号int year,month,day;/出厂日期int number;/物品数量wiring() /构造
11、函数wiring() /析构函数virtual void pay() /设置价格函数;class TV:virtual public wiring public:TV() void set1(char *n,char *c,char *a,char *f,char *t,int y,int m,int d,int nn)strcpy(name,n);strcpy(color,c);strcpy(address,a);strcpy(factory,f);strcpy(type,t);year=y;month=m;day=d;number=nn;void pay() price1=3000; /普
12、通电视机售价float price1;class DVD:virtual public wiringpublic:DVD() void set2(char *n,char *c,char *a,char *f,char *t,int y,int m,int d,int nn)strcpy(name,n);strcpy(color,c);strcpy(address,a);strcpy(factory,f);strcpy(type,t);year=y;month=m;day=d;number=nn;void pay() price2=2000;/DVD售价float price2;class TV_DVD:public TV,public DVDpublic:TV_DVD() void set3(char *n,char *c,char *a,c