c语言销售管理系统

上传人:s****a 文档编号:120207396 上传时间:2022-07-17 格式:DOCX 页数:16 大小:44.94KB
收藏 版权申诉 举报 下载
c语言销售管理系统_第1页
第1页 / 共16页
c语言销售管理系统_第2页
第2页 / 共16页
c语言销售管理系统_第3页
第3页 / 共16页
资源描述:

《c语言销售管理系统》由会员分享,可在线阅读,更多相关《c语言销售管理系统(16页珍藏版)》请在装配图网上搜索。

1、课程设计课程名称C语言程序课程设计题目名称销售管理系统学生学院 自动化专业班级自动化10 (3) 学号3110000934学生姓名 宋振中指导教师李忠娟2010年12月30日广东工业大学课程设计任务书题目名称销售统计系统学生学院 自动化专业班级 自动化10(3)学 号 3110000934学生姓名 宋振中一、课程设计的内容二、课程设计的要求与数据1. 进一步掌握和利用c语言进行课程设计的能力2 .进一步理解和运用结构化程序设计的思想和方法3 .初步掌握开发一个小型实用系统的基本方法4 .学会调试一个较长程序的基本方法5 .学会利用流程图和N-S图表示算法6 .掌握书写程序设计开发文当的能力三、

2、课程设计应完成的工作1、编写完成相应题目的程序2、编写课程设计报告,课程设计报告应该包含以下6部分1) 需求分析:包括设计题目、设计要求以及系统功能需求分析2) 总体设计:包括系统总体设计框架和系统功能模块图3) 详细设计:包括主要功能模块的算法设计思路以及对应的工作流程图4) 调试分析过程描述:包括测试数据、测试输出结果以及对程序测试过程 中存在问题进行思考(主要问题的出错现象、出错原因、解决方法及其 效果等,相应效果截图)5) 总结:课程设计完成了哪些主要功能,是否有扩展功能?还有哪些地方 需要改进?课程设计的学习与体会?有哪些合理化建议?6)附录:主要原程序代码含必要的注释3、答辩:在实

3、验室建立程序运行环境,并在指导教师的监督下,独立 解决问题,运行程序和回答教师的提问。四、课程设计进程安排序号设计各阶段内容地点起止日期1下达任务书,说明设计要求,收集资料实验3#6076.12总体方案设计、详细设计实验3#6076.23编写程序调试分析实验3#6076.34撰写报告并上交,答辩实验3#6076.5五、应收集的资料及其主要参考文献1谭浩强.C程序设计(第三版)M北京:清华大学出版社,2005年9月2谭浩强.C程序设计题解与上机指导(第三版)M北京:清华大学出版社,2005 年7月发出任务日期:2009年4月20日指导教师签名:计划完成日期:2009年6月5日基层教学单位责任人签

4、名:主管院长签章1 .设计目的与要求页码2 .总体设计页码3 .详细设计页码3.1功能模块设计页码3.2数据结构设计页码4 .调试分析页码5 .总结页码6 .附录(程序)页码7 .答辩记录(正文处留出适当空白)页码8 .指导教师意见(正文处留出适当空白)页码1.目的与要求销售管理系统:某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销 售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容:1)销售员的代号2)产品的代号3)这种产品的当天的销售额每位销售员每天可能上缴0-5张便条。假设,收集到了上个月的所有便条,编写 一个处理系统,读取上个月的销售情况(自己设

5、定),进行如下处理。1)计算上个月每个人每种产品的销售额。对这些产品按从高到底的顺序,输出排序结果(需2)按销售额对销售员进行排序,输出排序结果(销售员代号)3)统计每种产品的总销售额输出产品的代号和销售额)4)输出统计报表销售统计报表销售之和产品代号销售员代号123423每种产品之和 总和先对每人每种产品的销量进行定义屏幕显示输入数据提示从键盘读取数据对数据进行判断后将销售值赋值到对应位置判断是否结束输入结束收入后对数据进行初处理对销售员的按销售量排序对产品按销售量排序输出统计表结束程序3 .详细设计1. 设计主程序,确定整个程序的运行流程2. 设计循环函数,使屏幕再每次读取数据后都能再次显

6、示提示以便于文件的使 用和操作3. 编写读取数据的函数,首先判断是否结束输入(即跳出循环),否则将数据 录入计算机4. 编写定位赋值函数,将从键盘读取的数据判断位置,并存入相应的位置5. 编写跳出函数,使程序执行结束循环后的命令6. 对数据进行初处理,按照题目要求对个人销量和产品销量分别求和为接下来 的排序做好基础7. 编写排序程序,对取得的数据按要求进行降序排序8. 设计输出第一次编写使用了 if-else语句,虽然也能达到要求但是语句冗长。后经老师 指点改为switch-case语句,节省了语句数量使得程序更加易读、明了,也减轻 了调试的工作量。后又将一个函数写出改为主程序负责控制流程,每

7、步骤由分别的小程序控制, 既使得程序流程更加明了也使得调试程序时的警告与错误更容易检查、修改,提 高了主程序的可靠性。可以使用分别调用、注释一段或多段程序的方式进行调试, 使得调试工作难度下降。调试中出现的问题有:(因编写不熟练,很多简单的错误就不再赘述)1. 第一次编写时循环只做了数据读取部分,不能每次录入数据后显示提示,给使用者带来了一定的不变。改为将提示循环后却发现无法跳出循 环。请教老师后使用了 goto语句,解决了该问题(在加入判断后跟上 goto,跳出循环)。2. 第一次编写判断语句时,直接从键盘读取3个数据后才进行判断,对结束判断时也需要输入3次数据,造成了一定的麻烦。于是改为先

8、对第一 个数据进行判断,不需要跳出的话再对后面两个数据进行读取。顺利的 解决了该问题。3 .数据时既要输出排名的编号,又要输出销量。所以定义了一些临时变量,将编号进行赋值,实现了编号的排序输出。5 .总结在完成该任务的过程中,对代码进行了多次大的改动,对语句和结构都进行 了优化。使得程序的可读性和可调试性大大增加。在调试过程中也出现了很多小的错误和警告,说明对c语言语句的账务不够 熟练,语句的选择也不是十分的合适。因此,加强平时的练习,使能够熟练使用 各种命令并减少错误。整个过程中暴露出了许多不足,使我清醒的认识到还有很大的差距。在与老 师交流、解决问题的过程中也学到了很多知识,并在编写过程中

9、不断摸索,详细 的了解了各个命令的含义,使自己得到了很大的提升。文件代码:/* Note:Your choice is C IDE */#include stdio.hint man=0,pro=0,sale=0,/对员工、产品、销售额的声明m1=0,m2=0,m3=0,m4=0, /4个销售员的销售额总和 p1=0,p2=0,p3=0,p4=0,p5=0,/5 种产品的销售总和m11=0,m12=0,m13=0,m14=0, p11=0,p12=0,p13=0,p14=0,p15=0, /为输出代号的中间变量 sum=0, /销售总和/ man=1,pro=1,sale=0,q11=0,q1

10、2=0,q13=0,q14=0,q15=0, /对销售额按销售表坐标声明q21=0,q22=0,q23=0,q24=0,q25=0,q31=0,q32=0,q33=0,q34=0,q35=0,q41=0,q42=0,q43=0,q44=0,q45=0;void control(void);/声明菜单函数/void myexit(void);/声明退出输入 进入数据处理函数void endow(void); /声明定位赋值函数void arrange(void);/声明结果预处理函数void arraym(void);/声明销售员排序函数void arrayp(void);/声明产品排序函数vo

11、id form(void);/声明输出报表函数 void main()/while (1)control。;/这里调用 control()函数/endow();/调用定位赋值函数/myexit();arrange();arraym();arrayp();form();/业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业业/*/这里对主函数调用的函数进行 定义void control(void)while(1) printf(请输入销售员代号、产品代号、销售额,输入0结束输入n);scanf(%d, &man);if (man=0)/先判断一下 如果

12、是0就去数据处理 否则继续输入 break;/myexit();scanf(%d %d, &pro, &sale);endow();/定位赋值/void myexit(void)/void endow(void)switch (man) case 1:switch (pro)case 1: q11=q11+sale; break;case 2: q12二q12+sale; break;case 3: q13=q13+sale; break;case 4: q14二q14+sale; break;case 5: q15二q15+sale; break;case 2:switch (pro)cas

13、e 1: q21=q21+sale; break;case 2: q22=q22+sale; break;case 3: q23=q23+sale; break;case 4: q24=q24+sale; break;case 5: q25=q25+sale; break;case 3:switch (pro)case 1: q31=q31+sale; break:case 2: q32二q32+saIe; break:case 3: q33=q33+saIe: break:case 4: q34二q34+saIe; break:case 5: q35二q35+saIe; break; cas

14、e 4:switch (pro)case 1: q41二q41+saIe; break;case 2: q42二q42+sale; break;case 3: q43二q43+saIe; break:case 4: q44二q44+saIe; break:case 5: q45二q45+saIe; break:1 /switch end1void arrange(void)(ml=q11+q12+q13+q14+q15;m2二q21+q22+q23+q24+q25;m3=q31+q32+q33+q34+q35;m4=q41+q42+q43+q44+q45;p1=q11+q21+q31+q41;

15、p2=q12+q22+q32+q42;p3二q13+q23+q33+q43;p4二q14+q24+q34+q44;p5=q15+q25+q35+q45;sum二ml+m2+m3+m4+p1+p2+p3+p4+p5;void arraym(void)(i nt i=0;i nt temp=0;/定义临时变量tempfor (i=0; i4; i+) (i f (ml m2) ( temp=m1;ml fi2 ; /两数交换位置m2二temp:i f (m2m3) (temp=m2;/两数交换位置m2二m3;m3二temp;if (m3m4)temp=m3;/两数交换位置m3二m4;m4二temp

16、;mil=m1;m12=m2;m13=m3;m14=m4;m1=1;m2=2;m3=3;m4=4;printf(销售员排序为:n);printf(%d,%d,%d,%dn ”,m1,m2,m3,m4); /打印排好的结果 void arrayp(void)int i=0;int temp=0;/定义临时变量tempfor(i=0;i5;i+)/5个数排序一般不超过5个循环 if(p1p2) temp二p1;p1=p2;/两数交换位置p2二temp;if(p2p3)temp=p2;/两数交换位置p2=p3;p3二temp;if (p3p4)temp=p3;/两数交换位置p3=p4;p4二temp

17、;if(p4p5)temp=p4;/两数交换位置p4=p5;p5二temp;p11二p1;p12二p2;p13二p3;p14二p4;p15二p5;p1=1;p2=2;p3=3;p4=4;p5;printf(5种产品的销量排序为:n);printf(%d,%d,%d,%d,%d ,p1,p2,p3,p4,p5); /打印排好的结果 printf(销售量为:n);printf(%d,%d,%d,%d,%dn,p11,p12,p13,p14,p15);void form(void)printf(产品代号printf(销售员代号123printf(1%d %d %d%d%d11);printf( n)

18、;printf(2%d %d %d%d%d12);printf( n);printf(3%d %d %d%d%d13);printf( n);printf(4%d %d %d%d%d14);printf( n);printf(销售和%d %d %d %d%dprintf(销售统计表n);printf( n);销售之和n);45n);%dn,q11,q12,q13,q14,q15,m%dn,q21,q22,q23,q24,q25,m%dn,q31,q32,q33,q34,q35,m%dn,q41,q42,q43,q44,q45,m%dn,p11,p12,p13,p14,p15,sum);序号问题回答9、指导教师意见

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!