销售管理系统c++课程设计报告书.docx
《销售管理系统c++课程设计报告书.docx》由会员分享,可在线阅读,更多相关《销售管理系统c++课程设计报告书.docx(11页珍藏版)》请在冰豆网上搜索。
销售管理系统c++课程设计报告书
《销售管理系统》
程序设计基础课程设计报告
专业:
电子信息工程
班级:
2007级2班
学号:
2007082045
姓名:
志龙
指导教师:
常耀辉
二OO八年六月二八日
1.课程设计目的:
用C++语言编写学生信息管理系统,对学过的知识进行巩固和综合体会。
2课程设计题目描述和要求:
某公司有四个销售员(编号:
1-4),负责销售五种产品(编号:
1-5)。
每个销售员都将当天出售的每种产品各写一便条交上来。
每便条包含容:
1)销售的代号
2)产品的代号
3)这种产品的当天的销售额
每位销售员每天可能上缴0-5便条。
假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。
1)计算上个月每个人每种产品的销售额。
2)按销售额对销售员进行排序,输出排序结果(销售员代号)
3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)
4)输出统计报表
销售统计报表
产品代号 销售之和
销售员代号 1 2 3 4 5
1
2
3
4
每种产品之和 总和
3程序原代码:
#include
usingnamespacestd;
intn;
classNote//定义纸条类Note
{public:
voidinput()//定义输入信息函数
{
cout<<"1.请输入销售员代号(1~4):
";
cin>>id;
cout<<"2.请输入产品代号(1~5):
";
cin>>num;
cout<<"3.当天该产品销售额:
";
cin>>sale;
}
staticvoidNote:
:
account1();//声明静态account1函数
private:
intid;//销售员代号
intnum;//产品的代号
floatsale;//当天销售额
}note[600];//建立对象数组
classSailer//定义数据类Sailer
{public:
intsale[10];
}p[10],x;//定义对象数组p[10]和对象x
voidscroll()//定义菜单函数
{
intk;//选择虚数
voidaccount2();//声明计算函数
voidcompositor_sailer();//声明排序函数(按销售员)
voidcompositor_sale();//声明排序函数(按销售额)
voidstatistic();//声明统计表函数
Note:
:
account1();
cout<<"****应用菜单****"<cout<<"1.计算上个月每个人每种产品的销售额"<cout<<"2.按销售额对销售员进行排序,输出排序结果(销售员代号)"<cout<<"3.统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果"<cout<<"4.输出统计报表"<cout<<"0.退出系统"<cout<<"请选择(0~4):
";
cin>>k;
switch(k)
{
case1:
account2();break;
case2:
compositor_sailer();break;
case3:
compositor_sale();break;
case4:
statistic();break;
case0:
exit(0);
}
if(k<0||k>4)cout<<"对不起!
您输入的数据的围是(1~4),请重新选择:
"<scroll();
}
voidNote:
:
account1()//在类外定义account1函数
{
inta,b,j;
for(a=1;a<=5;a++)
{p[0].sale[a]=a;
for(b=1;b<=6;b++)
p[a].sale[b]=0;//为数组赋值,全部为0
}
for(a=1;a<=4;a++)
{
p[a].sale[0]=a;
}//将4个对象中的sale[0]分别赋值1、2、3、4
for(a=1;a<=4;a++)
{
for(b=1;b<=5;b++)
for(j=0;jif(note[j].id==a&¬e[j].num==b)//如果销售代号和商品号分别与此次循环数相等,则将该对象的销售额存在相对应的对象中
p[a].sale[b]=p[a].sale[b]+note[j].sale;//每种产品的销售额
}
for(b=1;b<=5;b++)
{
for(a=1;a<=4;a++)
p[5].sale[b]=p[5].sale[b]+p[a].sale[b];//每个人的销售额
}
for(a=1;a<=5;a++)
{
for(b=1;b<=5;b++)
p[a].sale[6]=p[a].sale[6]+p[a].sale[b];//总的销售额
}
}
//输出每个人的销售情况
voidaccount2()//定义account2函数
{inti,a;
cout<<"产品代码"<for(a=1;a<=5;a++)
cout<<""<
cout<for(i=1;i<=4;i++)
{
for(a=0;a<=5;a++)
cout<<""<
cout<}
scroll();
}
//按销售额对销售员进行排序,输出排序结果(销售员代号)
voidcompositor_sailer()//定义compositor_sailer函数
{
inti,r,j;
for(i=1;i<4;++i)//按销售额排序
{
r=i;
for(j=i+1;j<=4;j++)
if(p[r].sale[6]
r=j;
if(r!
=i)
{x=p[i];
p[i]=p[r];
p[r]=x;
}
}
cout<<"销售员代码销售总额"<for(i=1;i<=4;i++)
cout<<""<cout<scroll();
}
//统计每种产品的总销售额,对这些产品按从高到底的顺序输出排序结果
voidcompositor_sale()//定义compositor_sale函数
{
inta,i,r,t;
for(a=1;a<5;a++)
{
r=a;
for(t=a+1;t<=5;t++)
if(p[5].sale[r]
if(r!
=a)
for(i=0;i<=5;i++)
{p[i].sale[6]=p[i].sale[a];
p[i].sale[a]=p[i].sale[r];
p[i].sale[r]=p[i].sale[6];
}
}
cout<<"产品代码总销售额"<for(a=1;a<=5;a++)
cout<<""<cout<scroll();
}
//输出统计报表
voidstatistic()//定义statistic函数
{inti,a;
cout<<"\t\t销售统计报表\n\n\n";
cout<<"产品代号\n销售员码1\t2\t3\t4\t5\t销售之和\n\n";
for(i=1;i<=4;i++)
{for(a=0;a<=6;a++)
cout<<"\t"<
cout<<"\n\n";
}
cout<<"总和";
for(a=1;a<=6;a++)
cout<<"\t"<
cout<<"\n\n";
}
intmain()
{inty;//输入的纸条数
cout<<"◇*◇*◇*◇*◇*◇消费管理系统◇*◇*◇*◇*◇"<cout<<"请输入您所上交的纸条数目:
";
cin>>y;
for(n=1;n<=y;n++)note[n].input();//调用输入函数
scroll();//调用目录函数
return0;
}
4.程序设计流程图:
5.运行结果为:
(1)目录:
(2)输入信息:
(3)选择应用菜单中的序号1:
(4)选择应用菜单中的序号2:
(5)选择应用菜单中的序号3:
(6)选择应用菜单中的序号4:
(7)退出系统:
6.课程设计总结:
通过课程设计这门课程,让我又重新温习了一下一起学过的知识,使我对这门课程又有了进一步的认识。
感觉以前学的知识通过这个课程设计联系在一起了,把知识结合起来了。
一开始拿过来感觉自己没有能力做完它,无从下手,后来同学给我理了一下思路,在老师,同学的指引下我有的思路了,把以前的知识又重新整理一下。
看来“温故而知新”是很有道理的。
总之,通过这门课程的学习,又对知识的认识加深了,掌握了。