C语言商店商品管理系统设计报告与源代码
- 格式:doc
- 大小:422.92 KB
- 文档页数:27
目录
1 系统分析 (2)
1.1 课程设计内容 (2)
1.2 系统功能需求分析 (2)
1.3 数据结构设计 (3)
2 系统设计 (3)
2.1 总体设计 (3)
2.2 详细设计 (4)
2.2.1 界面设计 (4)
2.2.2 各功能模块的设计 (6)
3 系统编码设计 (9)
3.1 main函数 (9)
4 系统运行 (22)
5 总结 (26)
1 系统分析
1.1 课程设计内容
商场商品信息管理系统
1.2 系统功能需求分析
本系统应具有以下功能:
1、文件操作功能
文件操作:可建立、打开、保存、关闭数据文件。如果是新建的文件,可输入商品信息数据:数据包括商品编号、商品名、商品类别、商品数量、商品价格等。
2、数据输入功能
输入进货信息:输入商品编号、数量完成进货操作。
输入销售信息:输入商品编号、数量完成销售操作,注意当销售数量大于商品数量时,应出现错误提示。
3、数据添加、修改、删除功能
添加:添加一种或多种新商品,并能输入其商品信息。
修改:修改商品信息,可包括商品编号、名称、种类、数量和单价。
删除:删除一类或多类商品的所有信息。
4、计算功能
可通过查询商品信息功能,自动计算并输出需要进货的商品信息。
5、查询功能
可分别按商品编号、名称、类别和需要进货的商品进行查询。
6、排序功能
可分别按商品编号、名称、类别等进行排序。
7、数据显示功能
可分别浏览输入、查询和排序后的商品信息。
1.3 数据结构设计
struct goods /*商品结构体*/
{ long int num; /*商品编号*/
char name[20]; /*商品名称*/
char sort[20]; /*商品类别*/
long int count; /*商品库存量*/
long int price; /*商品单价*/
}goods[200]; /*最多200个商品*/
2 系统设计
2.1 总体设计
按系统分析的功能要求将系统划分为以下几个主要功能模块:
一、文件管理
⏹文件打开、关闭:对于刚输入或进行操作后的商品信息,在建立新的商品库存量后,可以把其保存在一个文件中,并对该文件可进行打开和关闭操作。
二、进出货管理
⏹商品进货: 输入数据后商品信息能自动更新进行添加
⏹商品销售: 输入数据后商品信息能自动更新进行减少
三、商品数据管理
⏹增加/删除商品: 添加或删除某条商品的信息
⏹修改商品信息: 对某条商品的信息进行修改
四、浏览商品信息管理
⏹查询商品信息:可分别按商品编号、名称、类别或需要进货商品查
询
⏹排序商品信息: 可按商品编号、名称、类别分别排排序
⏹浏览商品信息:可浏览输入、查询或排序后的数据。
(此处可用图形描述功能模块划分,类似下图)
2.2 详细设计2.2.1 界面设计
1、菜单设计
⏹欢迎界面:
⏹系统提示:商场商品信息管理系统
商
品
数
据
管
理
浏信
览息
商管
品理
文件管理进出货管理
打开关
闭
保
存
查
询
数
据
输
入
数
据
排
序
数
据
修
改
添
加
出
货
进
货
删
除
菜单设计:
2、输入界面的设计
3、信息显示界面的设计
2.2.2 各功能模块的设计
根据划分的功能模块,定义以下函数实现各功能:(这部分应介绍各函数的原型,各功能模块实现所用的算法,可用流程图描述)
1、主函数main()
定义主函数为空类型(void);利用选择结构(switch)实现在在主函数中的调用各个子函数,利用goto 和子函数中的return语句实现返回主菜单的循环。
声明各个子函数
输出欢迎界面
输出菜单
switch(m)
1 输入商品信息
2 排序商品信息
3 输入商品进货信息
4 输入商品销售信息
5 增加/删除商品
6 修改商品信息
7 查询商品信息
8 浏览商品信息
9 保存商品信息
清屏幕
2、子函数
(1)void input():< 输入函数 >
确定新的库存量n,输入商品信息,用for循环语句直到输入商品种类等于n,结束输入;
(2)void sequence():< 排序函数 >
对已有的商品进行排序,可按商品编号、名称、类别进行排序;
(3)void purchase():< 进货函数 >
进货函数主要是针对已有库存的商品,在原来的商品数量再增加:
(4)void sale():< 销售函数 >
要求用户输入所销售的编号,系统用for 循环查询该商品是否存在,不存在要求再进行输入,直到输入正确,输出销售商品:
(5)void edit():< 添加/删除商品 >
因为在进货函数已经实现对已有商品的数量的增加,此模块函数主要实现对新商品的添加或对旧商品的删除,并自动处理数据,可以在浏览中输出,用选择语句switch进行俩者操作的选择:
(6)void correct():< 修改数据函数 >
对有错误信息商品进行修改,输入需要修改的商品编号,用for 循环与if语句找到此商品,重新输入该商品的新信息,并输出:
(7)void search():< 查询函数 >
用switch(k)语句可分别按商品编号、名称、类别或需要进货商品查询;每个case 选择中均用for语句查找要查询的商品,并输出查询结果。