
哪位高手帮忙解决下关于数据结构的课程设计,要求如下: 80
主要包括以下操作:1、商品基本信息处理:由于商品种类众多,这里把商品首先按名称分成大类,如冰箱,电视等;在每种类别下有详细的信息,如某电视的产品编号、产品型号、厂家编号、...
主要包括以下操作:
1、商品基本信息处理:由于商品种类众多,这里把商品首先按名称分成大类,如冰箱,电视等;在每种类别下有详细的信息,如某电视的产品编号、产品型号、厂家编号、厂家名称、进价、销售价、总价,数量等。存储结构可参考提示(1)。
2、商品的进货和销售管理:建议使用进货和出货函数实现。
进货时:货物按照厂家编号排序,如货物为新增品种,应进行插入排序,使新的货物仍按厂家编号排序;如货物为已有货物,则修改数量和单价(单价的计算参阅提示(2))
出货(即销售)时:如有该货物,则修改数量,并把该销售信息存入销售信息链表(该表是操作4的数据源)中。如该货物销售完毕,应删除该货物信息,并保存当次销售信息(建议使用链表);如数量不足,应提示,中止操作;如该货物不存在,也应提示,中止操作。
3、 查询并输出相应商品信息
要求查询窗口灵活,基本可以按照商品的任何明细信息查询。例如:可按产品编号、产品名称、厂家等查询。
4、销售信息的文件写入和读取
主要实现销售信息的永久保存,并可以随时查阅以前年度的销售信息。
5、业绩评价管理:根据历史的销售信息,建议可以按商品销售量,利润率等排序输出商品信息,实现方法参见提示4。
提示:
(1) 对商品的存储可以考虑采用链式存储(见图1)或采用二叉排序树存储(见图2);
(2) 对于同一型号的产品的进货,考虑到每次的进价不同,可采用移动加权平均法,即单价=(该批货物的进货总价+进货前所有货物的总价)/(该批货物的数量+进货前的货物数量);
(3) 货物的编码和厂商的编码自己设计,可参考商品大类初始信息表的编码方式;
(4) 数据结构按自己的理解设计;
(5) 利润即售价减进价;
(6)对于操作5要求采用如下方法;(A)二叉排序树的中序输出。如货物的存储采用链表存储,采用此方法;(B)采用链表的插入排序,冒泡排序或选择排序中的任何一种。如采用二叉排序树,则采用此方法。
货物的二叉排序树的存储方法(其中二叉排序树按商品大类信息的编码进行创建。实线中的信息表示商品的大类信息,如冰箱001,而虚线中的表示商品的明细信息,如产品编号001001表示三星某某型号的冰箱)
(7)产品初始信息如下;
商品大类编码 商品大类名称
005 电视
001 冰箱
007 微波炉
008 电脑
003 空调
002 洗衣机
商品大类初始信息表
产品编号 产品型号 厂家编号 厂家名称 进货单价 销售单价 数量 进价总价(略)
005001 X11 001 三星 1000 1500 200
002001 X23 001 三星 2000 1900 100
003007 X24 003 美的 1100 2000 40
007001 X56 002 格兰仕 1200 1800 70
002001 X89 008 索尼 12000 16000 30
002003 X80 008 索尼 300 800 200
001001 X20 003 美的 600 1000 90
003001 X19 002 格兰仕 900 1200 80
002008 X22 002 格兰仕 2000 3000 110
002004 X21 001 三星 1300 1800 700
002010 X67 008 索尼 1200 1700 200
005002 X69 002 格兰仕 1000 1900 100
商品明细初始信息表 展开
1、商品基本信息处理:由于商品种类众多,这里把商品首先按名称分成大类,如冰箱,电视等;在每种类别下有详细的信息,如某电视的产品编号、产品型号、厂家编号、厂家名称、进价、销售价、总价,数量等。存储结构可参考提示(1)。
2、商品的进货和销售管理:建议使用进货和出货函数实现。
进货时:货物按照厂家编号排序,如货物为新增品种,应进行插入排序,使新的货物仍按厂家编号排序;如货物为已有货物,则修改数量和单价(单价的计算参阅提示(2))
出货(即销售)时:如有该货物,则修改数量,并把该销售信息存入销售信息链表(该表是操作4的数据源)中。如该货物销售完毕,应删除该货物信息,并保存当次销售信息(建议使用链表);如数量不足,应提示,中止操作;如该货物不存在,也应提示,中止操作。
3、 查询并输出相应商品信息
要求查询窗口灵活,基本可以按照商品的任何明细信息查询。例如:可按产品编号、产品名称、厂家等查询。
4、销售信息的文件写入和读取
主要实现销售信息的永久保存,并可以随时查阅以前年度的销售信息。
5、业绩评价管理:根据历史的销售信息,建议可以按商品销售量,利润率等排序输出商品信息,实现方法参见提示4。
提示:
(1) 对商品的存储可以考虑采用链式存储(见图1)或采用二叉排序树存储(见图2);
(2) 对于同一型号的产品的进货,考虑到每次的进价不同,可采用移动加权平均法,即单价=(该批货物的进货总价+进货前所有货物的总价)/(该批货物的数量+进货前的货物数量);
(3) 货物的编码和厂商的编码自己设计,可参考商品大类初始信息表的编码方式;
(4) 数据结构按自己的理解设计;
(5) 利润即售价减进价;
(6)对于操作5要求采用如下方法;(A)二叉排序树的中序输出。如货物的存储采用链表存储,采用此方法;(B)采用链表的插入排序,冒泡排序或选择排序中的任何一种。如采用二叉排序树,则采用此方法。
货物的二叉排序树的存储方法(其中二叉排序树按商品大类信息的编码进行创建。实线中的信息表示商品的大类信息,如冰箱001,而虚线中的表示商品的明细信息,如产品编号001001表示三星某某型号的冰箱)
(7)产品初始信息如下;
商品大类编码 商品大类名称
005 电视
001 冰箱
007 微波炉
008 电脑
003 空调
002 洗衣机
商品大类初始信息表
产品编号 产品型号 厂家编号 厂家名称 进货单价 销售单价 数量 进价总价(略)
005001 X11 001 三星 1000 1500 200
002001 X23 001 三星 2000 1900 100
003007 X24 003 美的 1100 2000 40
007001 X56 002 格兰仕 1200 1800 70
002001 X89 008 索尼 12000 16000 30
002003 X80 008 索尼 300 800 200
001001 X20 003 美的 600 1000 90
003001 X19 002 格兰仕 900 1200 80
002008 X22 002 格兰仕 2000 3000 110
002004 X21 001 三星 1300 1800 700
002010 X67 008 索尼 1200 1700 200
005002 X69 002 格兰仕 1000 1900 100
商品明细初始信息表 展开
1个回答
展开全部
产品编号 产品型号 厂家编号 厂家名称 进货单价 销售单价 数量 进价总价(略)
005001 X11 001 三星 1000 1500 200
002001 X23 001 三星 2000 1900 100
003007 X24 003 美的 1100 2000 40
007001 X56 002 格兰仕 1200 1800 70
002001 X89 008 索尼 12000 16000 30
002003 X80 008 索尼 300 800 200
001001 X20 003 美的 600 1000 90
003001 X19 002 格兰仕 900 1200 80
002008 X22 002 格兰仕 2000 3000 110
002004 X21 001 三星 1300 1800 700
002010 X67 008 索尼 1200 1700 200
005002 X69 002 格兰仕 1000 1900 100
商品明细初始信息表
005001 X11 001 三星 1000 1500 200
002001 X23 001 三星 2000 1900 100
003007 X24 003 美的 1100 2000 40
007001 X56 002 格兰仕 1200 1800 70
002001 X89 008 索尼 12000 16000 30
002003 X80 008 索尼 300 800 200
001001 X20 003 美的 600 1000 90
003001 X19 002 格兰仕 900 1200 80
002008 X22 002 格兰仕 2000 3000 110
002004 X21 001 三星 1300 1800 700
002010 X67 008 索尼 1200 1700 200
005002 X69 002 格兰仕 1000 1900 100
商品明细初始信息表
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询