服装网店信息管理系统.doc

上传人:帮**** 文档编号:3524678 上传时间:2020-09-12 格式:DOC 页数:109 大小:877KB
返回 下载 相关 举报
服装网店信息管理系统.doc_第1页
第1页 / 共109页
服装网店信息管理系统.doc_第2页
第2页 / 共109页
点击查看更多>>
资源描述

《服装网店信息管理系统.doc》由会员分享,可在线阅读,更多相关《服装网店信息管理系统.doc(109页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、华中科技大学计算机科学与技术学院C语言程序设计课程设计实验报告题目: 服装网店信息管理系统 专业: 计算机科学与技术 班级: 学号: 姓名: 成绩: 完成日期: 2019年 03月 26日一、 系统功能模块结构服装网店信息管理系统由五大功能模块组成:文件模块,数据维护,数据查询,数据统计,帮助系统。其中,数据维护模块包括对服装分类信息,服装基本信息,服装销售信息的录入、修改和删除;数据查询模块包括对分类代码的查询,对服装基本信息的查询(包括按名称查找和按分类码加价格查找),对服装销售信息的查询(包括按客户名称加销售日期和按服装名称加评价指数查找);数据统计模块包括对服装具体销售类别的统计,年销

2、售信息的统计,按客户名称统计,按季度统计和按式样统计。具体如下图所示:服装网店信息管理系统文件系统数据维护数据查询数据统计数据保存数据备份数据恢复数据录入数据修改数据删除分类编码查询服装基本信息查询服装销售信息查询服装具体销售情况年销售统计式样销售情况统计退出系统季度统计按客户名称统计帮助系统帮助系统关于主题图1. 系统功能模块示意图下图为具体功能模块:数据维护数据录入数据修改数据删除分类代码的录入服装基本信息的录入服装销售信息的录入分类代码的修改服装基本信息的修改服装销售信息的修改分类代码的删除服装基本信息的删除服装销售信息的删除图2. 数据维护模块功能示意图数据查询分类编码查询服装基本信息

3、查询服装销售信息查询按服饰名称中字符子串来查找以分类码和单价为条件查找以客户名称和销售日期为条件查找以服饰名称和客户评价为条件查找图3. 数据查询模块功能示意图文件系统主模块包括三个子模块:数据保存、数据备份、数据恢复、退出系统;数据维护主模块包括三个子模块:数据录入、数据修改、数据删除;数据查询主模块包括三个子模块:服装分类信息查询、服装基本信息查询、服装销售信息查询;数据统计主模块包括五个子模块:服装具体销售情况、年销售统计、按客户名称统计、季度统计、式样销售情况统计;帮助系统主模块有三个子模块:帮助系统、关于。二、 数据结构设计及用法说明服装网店信息管理系统对淘宝网上某服装店的销售信息进

4、行管理,主要包括服装分类信息,服装基本信息,服装销售基本信息等三类信息。服装分类信息参考:中文字段名类型及长度举例分类编码char15分类名称char105个分类名称:外套、内搭、下装、套装和特色服装服装基本信息参考:中文字段名类型及长度举例分类码char1 /表示外套类服装服饰名称char30“马克华菲羽绒服”式样char0、1、9分别表示男式、女式和中性单价float128.00 /单位:元售出件数int根据销售情况计算件数,不用输入。评价指数float根据用户评价计算平均指数,不用输入。服装销售基本信息:中文字段名类型及长度举例服饰名称char30“长袖针织衫套头线衣”销售日期char1

5、0“20090222” 年(4)+月(2)+日(2)客户名称char20“张三”客户评价int15:很差、差、一般、好、很好服装网店信息管理系统数据结构用法:该系统的数据结构是采用十字交叉链表。十字交叉链表的模型如下:链表说明:以后进先出的方式创建十字交叉链表,查找功能遍历链表找到相应的节点,插入功能和删除功能分别在指定地方增加或删除节点,修改功能修改相应的节点,统计功能为遍历链表进行排序和输出三、程序结构(流程图)1、插入结点信息流程图(插入服装分类信息与服装基本信息与此大致相同)开始 TYPE_NODE *p = gp_head, *pd; CLO_NODE *pp, *fp;SELL_N

6、ODE *pm;int n; char s100;n = 1?插入服装分类信息Yn = 2?N插入服装基本 信息n = 3?Y输出“输入有误”NN输入服装名称查找到对应信息?提示“未找到信息”N输入对应信息Ypm-next=fp-cnext; fp-cnext = pm;结束2、修改/删除结点信息流程图(插入服装分类信息与服装基本信息与此大致相同)开始TYPE_NODE *pt;CLO_NODE *pc;SELL_NODE *ps;char s30; int n;n = 1?修改对应的服装分类信息Yn = 2?N修改对应服装基本信息Y输入要修改的服装名称N查找到对应信息?提示信息错误Y输入要修

7、改信息的客户名称N查找到对应信息?提示信息错误N结束修改信息Yn = 3?提示信息错误NY3、数据统计流程图开始TYPE_NODE *pt; CLO_NODE *pc;SELL_NODE *ps;pt!=NULL/pt = head;结束统计Npc = pt-snext;Ypc!=NULL?结束统计Nps = pc-cnext;ps!=NULL?结束统计N遍历链表,对指定数据进行统计Y排序并输出结束四、各模块的功能1LoadDate:将代码表和三类基础数据从数据文件载入到内存缓冲区和十字链表中。2CreatList:从数据文件读取基础数据, 并存放到所创建的十字链表中。3SaveSysDate

8、:保存系统代码表和三类基础数据。4ExitSys:退出系统。5Insert:实现数据的录入,可以进行选择:1、对服装分类信息的录入;2、对服装基本信息的录入;3、对服装销售信息的录入。6Modify_info:实现数据的修改,可以进行选择:1、对服装分类信息的修改;2、对服装基本信息的修改;3、对服装销售信息的修改。7Dele_info:实现数据的删除,可以进行选择:1、对服装分类信息的删除;2、对服装基本信息的删除;3、对服装销售信息的删除。8Seek:实现数据的查找。输入要查找的信息,遍历链表进行查找。可以进行选择:1、输入分类编码对服装分类信息进行查找;2、输入服饰名称对服装基本信息进行

9、查找;3、输入顾客名称对服装销售信息进行查找。9Seek_Clo_Name:输入服装名称包含的子串对相应的服装信息进行查找并输出。10Seek_IDPrice:输入服装分类代码和相应的价格对相应的服装信息进行查找并输出。11Seek_Sell_Name:输入服装销售顾客姓名和销售日期对相应的服装销售信息进行查找并输出。12Seek_Sell_NamePj:输入服饰名称和相应的评价指数对相应的服装销售信息进行查找并输出。13State_Type:分别统计各类服装销售总件数、销售总额、客户评价3的件数及客户评价3的件数,按销售总额降序排序输出。14State_Year:以所输入的年份为条件,按服饰

10、名称统计该年度内所售各款服装的售出件数。销售金额、评价指数,按售出件数降序排序输出。15State_Kehu:按客户名称统计各客户所购服装件数、消费总金额、对所购服装的总体评价度并输出。16State_Spring,State_Summer,State_Autumn,State_Winter:分别统计春夏秋冬四个季度售出的各类服装的总件数和总金额并输出。17State_Shiyang:根据式样(男式,女式,中性)统计服装的销售量和销售额并输出。18HelpTopic:系统帮助。19AboutDorm:关于主题。五、试验结果(包括输入数据和输出结果)输入数据:(1)服装分类信息:分类编码1234

11、分类名称外套内搭下装套装(2)服装基本信息分类码1112233344服饰名称马克华菲羽绒服雪中飞羽绒服李宁运动外衣恒源祥羊毛衫耐克毛衣李宁运动短裤森马短裤英雄牛仔裤米老鼠套装情侣套装式样0190919011单价12315616698886377111222333(3)服装销售信息服饰名称马克华菲羽绒服马克华菲羽绒服雪中飞羽绒服李宁运动外衣恒源祥羊毛衫李宁运动短裤森马短裤米老鼠套装情侣套装销售日期200909092010101020121212201105052011030320121111200907072011080820111111客户名称张三李四赵四王二朱六李四张三十六周七评价指数425

12、2135441初始化界面2系统主界面3服装销售信息插入界面成功提示:4服装基本信息修改界面、5根据服装名称查询服装基本信息6按分类码和价格查找服装基本信息7按客户姓名和销售日期查询服装销售信息8按服饰名称和客户评价查找服装销售信息9服装具体销售情况统计(按销售总额降序排序)10年销售统计11按客户名称统计12按季度统计13式样销售情况14销售信息删除结点15帮助系统16关于主题六、体会课程设计的结束也标志这C语言的学习告一段落,本次课程设计我感觉最大的收获就是对C语言有了更深刻的体会,也从中学习了好多有关C语言的知识。当然中途也遇到了好多瓶颈,最开始做这份课程设计时,不知道应该从何下手,从哪里

13、做起,于是就一点点的照着书看,一点点想,一个函数一个函授慢慢地写慢慢地调试。因为老师给了一些关于界面的代码,所以在文本界面这方面就方便了许多(本次课程设计是学习C语言过程中第一次接触文本界面,简单易操作,界面通俗易懂,着实方便!)但是因为掌握的还是不够熟练,界面可能还是会略显粗糙,代码不够完善,界面有些地方可能设计的不够合理,有些瑕疵。本次课程设计过程中也曾遇到了好多问题,当时手里也没有参考资料,于是就自己一点一点慢慢调试,耐心和同学们讨论,每当解决一个问题内心就会兴奋不已,感觉离胜利又近了一步。当程序运行不下去时,我内心也会非常的沮丧,但最后还是硬着头皮挺了过来,当最后所有的功能都基本实现,

14、程序正常运行时,内心简直有种前所未有的成就感!这次课程设计对我来说是一个不小的挑战,收获也是非常多的。有句话说得好:只要功夫深,铁杵磨成针!每当遇到问题想要放弃时,一定要坚持下来,耐心的一点点去解决,运用自己灵活的智慧最后还要感谢李老师的耐心教导和帮助以及在课设过程中给予我帮助的同学们。七、参考文献C语言实验与课程设计 李开,卢萍,曹计昌编著 科学出版社C语言程序设计曹计昌,卢萍,李开编著. 科学出版社附录:源程序清单qjy.h#include #include #include #include #include #include #include #include #include #in

15、clude #include #ifndef TYPE_H_INCLUDED#define TYPE_H_INCLUDED#define SCR_ROW 25 /*屏幕行数*/#define SCR_COL 80 /*屏幕列数*/* *服装销售信息链结点结构 */typedef struct sell_node char clo_id12; /* 分类编码*/ char name30; /* 服饰名称*/ char date12; /* 销售日期*/ char kehu10; /* 客户名称*/ int pj; /* 客户评价*/ struct sell_node *next; /* 指向下一

16、结点的指针*/ SELL_NODE;/* *服装基本信息链结点结构 */typedef struct clo_node char clo_id12; /* 分类编码*/ char name30; /* 服装名称*/ char shiyang; /* 式样*/ float danjia; /* 单价*/ int num; /* 售出件数*/ float pj; /*评价指数*/ struct sell_node *cnext; /* 指向缴费信息支链的指针*/ struct clo_node *next; /* 指向下一结点的指针*/ CLO_NODE;/* *服装基本信息链结点结构 */typ

17、edef struct type_node char clo_id12; /* 分类编码*/ char name30; /* 服装名称*/ struct clo_node *snext; /* 指向缴费信息支链的指针*/ struct type_node *next; /* 指向下一结点的指针*/ TYPE_NODE;/* *屏幕窗口信息链结点结点结构 */typedef struct layer_node char LayerNo; /* 弹出窗口层数*/ SMALL_RECT rcArea; /* 弹出窗口区域坐标*/ CHAR_INFO *pContent; /* 弹出窗口区域字符单元原

18、信息存储缓冲区*/ char *pScrAtt; /* 弹出窗口区域字符单元原属性值存储缓冲区*/ struct layer_node *next; /* 指向下一结点的指针*/ LAYER_NODE;/* *标签束结构 */typedef struct labe1_bundle char *ppLabel; /* 标签字符串数组首地址*/ COORD *pLoc; /* 标签定位数组首地址*/ int num; /* 标签个数*/ LABEL_BUNDLE;/* *热区结构 */typedef struct hot_area SMALL_RECT *pArea; /* 热区定位数组首地址*/

19、 char *pSort; /* 热区类别(按键、文本框、选项框)数组首地址*/ char *pTag; /* 热区序号数组首地址*/ int num; /* 热区个数*/ HOT_AREA;unsigned long num_written; /* Win 7 中使用, 该变量用于某几个控制台输出函数 */LAYER_NODE *gp_top_layer = NULL; /*弹出窗口信息链链头*/TYPE_NODE *gp_head = NULL; /*主链头指针*/TYPE_NODE *findt, *pt; /*定义的外部变量,用于修改、删除、查询等等*/CLO_NODE *findc,

20、 *pc;SELL_NODE *finds, *ps;char *gp_sys_name = 服装网店信息管理系统; /*系统名称*/char *gp_clo_info_filename = clo.dat; /*服装基本信息数据文件*/char *gp_sell_info_filename = sell.dat; /*服装销售信息数据文件*/char *gp_type_info_filename = type.dat; /*服装分类信息数据文件*/char *gp_shiyang_code_filename = shiyang.dat; /*式样代码数据文件*/char *gp_clo_ty

21、pe_code_filename = clo_type.dat; /*服装类别代码数据文件*/char *ga_main_menu = 文件(F), /*系统主菜单名*/ 数据维护(M), 数据查询(Q), 数据统计(S), 帮助(H) ;char *ga_sub_menu = /*系统子菜单名*/ S 数据保存, B 数据备份, R 数据恢复, X 退出 Alt+X, /*空串用来在弹出菜单中分隔子菜单项,下同*/ D 服装分类信息, P 服装基本信息, C 服装销售基本信息, D 服装分类信息, P 服装基本信息, C 服装销售基本信息, I 服装具体销售情况, T 年销售统计, C 按客

22、户名称统计, U 季度统计, V 式样销售情况, T 帮助主题, , A 关于. ;int ga_sub_menu_count = 4, 3, 3, 5, 3; /*各主菜单项下子菜单的个数*/int gi_sel_menu = 1; /*被选中的主菜单项号,初始为1*/int gi_sel_sub_menu = 0; /*被选中的子菜单项号,初始为0,表示未选中*/CHAR_INFO *gp_buff_menubar_info = NULL; /*存放菜单条屏幕区字符信息的缓冲区*/CHAR_INFO *gp_buff_stateBar_info = NULL; /*存放状态条屏幕区字符信息

23、的缓冲区*/char *gp_scr_att = NULL; /*存放屏幕上字符单元属性值的缓冲区*/char *gp_shiyang_code = NULL; /*存放式样代码表的数据缓冲区*/char *gp_clo_type_code = NULL; /*存放服装类别代码表的数据缓冲区*/char *gp_type_code = NULL; /*存放服装分类代码表的数据缓冲区*/char *gp_clo_code = NULL; /*存放服装基本信息代码表的数据缓冲区*/char *gp_sell_code = NULL; /*存放服装销售信息代码表的数据缓冲区*/char gc_sys

24、_state = 0; /*用来保存系统状态的字符*/unsigned long gul_shiyang_code_len = 0; /*式样代码表长度*/unsigned long gul_clo_type_code_len = 0; /*服装类别代码表长度*/unsigned long gul_type_code_len = 0; /*服装分类代码表长度*/unsigned long gul_sell_code_len = 0; /*服装销售代码表长度*/unsigned long gul_clo_code_len = 0; /*服装基本信息代码表长度*/HANDLE gh_std_out

25、; /*标准输出设备句柄*/HANDLE gh_std_in; /*标准输入设备句柄*/int LoadCode(char *filename, char *ppbuffer); /*代码表加载*/int CreatList(TYPE_NODE *pphead); /*数据链表初始化*/void InitInterface(void); /*系统界面初始化*/void ClearScreen(void); /*清屏*/void ShowMenu(void); /*显示菜单栏*/void PopMenu(int num); /*显示下拉菜单*/void PopPrompt(int num); /

26、*显示弹出窗口*/int DealInput(HOT_AREA *pHotArea, int *piHot);void PopUp(SMALL_RECT *, WORD, LABEL_BUNDLE *, HOT_AREA *); /*弹出窗口屏幕信息维护*/void PopOff(void); /*关闭顶层弹出窗口*/void DrawBox(SMALL_RECT *parea); /*绘制边框*/void LocSubMenu(int num, SMALL_RECT *parea); /*主菜单下拉菜单定位*/void ShowState(void); /*显示状态栏*/void TagMa

27、inMenu(int num); /*标记被选中的主菜单项*/void TagSubMenu(int num); /*标记被选中的子菜单项*/int DealConInput(HOT_AREA *phot_area, int *pihot_num); /*控制台输入处理*/void SetHotPoint(HOT_AREA *phot_area, int hot_num); /*设置热区*/void RunSys(TYPE_NODE *pphd); /*系统功能模块的选择和运行*/BOOL ExeFunction(int main_menu_num, int sub_menu_num); /*

28、功能模块的调用*/void CloseSys(TYPE_NODE *phd); /*退出系统*/void gotoxy(int x, int y);BOOL LoadData(void); /*数据加载*/BOOL SaveData(void); /*保存数据*/BOOL Input(void); /*数据输入*/BOOL BackupData(void); /*备份数据*/BOOL RestoreData(void); /*恢复数据*/BOOL ExitSys(void); /*退出系统*/BOOL HelpTopic(void); /*帮助主体*/BOOL AboutDorm(void);

29、 /*关于系统*/BOOL MaintainTypeInfo(void); /*维护服装分类信息*/BOOL MaintainCloInfo(void); /*维护服装基本信息*/BOOL MaintainSellInfo(void); /*维护服装销售信息*/CLO_NODE *SeekCloNode(TYPE_NODE *hd, char *name); /*查询服装基本信息对应结点*/BOOL QueryTypeInfo(void); /*查询服装分类信息*/BOOL QueryCloInfo(void); /*查询服装基本信息*/BOOL QuerySellInfo(void); /*

30、查询服装销售信息*/BOOL StatType(void); /*统计各类服装销售情况*/BOOL StatYear(void); /*年销售量统计*/BOOL StatKehu(void); /*客户信息统计*/BOOL StatSeason(void); /*季度销售统计*/BOOL StatAverage(void); /*按式样进行统计*/BOOL SaveSysData(TYPE_NODE *phd); /*保存系统数据*/BOOL BackupSysData(TYPE_NODE *phd, char *filename); /*备份系统数据*/BOOL RestoreSysData

31、(TYPE_NODE *pphd, char *filename); /*恢复系统数据*/BOOL ShowModule(char *pString, int n);void Insert(int n); /*数据插入*/void Seek(int n,char *s); /*数据查找*/void Dele_info(int n); /*数据删除*/void Modify_info(int n); /*数据修改*/void Seek_Clo_Name(TYPE_NODE *head) ; /*根据服装名称子串查询*/void Seek_IDPrice(TYPE_NODE *head); /*根

32、据服装分类码和单价查询*/void Seek_Sell_Name(TYPE_NODE *head); /*根据客户名称和销售日期查询*/void Seek_Sell_NamePj(TYPE_NODE *head); /*根据服装名称和评价指数查询*/void State_Type(TYPE_NODE *head); /*统计各类古装销售情况*/void State_Kehu(TYPE_NODE *head); /*客户信息统计*/void State_Spring(TYPE_NODE *head); /*统计春季销售情况*/void State_Summer(TYPE_NODE *head);

33、 /*统计夏季销售情况*/void State_Autumn(TYPE_NODE *head); /*统计秋季销售情况*/void State_Winter(TYPE_NODE *head); /*统计冬季销售情况*/void State_Year(TYPE_NODE *head); /*年销售统计*/void State_Shiyang(TYPE_NODE *head); /*统计各种式样销售信息*/void CLO_PJ(TYPE_NODE *head); /*计算服装评价指数*/#endif /* TYPE_H_INCLUDED*/main.c#include qjy.hint main

34、() COORD size = SCR_COL, SCR_ROW; /*窗口缓冲区大小*/ gh_std_out = GetStdHandle(STD_OUTPUT_HANDLE); /* 获取标准输出设备句柄*/ gh_std_in = GetStdHandle(STD_INPUT_HANDLE); /* 获取标准输入设备句柄*/ SetConsoleTitle(gp_sys_name); /*设置窗口标题*/ SetConsoleScreenBufferSize(gh_std_out, size); /*设置窗口缓冲区大小80*25*/ LoadData(); /*数据加载*/ InitI

35、nterface(); /*界面初始化*/ RunSys(&gp_head); /*系统功能模块的选择及运行*/ CloseSys(gp_head); /*退出系统*/ return 0;/* * 函数名称: ClearScreen * 函数功能: 清除屏幕信息. * 输入参数: 无 * 输出参数: 无 * 返 回 值: 无 * * 调用说明: */void ClearScreen(void) CONSOLE_SCREEN_BUFFER_INFO bInfo; COORD home = 0, 0; unsigned long size; GetConsoleScreenBufferInfo(

36、gh_std_out, &bInfo );/*取屏幕缓冲区信息*/ size = bInfo.dwSize.X * bInfo.dwSize.Y; /*计算屏幕缓冲区字符单元数*/ /*将屏幕缓冲区所有单元的字符属性设置为当前屏幕缓冲区字符属性*/ FillConsoleOutputAttribute(gh_std_out, bInfo.wAttributes, size, home, &num_written); /*将屏幕缓冲区所有单元填充为空格字符*/ FillConsoleOutputCharacter(gh_std_out, , size, home, &num_written); return;/* * 函数名称: ShowMen

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 策划方案

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁