logo资料库

超市信息管理系统课程设计.docx

第1页 / 共41页
第2页 / 共41页
第3页 / 共41页
第4页 / 共41页
第5页 / 共41页
第6页 / 共41页
第7页 / 共41页
第8页 / 共41页
资料共41页,剩余部分请下载后查看
程序框架及执行流程:
Y
Y
Y
N
一、需求分析 (要求学生对课题进行分析,明确任务,设计出需要完成的功能等。) 1、课题名称 超市信息管理系统 2、任务概述 编写一个处理超市内商品信息的日常管理程序,能够实现商品信息的输入、 编辑、删除以及商品的浏览统计等功能。 3、设计目的 在超市管理中引进现代化管理系统,实现超市庞大商品的控制和传输, 从而方便销售行业的管理和决策,为超市和超市管理人员解除后顾之忧。 一款好的超市销售管理系统,应该是可以帮助销售部门提高工作效率,帮 助超市工作人员利用计算机,极为方便的对超市的有关数据进行管理、输 入、输出、查找等有关操作,使杂乱的超市数据能够具体化、直观化、合 理化等。 设计并实现超市信息管理系统。通过这样的题目培养和训练学生具有 基本信息管理系统的设计思想和实现能力,使学生达到系统理解、综合运 用课程知识的学习目标。 学会用 C 语言程序解决实际问题的方法,训练学生模块化程序设计的 思想,以及小组成员间的协调合作能力,学会较大程序的系统测试、调试 方法。 4、系统功能 程序功能如下: 1.文件操作:可建立、打开、保存、关闭数据文件。 2.输入商品信息数据:数据包括商品编号、商品名、商品类别、商品数量、 商品价格等。 3.编辑数据:可添加、删除、修改数据。 4.输入进货、销售信息:输入商品编号、数量完成进货或销售操作。 5.计算:应在输入进货及销售信息时,自动更改商品数量。 6.查询:可按商品编号、商品名或类别查询;还可查询需进货的商品。 7.排序:可按编号、名称或类型排序。 8.浏览:可浏览输入、查询或排序后的数据。 在系统中应增加一个用户管理模块,在其中可新增用户,修改用户信息等。 系统帮助。显示开发者姓名、班级、开发完成日期、版本号和指导老师等信息。 要求制作系统的各功能调用的主界面,并能从不同的功能模块退出时返回到 这主界面。主函数设计一个菜单,通过菜单进入各模块测试。各个选项分别代表 不同的功能,并由此进入到不同功能模块中。要求,从不同的功能模块退出时要 返回到这个功能界面。
设计要求: 学生 2 个人组成一个小组,要以模块化程序思想完成该系统,并要求明确分 工,合作完成。在设计过程中要有简要的使用手册和相关文档,便于他人使用和 今后的程序维护。 二、概要设计 (主要包括模块划分,模块之间的关系,程序框架和执行流程等。) 本次课程设计含有八个模块,主要包括文件操作、编辑数据、信息输入、 计算、查询、排序、浏览等。编辑数据模块与查询排序浏览之间的联系,而查询 模块是建立在输入编辑等模块之上的。 程序框架及执行流程: 1、主函数:main() (由于主函数框架较长,予下页显示,并且分块显示)
( 接 上 )
开始 菜单 输入 m 值 执行相应功能代 码 m=5 用户登录 m=4 用户注册 m=6 显 示 开 发 者 信 息 内含:该系统的具 体 用 法 与 注 意 事 项
(接上) 结束 开始 菜单 输入 m 值 执行相应功能代 码 m=8 退出系统 m=7 显 示 开 发 者 信息
结束
2、链表函数 struct good *createlist() 开始 fp=fopen("goods message.txt","w" ))==NULL? Y Y 输入 m= -1 ( 结 束 输 入) N 创建文件"goods message.txt" fprintf(fp,"%d %s %s %f %s %d ",p1->num,p1->name,p1->kind,p 1->price,p1->unit,p1->quantity); 输入商品信 息 结束 fclose(fp);
3、商品信息排序函数 struct good *paixu(struct good*head2) 开始 struct *p6,*p7,*r,*s good (fp=fopen("goods message.txt","w"))= =NULL ? N Y Y N fp=fopen("goods message.txt", "w"); p6=(struct good)); p6->next=head2; head2=p6; good *)malloc(sizeof(struct p7=p6->ne xt; r=p6; Y s=r->next; r->next=s->next; s->next=p6->next; p6->next=s; ; p6=p6->next; p6=head2; head2=head2->next free(p6); return head2; p6->next!=NUL p7->next!=NUL Y N N if((p7->next->price)>(r->next->price)) r=p7 ;p7->next; Y p6!=r N
分享到:
收藏