《商品销售系统实验报告C语言程序设计课程实训报告.doc》由会员分享,可在线阅读,更多相关《商品销售系统实验报告C语言程序设计课程实训报告.doc(18页珍藏版)》请在三一办公上搜索。
1、HUBEI UNIVERSITY OF AUTOMOTIVE TECHNOLOGYC语言程序设计课程实训报告课设题目: 商品销售管理系统 专 业: 计算机科学与技术 班 级: K1373-4 姓 名: 高原 成 绩: 完成日期: 2014年1月16日2014年1月17日 指导教师: 张吴波 目 录1.课程实训目的22.需求分析22.1要求22.2任务描述22.3运行环境32.4开发工具33.总体设计33.1系统流设计33.2系统模块设计44.详细设计54.1数据结构设计54.2模块接口设计64.3 以下是几个主要模块的流程图:75.运行结果105.1主菜单界面:105.2导入商品信息界面:10
2、5.3输入销售记录界面:115.4 查询销售历史界面:115.5显示顾客信息界面:125.6保存信息界面:5.7显示商品信息界面:6.程序调试与测试126.1程序调试与分析126.2程序测试结果127.问题与不足128.建议129.编程体会1210.程序源代码:1211.参考文献1312.用户使用手册131.课程实训目的1) 通过课程实训,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。2) 通过课程实训,进一步掌握C语言中重要的数据结构。掌握并熟练运用指针、链表、结构体、文件等数据结构。3) 通过课程实训,提高程序开发能力,能运用合理的控制流编写清晰高效的程序。
3、4) 通过课程实训,培养C语言知识运用和自学能力,真正的把课堂上获得的知识运用起来,培养自己对程序编写的兴趣,并能独立设计和实现一个小型系统。5) 通过课程实训,加强了自己的程序分析能力。2.需求分析2.1要求1) 遵循软件开发过程的基本规范;能灵活应用,初步具备运用C程序解决实际问题的能力。2) 运用结构化程序设计方法,按照课程实训题目要求,完成包括需求分析、数据结构设计、概要设计、详细设计、编写代码、调试和测试C程序等过程。3) 学会利用数组、结构体、链表进行相关信息表示。4) 功能模块划分清晰,系统结构图符合功能操作要求,且有详尽的功能描述5) 各主要功能模块有详尽的流程图及描述,用函数
4、的形式实现,且调用入口、功能、出口等关系正确。6) 所设计的C程序较好的可读性和可靠性;程序书写风格规范,注释清晰。7) 界面友好(良好的人机互交),凡需要输入信息时,都有较详尽的提示信息,并对输入信息有较完善的值域分析。8) 程序经上机调试通过,不应出现语法型、功能型错误,并获得满意的结果。9) 学会通过各功能性测试用例测试程序的能力,尽可能避免原则性错误的出现。10) 掌握编写、调试和测试C语言程序的基本技巧,充分理解结构化程序设计的基本方法。11) C语言课程实训报告的内容反应实际设计过程,且符合格式要求,无抄袭现象。2.2任务描述已知一公司有10种产品(产品编号,产品名称,产品价格),
5、设计一程序,完成以下功能:1)能从文件导入销售信息2)从键盘输入销售信息3)能根据产品编号查询产品的销售历史4)输入开始时间、截止时间,计算商品的销售总额和销售历史5)能根据销售时间、产品编号、顾客姓名删除销售记录6)能根据销售时间、顾客姓名修改购买的产品编号、购买数量7)能将销售历史导出到指定文件根据需求,该系统所应包含的信息有以下一些:商品销售的基本信息:顾客姓名、产品编号、产品类型、销售数量、销售日期、库存数量、销售总额;根据需求,该系统所应实现的功能有以下一些:1. 各种基本数据的录入。如:产品销售的基本信息的录入。2. 基于各种基本数据的查询。即允许对已经录入的数据进行查询。例如根据
6、产品编号查询产品的销售历史;根据顾客姓名,查询购买历史。3. 各种基本数据的计算。计算时间段内各个产品的销售总额。4. 数据的显示:显示所有顾客的姓名。5. 数据导出:将销售信息导出到指定文件。6. 数据导入:从指定文件导入销售信息。2.3运行环境1) WindowsXP/7系统2) VC+6.0编译环境2.4开发工具C语言3.总体设计3.1系统流设计主菜单界面输入销售记录推出系统显示商品信息保存信息显示顾客信息查询销售历史导入商品信息输入记录的个数输入顾客姓名,商品编号,商品销售数量,销售日期按产品编号查询按顾客姓名查询按时间段查询保存顾客信息保存销售信息输入产品编号输入顾客姓名输入起始时间
7、输入结束时间图1系统功能模块图3.2系统模块设计主界面模块:完成系统菜单的显示;功能选择模块:根据用户的选择,完成其相应的功能;商品信息导入:将文件中的商品信息导入系统;商品信息显示:将文件中的商品信息是显示出来;商品销售信息录入:完成用户从界面输入信息,保存入系统的功能;查询销售产品历史:根据产品的编号,顾客的姓名,查询该产品的销售记录;时间段内产品的销售总额:查询任意时间段内的各个产品的销售总额;查询顾客的购买历史:查询其购买历史;显示顾客的姓名:显示顾客的姓名;保存顾客信息:保存顾客信息至文件;保存销售信息:保存销售信息至文件;4.详细设计4.1数据结构设计根据系统要求,系统中需要保存的
8、数据信息,其结构如下:数据项名称数据项系统表示数据类型数据长度备注顾客代码gkdm整型顾客姓名gkname20字符串20商品编号pdm整型销售数量snum整型销售日期data10字符串10商品名称pname20字符串20商品售价price小数商品产地pfrom30字符串30商品库存pkc整型总额sze小数根据系统要求,系统中需要保存的类别信息,其结构如下:类别代号类别名称为了能实现不受限制的增加销售信息,采用链表的结构保存销售信息,在增加销售的基本信息时,创建一个销售信息的节点,将其插入到链表中,示意图如下。新增销售信息3销售信息2销售信息1使用C语言创建的结构体如下:struct sell
9、/定义销售数据结构int gkdm; /顾客代码char gkname20; /顾客姓名int pdm; /商品编号int snum; /销售数量char date10; /日期float sze; /总额 s10;4.2模块接口设计1) 所有函数模块声明如下:void show(); /显示商品信息 void Menu(); /显示菜单void Read(); /导入商品信息void Srxs(); /输入销售记录void Search(); /查询历史void Search_pdm(); /按编号查询销售历史void Search_gkname(); /按顾客姓名查询购买历史void Se
10、arch_date(); /计算时间段内销售总额void Printf_gkname(); /显示顾客信息void Save(); /保存信息void Save_product(); /保存销售信息void Save_gkname(); /保存顾客信息void Exit(); /退出程序2) 并定义两个全局变量:struct sell ;struct date ;3) 主要模块的实现系统以主函数int main()为入口,调用void Menu()函数,显示主菜单。系统接收用户输入的选择,调用相应的函数,进入到下一级菜单进行相关工作。4.3 以下是几个主要模块的流程图:1) 主菜单函数:否打印
11、主菜单接收用户选项是否合法调用对应选项函数进入下一级菜单退出系统是否是是否为0图2 主函数流程图2) 查询销售历史函数:图3 查询销售历史流程图需要修改的学生学号是否存在修改界面是选择修改内容实现修改回主菜单查询查询销售历史菜单接收用户选项是否合法是否为1否是是否是否为2按顾客姓名查询按时间段查询是否按产品编号查询5.运行结果5.1主菜单界面:图5主菜单界面输入功能选择,系统自动进入相应功能界面。5.2导入商品信息界面:图6 导入商品信息界面5.3输入销售记录界面: 图7 输入销售记录个数 图8 输入销售记录5.4查询销售历史界面: 5.5显示顾客信息界面:5.6保存信息界面:5.7显示商品信
12、息界面:6.程序调试与测试6.1程序调试与分析(1) 各模块分别调试过程、出现的错误原因,纠正错误的方法及结果。(2) 集成调试过程、出现的错误原因,纠正错误的方法及结果。(3) 功能调试过程、出现的错误原因,纠正错误的方法及结果。6.2程序测试及结果(1) 各模块测试用例数据的确定(2) 测试结果(3) 测试中出现的问题的原因和分析7.问题与不足(1) 需求分析中存在的问题和分析(2) 概要设计中存在的问题和分析(3) 详细设计中存在的问题和分析(4) 代码编制中存在的问题和分析(5) 调试和测试中存在的问题和分析8.建议请填上具体内容,主要是对课设内容、时间安排、辅导中存在的问题进行建议有
13、何良好的建议?9.编程体会请填上具体内容,主要针对课设中自己实际进行课设准备以来,有哪些实质性的收获和体会,严禁空洞、空话连篇。10.程序源代码:填上完整的、已调试通过的源程序,并加上必要的注释。程序应符合可读性原则。11.参考文献1 廖湖声C程序设计案例教程人民邮电出版社,2010.92 何钦铭C语言程序设计高等教育出版社,2009.53 谭浩强C程序设计(第2、3、4版)清华大学出版社,2000.1.4 C语言程序设计教程,杨路明著,北京邮电大学出版社.12.用户使用手册(1) 填入你设计的系统的功能及性能介绍。(2) 用户使用你设计的系统时,应些注意什么,如何操作。 姓名:X X X 日期:2013年1月11日