1、高级语言程序设计课程设计说明书高级语言程序设计课程设计说明书 设计题目:销售管理系统设计 1、题目与要求、题目与要求: 1.11.1 某公司有四个销售员(编号:1-4) ,负责销售五种产品(编号:1-5) 。 每个销售员都将当日出售的每种产品各写一张便条交上来。 每张便条内容有 销售员的代号 产品的代号 这种产品当天的销售额 1.21.2 每位销售员每天可能上缴 0-5 张便条。 假设手机到了上个月的所有便条, 编写一个处理系统,读取上月的销售情况(自己设定) ,进行如下处理: 计算上个月没人每种产品的销售额 按销售额对销售员进行排序,输出排序结果(销售员代号) 统计每种产品的总销售额,对这些
2、产品从高到低的顺序输出结果(须输 出产品的代号和销售额) 输出统计报表 2、需求分析、需求分析 本程序将用到文件系统,list.txt文件内容作为数据源,其中单行内容代表一 张纸条。 程序运行后首先将文件系统的原始数据读取并保存到程序的结构体数组 当中,所以应提供文件输入的操作;由于纸条数据零散,所以要对原始数据进行 分类操作并提供一个数组用于保存分类信息;在程序中要进行统计工作,所以要 提供显示、排序等操作;另外应提供键盘式选择菜单实现功能选择。 3、功能实现设计、功能实现设计 3.1 总体设计总体设计 根据上面的分析,可以将这个系统分为如下五大模块:查看每人每种产品 的销售额 、按销售额对
3、销售员排序、对每种产品总销售额从高到低排序、输 出统计报表和退出。其中主要模块是前四个模块。 3.1 流程图流程图 4.4.源程序源程序 #include #include #include #include #define M 155 void detail(); void foreach(); void menu(); void product(); void readdata(); void seller(); void total(); void choice(); struct ss int sid; /销售员代号 int pid; /产品代号 int sn; /销售额 ssM; i
4、nt n; /纸条数目 int s45=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; /用于保存员工和产品信息 void main() /入口函数,即主函数 readdata(); /读取文件数据 foreach(); /根据文件初始数据初始化便于操作的数组 menu(); /显示主菜单 void readdata() /从文件读取数据 FILE *fp; if(fp=fopen(“list.txt“,“r“)=NULL) printf(“Cant open the file!n“); exit(0); else for(n=0;!feof(fp);n+)
5、fscanf(fp,“%d %d %dn“, /保存文件数据到结构体 fclose(fp); void foreach() /从纸条读取数据并分类整理 int i; for(i=0;i退出系统 bb“); scanf(“%d“, if(c=1) menu(); else exit(0); puts(n); 5.5.运行结果运行结果 显示主菜单:显示主菜单: 查看每人每种产品的销售额运行结果:查看每人每种产品的销售额运行结果: 按销售额对销售员排序运行结果:按销售额对销售员排序运行结果: 对每种产品销售额从高到低排序运行结果:对每种产品销售额从高到低排序运行结果: 统计报表运行结果:统计报表运行
6、结果: 6、总结、总结 通过这次通过这次 C程序设计,我掌握了模块化设计方法,能够深入的理解结构化程序设计,我掌握了模块化设计方法,能够深入的理解结构化 程序设计思想,熟练运用结构化程序设计方法,提高了运用程序设计思想,熟练运用结构化程序设计方法,提高了运用 C语言进行程序设语言进行程序设 计的能力。此外我还熟悉了,对于文件读写的操作。更重要的是对程序的调试计的能力。此外我还熟悉了,对于文件读写的操作。更重要的是对程序的调试 有了显著的提高。我发现我对程序的设计越来越感兴趣了,我决定今后在这一有了显著的提高。我发现我对程序的设计越来越感兴趣了,我决定今后在这一 方面下一番功夫,取得一些成绩。方面下一番功夫,取得一些成绩。