销售管理系统.docx
- 文档编号:26885323
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:14
- 大小:249.58KB
销售管理系统.docx
《销售管理系统.docx》由会员分享,可在线阅读,更多相关《销售管理系统.docx(14页珍藏版)》请在冰豆网上搜索。
销售管理系统
《销售管理系统》
程序设计基础课程设计报告
二OO八年七月二日
目录
1、设计目的…………………………………………..3
2、总体设计…………………………………………..4
3、详细设计…………………………………………..5
4、源程序清单和执行结果…………………………..6
5、课程设计总结……………………………………..17
1、设计目的:
用c++编写销售管理系统
要求:
某公司有四个销售员(编号:
1-4),负责销售五种产品(编号:
1-5)。
每个销售员都将当天出售的每种产品各写一张便条交上来。
每张便条包含内容:
1)销售员的代号
2)产品的代号
3)这种产品的当天的销售额
每位销售员每天可能上缴0-5张便条。
假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。
1)计算上个月每个人每种产品的销售额。
2)按销售额对销售员进行排序,输出排序结果(销售员代号)
3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)
4)输出统计报表
销售统计报表
产品代号 销售之和
销售员代号 1 2 3 4 5
1
2
3
4
每种产品之和 总和
2、总体设计:
对于该系统的主要设计思路如上图所示,先向系统中输入所需数据,对数据进行计算处理后供使用者调用输出,输出后返回菜单继续调用其他功能。
3、详细设计:
4、源程序清单和执行结果:
#include
usingnamespacestd;
intn;//定义全局变量n
classPaper//定义纸条类
{public:
voidinput();//声明输入函数
staticvoidcount();//声明静态计算函数
private:
intsells_num;//销售员代号
floatnum;//当天销售额
intgoods_num;//产品的代号
}paper[600];//建立对象数组
classdata//定义数据类
{public:
intnum[7];
}p[6],w;
intmain()//主函数
{voidmulu();//声明函数welcome、mulu
voidwelcome();
welcome();//调用欢迎菜单
mulu();//调用目录函数
return0;}
voidwelcome()//欢迎菜单
{intm;//纸条数
cout<<"*******销售管理系统********"< cout<<"请输入本月上交的纸条数: "; cin>>m; for(n=1;n<=m;n++)paper[n].input();//调用输入函数 } voidmulu()//目录 {intchoice; voidoutput1(); voidoutput2(); voidoutput3(); voidoutput4(); Paper: : count(); do {cout<<"*******销售管理系统********"< cout<<"1.计算上个月每个人每种产品的销售额"< cout<<"2.按销售额对销售员进行排序,输出排序结果(销售员代号)"< cout<<"3.统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果"< cout<<"4.输出统计报表"< cout<<"0.退出系统"< cout<<"请选择(0-4): "; cin>>choice; switch(choice) { case1: output1();break; case2: output2();break; case3: output3();break; case4: output4();break; case0: exit(0); } }while(choice! =0); } voidPaper: : input()//定义输入函数 { cout<<"请输入销售员代号: "; cin>>sells_num; cout<<"请输入产品代号: "; cin>>goods_num; cout<<"当天该产品销售额: "; cin>>num; } voidPaper: : count()//定义计算函数 {intk,a,j; for(k=1;k<=5;k++) {p[0].num[k]=k; for(a=1;a<=6;a++) p[k].num[a]=0;//为数组赋值,全部为0 } for(k=1;k<=4;k++) {p[k].num[0]=k;}//将4个对象中的num[0]分别赋值1、2、3、4 for(k=1;k<=4;k++) {for(a=1;a<=5;a++) for(j=0;j if(paper[j].sells_num==k&&paper[j].goods_num==a)//如果销售代号和商品号分别与此次循环数相等,则将该对象的销售额存在相对应的对象中 p[k].num[a]=p[k].num[a]+paper[j].num;//每种产品的销售额 } for(a=1;a<=5;a++) {for(k=1;k<=4;k++) p[5].num[a]=p[5].num[a]+p[k].num[a];//每个人的销售额 } for(k=1;k<=5;k++) {for(a=1;a<=5;a++) p[k].num[6]=p[k].num[6]+p[k].num[a];//销售总额 } } voidoutput1()//输出每个人的销售情况 {inti,k; cout<<"**************上个月每个人销售情况如下: **********"< cout<<"产品代码"< for(k=1;k<=5;k++) cout<<""< cout< for(i=1;i<=4;i++) {for(k=0;k<=5;k++) cout<<""< cout< } mulu(); } voidoutput2()//按销售额对销售员进行排序,输出排序结果(销售员代号) { inti,r,j; for(i=1;i<4;++i)//按销售额排序 {r=i; for(j=i+1;j<=4;j++) if(p[r].num[6] r=j; if(r! =i) {w=p[i]; p[i]=p[r]; p[r]=w; } } cout<<"*********按销售额对销售员排序情况如下**********"< cout<<"销售员代码销售总额"< for(i=1;i<=4;i++) cout<<""< mulu(); } voidoutput3()//统计每种产品的总销售额,对这些产品按从高到底的顺序输出排序结果 { intk,i,r,t; for(k=1;k<5;k++) {r=k; for(t=k+1;t<=5;t++) if(p[5].num[r] if(r! =k) for(i=0;i<=5;i++) {p[i].num[6]=p[i].num[k]; p[i].num[k]=p[i].num[r]; p[i].num[r]=p[i].num[6]; } } cout<<"*****每种产品的总销售额顺序情况如下*****"< cout<<"产品代码总销售额"< for(k=1;k<=5;k++) cout<<""< mulu(); } voidoutput4()//输出该月统计报表 {inti,k; cout< cout<<"产品代号"< cout<<"销售员码"; for(i=1;i<=5;i++)cout< cout<<"销售之和"< for(i=1;i<=4;i++) {for(k=0;k<=6;k++) cout<<""< cout< } cout<<"总和"; for(k=1;k<=6;k++) cout<<""< cout< mulu(); } 运行结果: 5、课程设计总结 程序用到了类、静态函数、常用排序、计算算法等。 按要求将销售信息输入后使用菜单的方式对数据进行分类处理输出,并且按表格形式输出统计报表。 编写过程中有自己的查书、上网查找相关资料、同学的帮助。 学习了许多以前不知道的知识,并且搞清了许多以前模糊的知识点,巩固了知识。 第一次接触课程设计,觉得好奇、觉得陌生,还有第一次看到题目后不知道该从何处下手,为了能够及时的完成,不能不被动的、主动的一点点地构思算法、整个系统的结构,编写、运行,一遍遍的错,又一遍遍的改,不明白的就问同学,模糊的知识就看书,没怎么听过的知识就XX。 在编写过程中,慢慢地弄懂了题意,渐渐地就能构思出算法,对整个程序有了大概的思路。 最后不断的试验,模仿别的程序,自己改进有了主要的算法,之后其他部分就显得简单的。 在本题中,我使用了对象数组,在数据的存储与计算中分别建立了两个类,分别建立对象数组,因为本题中的输出较为繁琐,所有另建一类对数据进行处理。 在建立对象时,直接按最大容量600(每月最多可能交600张)建立了对象,本来准备使用动态链表,但最后很多地方多不很确定,只好改用对象数组。 在编完程序后,我觉得: 耐心和细心在编程中都显得很重要,稍有不注意,少一个‘;’或是一个‘}’都会出来意想不到的错误个数,给运行带来麻烦,很多细节之处也需要很缜密的思维,有时也需要拿起笔在纸上写写,此次课程设计改变了我对编程的很多错误的看法,也发现了自身的许多不足之处,需要以后不断努力。 参考书目: 谭浩强《C++程序设计》,北京清华大学出版社2006年.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 销售 管理 系统