C语言课程设计报告销售管理系统.doc
C语言课程设计报告销售管理系统一、题目要求 某公司有四个销售员,(编号1-4),负责销售五种产品(编号1-5).每个销售员都将当天出售的每种产品各写一张便条过来.每长便条包含内容: 销售人员的代号 产品的代号; 这种产品的当天的销售额;每位销售人员每天肯上缴的05张便条.假如收集到了上个月的所有便条,编写一个处理程序,读取上个月的销售情况(自己假设),进行如下处理。计算上个月每个人每种产品的销售额;按销售额对销售人员进行排序,输出排序的结果(销售员代号); 统计每种产品的总销售额,对这些产品按从高到低的顺序,输出排序结果(需要输出产品的代号和销售额);输出统计报表。二、需求分析本程序将用到结构体数组来实现,结构体成员要包括销售员代号、产品代号、销售额。待输入相关数据后,要将上个月每个人每种产品的销售额输出,然后按销售额参照冒泡法或选择排序算法对销售员进行排序,并输出排序结果。最后,要统计每种产品的总销售额,对这些产品按销售额从高到低的顺序输出排序结果。三、总体设计下面就以上的需求分析对程序进行总体设计,可以将这个系统的设计分为三个模块:计算上个月每个销售员每种产品的销售额、按销售额给销售员排序、按销售额给产品排序。如图:销售管理系统 每个销售员每种产品的销售额 按销售额给销售员排序 按销售额给产品排序四、程序分析:对输入的每个销售人员的信息用结构体实现;结构体成员包括销售人员代号,产品代号产品销售额,输入时候包含三个for循环,按月循环,按销售人员循环,按销售额循环.输入销售额由于按结构体控制输入,将销售额,销售人员,销售产品的信息联系在一起,便于后面的统计:#include<stdio.h>#define P 1struct messageint seller4;int product45;int sale45;sell50;void menu()printf("tt*销售管理系统*nn");printf("tttt一:输入模块n");printf("tttt二:统计计算模块n");printf("tttt三:打印输出模块n");int main()int i,j,k,n,m,p;int a45,b4=0,c10,d102;int e5=0,f102;message sell50; menu();for(i=1;i<=P;i+)for(j=1;j<=4;j+)printf("请输入销售人员编号:n");scanf("%d",&n);for(k=1;k<=5;k+)printf("请输入产品编号:n");scanf("%d",&m);printf("请输入产品当天销售额:n");scanf("%d",&selli.salenm);/*输入*/printf("tt*统计报表系统*nn");printf("ttt一:上个月每个销售人员每种产品的销售额n");for(i=1;i<=4;i+)/*计算上个月每个人每种产品的销售额*/for(j=1;j<=5;j+)for(k=1;k<=P;k+)aij+=sellk.saleij;printf("上个月销售人员%d销售产品%d的销售额为%dn",i,j,aij);printf("nttt二:上个月每个销售人员销售额排序n");for(i=1;i<=4;i+)for(j=1;j<=5;j+)bi+=aij;/*每个销售员的销售额*/for(i=1;i<=4;i+)ci=bi;for(i=1;i<=4;i+)for(j=i+1;j<=4;j+)if(ci<cj)p=ci;ci=cj;cj=p;for(i=1;i<=4;i+)for(j=1;j<=4;j+)if(ci=bj)di0=j;di1=bj;/*按销售额给销售员排序*/printf("销售人员%d的销售额为%dn",di0,di1);printf("nttt三:上个月每种产品总销售额排序n");for(i=1;i<=5;i+)for(j=1;j<=4;j+)ei+=aji;/*每种产品总销额*/for(i=1;i<=5;i+)ci=ei;for(i=1;i<=5;i+)for(j=i+1;j<=5;j+)if(ci<cj)p=ci;ci=cj;cj=p;for(i=1;i<=5;i+)for(j=1;j<=5;j+)if(ci=ej)fi0=j;fi1=ej;/*产品销售额排序*/printf("上个月产品%d的销售额为%dn",fi0,fi1);printf("tt*统计报表系统尾端*nn");return 0;五、运行结果输入程序部分截图输出程序截图六、学习心得四天紧张而快乐的上机实习,让我再次感受到了c语言的难度,也让我从本质上对c语言这门学科有了更深层次的认识。在我初学c语言时,并没有对其产生浓厚的兴趣,总觉得这样的学科太过乏味,而且认为理论与实践相结合才是最好的学习方法,仅仅上课没有多大用处。所以,一开始我就很忽视c语言的学习,除了上课时简单地听一下,从来就没有用课余时间去温习。但是,考试让我从幻想中清醒过来,我这才清楚地认识到c语言并没有想象中的那么简单。不过,一切为时已晚。现在,我又有一个机会接触c语言了,我也已经做好了充足的准备。我决定用自己最大的努力再次去学c语言。让我高兴的是,这次的学习虽然很艰难,但是却真正的让我体会到学习c语言的乐趣,也让我知道c语言所深藏的巨大作用。这四天,我们是在机房度过的,虽然我一直很讨厌整天坐在计算机旁,但是这次没有让我产生反感,我反而喜欢这样去琢磨一个复杂的程序,因为这样也很快乐。老师每天都有来,为同学们解决问题。同学们也互相讨论,一起学习,一起进步。希望以后也有这样的一个机会,能够再次让我们在一起互相学习,与老师进行面对面的接触。我会很怀恋这次的计算机实习的,我以后对待各学科的态度也将会从这次c语言实习开始发生本质的改变。