C语言实习报告-销售管理系统_第1页
C语言实习报告-销售管理系统_第2页
C语言实习报告-销售管理系统_第3页
C语言实习报告-销售管理系统_第4页
C语言实习报告-销售管理系统_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言实习报告销售管理系统中国地质大学(武汉)材料科学与化学工程学院*班 *二零一一年七月目 录一、实习要求2二、题目分析21、要求22、任务23、运行环境34、开发工具3三、概要设计31、总体设计32、系统流程图4四、详细设计41、详细设计思路42、具体代码实现5五、程序的具体实现情况19六、设计的总结与体会23七、参考文献23一、实习要求某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容:1)销售员的代号 ;2)产品的代号;3)这种产品的当天的销售额;每位销售员每天可能上缴0-5张便条。假设,收集到了上

2、个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。 1)计算上个月每个人每种产品的销售额。2)按销售额对销售员进行排序,输出排序结果(销售员代号)3)统计每种产品的总销售额,对这些产品按从高到低的顺序,输出排序结果(需输出产品的代号和销售额)4)输出统计报表 二、题目分析1、要求(1)用c语言实现程序设计;(2)利用结构体进行相关信息处理;(3)画出查询模块的流程图;(4)系统的各个功能模块要求用函数的形式实现;(5)界面友好(良好的人机互交),程序要有注释。2、任务(1)定义一个结构体类型数组,输入每一位同学的记录(包括姓名、电话号码、e_mail、地址),将

3、其信息存入文件中;(2)输入姓名查询该同学的信息,并显示在屏幕上;(3)画出所有模块的流程图;(4)编写代码;(5)程序分析与调试。3、运行环境(1)WINDOWS2000/XP系统(2)Turboc2.0编译环境4、开发工具C语言三、概要设计1、总体设计本程序要设计销售管理系统,首先要设计一个选择函数,用来选择运行其他各个函数。接着要分别设计输入数据函数,各种统计函数和各种排序函数,用以实现各种统计和排序功能,最后要设计一个数据请空函数和统计表输出函数,得到程序设计要求的表格。主菜单目 录if(choice=6)case 2;f2();case 3;f3();case 4;f4();case

4、 5;f5();switch(choice)for (i=0;i+)break;break;结束case 1;f1();case 6;f6();2、系统流程图四、详细设计1、详细设计思路main()主函数 设置了程序的流程,结束程序。select ( ) 选择函数 选择所想运行的各个函数.functionscan ( ) 输入函数 输入便条的数据.function1 ( ) 文件的数据输入函数 多次输入数据function2 ( ) 统计函数 每个人的每种产品的统计functionpaixu2 ( )总额排序函数 按销售额对商品进行排序function4() 总额统计函数 统计每种产品的总额f

5、unction3() 售员排序函数 按照销售额对售员排序函数function5() 统计报表函数 统计商品总额function6() 清空文件函数 清空文件数据functionpaixu() 个人排序函数 按销售总额对售员排序2、具体代码实现#define N 4 /*宏定义职工数*/ #define M 5 /*商品数*/ #define T (N*M*30) #include#include#include struct goods /*货物编号*/ int emp; int num; int price; gsT; struct employee /*个人排序用*/ int sum; i

6、nt num; empN,work; struct sum /*总额排序用*/int num; int sum1; sum1M,you; /*.打印选择函数.*/ void print1() /*打印选择函数*/ printf(n *欢迎来到销售管理系统*n); printf( * *n);printf( * 请选择你想要进行的项目: *n); printf( * *n);printf( * 上传每个销售员的销售便条 (请输入 1) *n); printf( * 计算每个人每种产品的销售额 (请输入 2) *n); printf( * 按销售额对销售员进行排序 (请输入 3) *n); pri

7、ntf( * 统计每种产品的总销售额,并输出排序结果 (请输入 4) *n); printf( * 输出统计报表 (请输入 5) *n); printf( * 清空文件函数 (请输入 6) *n);printf( * *n);printf( * 由*班*制作 *n);printf( *n); /*完成*/ /*.选择函数.*/ int select() /*选择函数*/ int k; int a; do printf(n请输入选项:); scanf(%d,&a); while(a=1&a=6)!=1); switch(a) case 1:k=1;break; case 2:k=2;break;

8、 case 3:k=3;break; case 4:k=4;break; case 5:k=5;break; case 6:k=6;break; return(k); /*完成*/ /*.输入数据函数.*/ void functionscan()/*输入数据函数*/ FILE *fp; char ch; if(fp=fopen(e:employee1.txt,a+)=NULL) exit(1); printf( 员工编号 产品编号 销售数量:n); ch=getchar(); ch=getchar(); while (ch!=n) fputc(ch,fp); ch=getchar(); rew

9、ind(fp); printf(现在你共有数据:n); ch=fgetc(fp); while(ch!=EOF) putchar(ch); ch=fgetc(fp); fputc(n,fp); /*添加回车符*/ fclose(fp); printf(n); /*.文件的数据输入.*/ void function1()/*文件的数据输入*/ void functionscan(); FILE *fp1; int i; i=0; printf(-欢迎使用- ); printf(n *(请输入相关数据,并在两个数据间输入空格!)* n); loop1: functionscan(); printf

10、(继续?n);/*继续?*/ if(iM*N&(getchar()=y|(getchar()=Y) i+;printf(-Now is%d the tips-n,i+1); goto loop1; printf(输入任意键返回n); getch(); /*.每个人的每种产品的统计.*/ void function2() /*每个人的每种产品的统计*/ FILE *fp; int i=0,j=0,sum,k; printf( -每个人的每种产品的统计-nn); fp=fopen(e:employee1.txt,r+); for(j=0;jN;j+) /*员工数*/ for(k=0;kM;k+)

11、/*商品数*/ sum=0; for(i=0;iT;) /*扫描便条数*/ fscanf(fp,%d%d%d,&gsi.emp,&gsi.num,&gsi.price); if(j+1)=gsi.emp&(k+1)=gsi.num) sum=sum+gsi.price; i+; printf( | 员工编号%3d | 产品编号%4d | 销售数量%9d |n,j+1,k+1,sum); printf( -n); fclose(fp); printf(输入任意键返回n); getch(); /*.总额排序函数.*/ void functionpaixu2() int i,j,r; printf(

12、n -按每种产品的销售额排序-nn); for(i=0;iM;i+) for(j=i+1;jM;j+) if(sum1i.sum1sum1j.sum1) you=sum1i; sum1i=sum1j; sum1j=you; for(r=0;rM;r+) printf( 产品编号%3d |销售数量%10dn,sum1r.num,sum1r.sum1); /*打印数据*/ /*.每种产品的总额.*/ void function4() /*每种产品的总额*/ FILE *fp; int i=0,sumM=0,k,r; fp=fopen(e:employee1.txt,r+); for(k=0;kM;

13、k+) /*商品数*/ sumk=0; for(i=0;iT;) /*扫描便条数*/ fscanf(fp,%d%d%d,&gsi.emp,&gsi.num,&gsi.price); if(k+1)=gsi.num) sumk=sumk+gsi.price; i+; printf( 产品编号%4d |销售数量%10dn,k+1,sumk); for(r=0;rM;r+) sum1r.sum1=sumr;sum1r.num=r+1; functionpaixu2(); fclose(fp); printf(输入任意键返回n); getch(); /*.按照销售额对售员排序函数.*/ void fu

14、nction3() /*按照销售额对售员排序函数*/ FILE *fp; void functionpaixu(); int i=0,j=0,sumN=0,b=0; fp=fopen(e:employee1.txt,r+); for(j=0;jN;j+) /*扫描数据*/ sumj=0; /*员工数*/ for(i=0;i5;) /*扫描便条数*/ fscanf(fp,%d%d%d,&gsi.emp,&gsi.num,&gsi.price); if(j+1)=gsi.emp) sumj=sumj+gsi.price; i+; for(b=0;bN;b+) empb.sum=sumb;empb.

15、num=b+1; j=0; for(j=0;jN;j+) printf( 销售员编号%3d |销售数量%10dn,j+1 ,sumj); /*打印数据*/ functionpaixu(); fclose(fp); printf(输入任意键返回n); getch(); /*.统计报表.*/ void function5() FILE *fp; int su=0,i,j,sumM=0,k; printf( -统计报表-n); fp=fopen(e:employee1.txt,r+); /*员工数*/ for(k=j=0;kM;j+,k+) /*商品数*/ sumj=0; for(i=0;iT;)

16、/*扫描便条数*/ fscanf(fp,%d%d%d,&gsi.emp,&gsi.num,&gsi.price); if(k+1)=gsi.num) sumj=sumj+gsi.price; i+; printf( 产品编号%4d |销售数量%10dn,(k+1),sumj); for(j=0;jM;j+) su=su+sumj; printf( -统计报表-%dn,su); fclose(fp); printf(输入任意键返回n); getch(); /*.清空文件函数.*/ void function6() /*清空文件函数*/ FILE *fp1; printf(nn请等待.n); fp

17、1=fopen(e:employee1.txt,w); if(e:employee1.txt,w)=NULL) /*新建文件*/ printf(程序出错!n); printf(-现在请退出程序-n); exit(1); else printf(nn -Ok -n); fclose(fp1); printf(输入任意键返回n); getch(); /*.个人排序函数.*/ void functionpaixu() int i,j,r; printf(n -按销售员的销售额排序-nn); for(i=0;iN;i+) for(j=i+1;jN;j+) if(empi.sumempj.sum) wo

18、rk=empi; empi=empj; empj=work; for(r=0;rN;r+) printf( 销售员编号%3d |销售数量%10dn,empr.num,empr.sum); /*打印数据*/ /*.主函数.*/ void main() /*主函数*/ int flag; loop2: print1(); flag=select(); if(flag=1) function1(); /*数据的输入*/ goto loop2; if(flag=2) function2(); /*每个人的每种产品的统计*/ goto loop2; if(flag=3) function3(); /*按照销售额对售员排序函数*/ goto loop2; if(flag=4) function4(); /*每种产品的总额 排序*/ goto loop2; if(flag=5) function5(); /*统计报表*/ goto loop2; if(flag=6) function6(); goto loop2; 五、程序的具体实现情况1、开始界面2、选择输入“1”并按要求输入数据3、不继续输入,返回主界面,输入“2 ”4、输入“3”,按销售员销量排序5、输入“4”,按产品销量排序6、输入“5”,输出统计报表7、输入“6”,清

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论