C++课程设计-商品管理系统 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C++课程设计-商品管理系统 .pdf》由会员分享,可在线阅读,更多相关《C++课程设计-商品管理系统 .pdf(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.淮 海 工 学 院 计 算 机 工 程 学 院课程设计报告设计名称:C+程序设计课程设计姓名:学号:专业班级:系(院):设计时间:设计地点:指导教师评语:签名:年月日成绩:名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 39 页 -C+程序设计课程设计报告第2 页,共39 页1、课程设计目的C+程序设计课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C+的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握 C+程序
2、设计这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2、课程设计任务与要求:本次课程设计利用C+程序设计课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、编程简练,程序功能齐全,能正确运行4、说明书、流程图要清楚5、课题完成后必须按要求提交课程设计报告任务:设计一个商品销售管理系统。运用C+语言描述商品类、供应商类。要求设计中综合运用C+基础知识,利用指针对商品、供应商链表进行处理,方便快捷的进行增删改,充分利用友元来处理两个类之间的关
3、系,理解面向对象程序设计的核心的概念。实现功能:(1)建立商品类、供应商类(2)商品、供应商信息的初始化(3)商品信息的添加、修改、删除、查找(4)供应商信息的添加、修改、删除、查找(5)商品信息、供应商信息的输出名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 39 页 -C+程序设计课程设计报告第3 页,共39 页备注:将商品、供应商保存为文件,能够写入与读出。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 39 页 -C+程序设计课程设计报告第4 页,共39 页概要设计(1)需求分析:要实现对商品,供应商信息的添加、修改、删除、查找,并输出信息,能够方便快捷,并
4、有用户能详细清楚的操作指南。(2)模块说明:本次程序设计中,需要设计10 个模块,分别是添加、修改、删除、查找、输出商品信息和供应商信息,一共4 个类:分别是商品类、商品数据类、供应商类、供应商数据类。通过几个switch 语句实现用户选择功能。主要函数流程图:名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 39 页 -C+程序设计课程设计报告第5 页,共39 页(3)详细设计商品数据类的设计class spData private:char name100;int count;float iprice;名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 39 页 -C
5、+程序设计课程设计报告第6 页,共39 页float oprice;char gys20;public:int id;int getId()char*getName()int getCount()float getBuy()float getSale()char*getGys()void setId(int n)void setName(char na)void setCount(int c)void setBuy(float i)void setSale(float o)void setGys(char g);商品类的设计class Commodity private:spData t50;
6、int n;public:void newFile()int id;int n;char name50;名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 39 页 -C+程序设计课程设计报告第7 页,共39 页int count;float iprice;float oprice;char gys20;if(n0)n=0;int i;spData temp;for(;n+)coutid;if(id=-1)break;tn.setId(id);coutname;tn.setName(name);coutcount;tn.setCount(count);coutiprice;tn.se
7、tBuy(iprice);coutoprice;名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 39 页 -C+程序设计课程设计报告第8 页,共39 页tn.setSale(oprice);coutgys;tn.setGys(gys);cout 若商品添加完毕,请按-1 退出添加!endl;for(i=0;itn.getId()temp=ti;ti=tn;tn=temp;void showData(int i)spData t,*p;p=&t;coutgetId()setw(10)getName()setw(10)getCount()setw(8)getBuy()setw(8)g
8、etSale()setw(8)getGys()endl;void showData()int n;名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 39 页 -C+程序设计课程设计报告第9 页,共39 页cout商品编号 setw(8)商品名 setw(8)库存量 setw(10)已售量 setw(10)进价 setw(8)售价 setw(8)供应商 endl;for(int i=0;i0)showData(i);cout 商品种类:nendl;void save()ofstream fout;fout.open(商品清单.txt,ios:app);if(!fout)coutcan
9、not open the file!endl;return;fout 商品编号 商品名 库存量 进价 售价 供应商 endl;for(int i=0;in;i+)foutti.getId()setw(14)ti.getName()setw(10)ti.getCount()setw(10)ti.getBuy()setw(10)ti.getSale()setw(10)ti.getGys()endl;cout*Save Success!*endl;名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 39 页 -C+程序设计课程设计报告第10 页,共39 页fout.close();void
10、 xiugai()int count;char name100;float iprice;float oprice;char gys20;int temp;temp=search();if(temp=-1)coutcannot find the shopping!endl;return;else cout请输入新数据:endl;coutname;ttemp.setName(name);coutcount;ttemp.setCount(count);coutiprice;ttemp.setBuy(iprice);coutoprice;ttemp.setSale(oprice);coutgys;t
11、temp.setGys(gys);int search()int id;coutid;int low=0,mid,high=n-1;while(lowid)high=mid-1;else low=mid+1;return-1;void remove()spData t10;cout 请输入要删除的商品编号id;名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 39 页 -C+程序设计课程设计报告第12 页,共39 页fstream file(商品清单.txt,ios:in|ios:out|ios:binary);for(int u=0;u5;u+)file.read(char*)
12、&tu,sizeof(tu);for(int v=0;v5;v+)if(tv.id=id)continue;else file.write(char*)&tv,sizeof(tv);cout 该商品被删除endl;file.close();供应商数据类的设计class spData private:char name100;int count;float iprice;float oprice;char gys20;public:int id;int getId()char*getName(char na)int getCount()名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,
13、共 39 页 -C+程序设计课程设计报告第13 页,共39 页float getBuy()float getSale()char*getGys()void setId(int n)void setName(char na)void setCount(int c)void setBuy(float i)void setSale(float o)void setGys(char g);供应商类的设计class gongyingshang private:gysData t50;int n;public:void newFile()int id;char name50;int phone;if(n0
14、)n=0;for(;n+)coutid;if(id=-1)break;名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 39 页 -C+程序设计课程设计报告第14 页,共39 页tn.setid();cout 供应商名称:;tn.setname(name);cout 供应商电话:;tn.setphone();cout 若供应商添加完毕,请按-1 退出添加!endl;void showData(int i)gysData t,*p;p=&t;coutsetw(8)getid()setw(10)getname()setw(10)getphone()endl;void showData
15、()coutsetw(8)供应商编号 setw(8)供应商名称 setw(8)供应商电话 endl;for(int i=0;in;i+)showData(i);cout产品种类:nendl;名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 39 页 -C+程序设计课程设计报告第15 页,共39 页 void save()ofstream fout;fout.open(供应商.txt,ios:app);if(!fout)coutcannot open the file!endl;return;fout 供应商编号 供应商姓名 供应商手机号 endl;for(int i=0;in;i
16、+)foutti.getid()setw(10)ti.getname()setw(14)ti.getphone()endl;cout*Save Success!*endl;fout.close();int search()int id;coutid;int low=0,mid,high=n-1;while(lowid)high=mid-1;名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 39 页 -C+程序设计课程设计报告第16 页,共39 页else low=mid+1;return-1;void xiugai()char name100;int phone;int temp
17、;temp=search();if(temp=-1)coutcannot find the gys!endl;return;else cout请输入新数据:endl;coutname;ttemp.setname(name);coutphone;ttemp.setphone();void remove()gysData g10;cout 请输入要删除的供应商编号id;fstream file(gys.txt,ios:in|ios:out|ios:binary);for(int u=0;u5;u+)file.read(char*)&gu,sizeof(gu);for(int v=0;v5;v+)i
18、f(gv.id=id)continue;else file.write(char*)&gv,sizeof(gv);cout 该供应商被删除endl;file.close();菜单函数的设计inline void menu2()system(cls);cout*欢迎使用商品销售管理系统*endl;cout*商品选项*endl;cout(1)添加endl;cout(2)保存endl;cout(3)删除endl;cout(4)查找endl;cout(5)信息输出endl;cout(6)修改endl;cout(7)菜单endl;cout(0)退出系统endl;名师资料总结-精品资料欢迎下载-名师精心整
19、理-第 17 页,共 39 页 -C+程序设计课程设计报告第18 页,共39 页cout*2012.6*endl;inline void menu1()system(cls);cout*欢迎使用商品销售管理系统*endl;cout*主菜单*endl;cout(1)商品选项endl;cout(2)供应商选项endl;cout(0)退出系统endl;cout*2012.6*endl;inline void menu3()system(cls);cout*欢迎使用商品销售管理系统*endl;cout*供应商选项*endl;cout(1)添加endl;cout(2)保存endl;cout(3)删除en
20、dl;cout(4)查找endl;cout(5)信息输出endl;cout(6)修改endl;cout(7)菜单endl;cout(0)退出系统endl;cout*2012.6*endl;主函数的设计:int main()名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 39 页 -C+程序设计课程设计报告第19 页,共39 页 menu1();int x;coutx;switch(x)case 1:menu2();Commodity com;int c;for(;)coutc;switch(c)case 1:com.newFile();break;case 2:com.save
21、();break;case 3:com.remove();break;case 4:com.search;break;case 5:com.showData();break;case 6:menu1();break;case 0:cout*谢谢使用*endl;cout*!再见!*endl;名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 39 页 -C+程序设计课程设计报告第20 页,共39 页break;case 2:menu3();gongyingshang gys;int c;for(;)coutc;switch(c)case 1:gys.newFile();break;c
22、ase 2:gys.save();break;case 3:gys.remove();break;case 4:gys.showData();break;case 5:gys.search();break;case 6:menu1();break;case 0:cout*谢谢使用*endl;cout*!再见!*endl;break;名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 39 页 -C+程序设计课程设计报告第21 页,共39 页case 0:cout*谢谢使用*endl;cout*!再见!*endl;break;return 0;(4)调试分析:程序3.cpp(226)
23、:warning C4700:local variable n used without having been initialized 程序3.cpp(246):warning C4700:local variable c1 used without having been initialized 程序3.cpp(348):warning C4700:local variable g1 used without having been initialized 桌面q.cpp(237):error C2562:search:void function returning a value 桌面q
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+课程设计-商品管理系统 2022 C+ 课程设计 商品 管理 系统
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内