c超市管理系统课程设计报告.doc

上传人:wj 文档编号:1216029 上传时间:2023-04-30 格式:DOC 页数:20 大小:109.50KB
下载 相关 举报
c超市管理系统课程设计报告.doc_第1页
第1页 / 共20页
c超市管理系统课程设计报告.doc_第2页
第2页 / 共20页
c超市管理系统课程设计报告.doc_第3页
第3页 / 共20页
c超市管理系统课程设计报告.doc_第4页
第4页 / 共20页
c超市管理系统课程设计报告.doc_第5页
第5页 / 共20页
c超市管理系统课程设计报告.doc_第6页
第6页 / 共20页
c超市管理系统课程设计报告.doc_第7页
第7页 / 共20页
c超市管理系统课程设计报告.doc_第8页
第8页 / 共20页
c超市管理系统课程设计报告.doc_第9页
第9页 / 共20页
c超市管理系统课程设计报告.doc_第10页
第10页 / 共20页
c超市管理系统课程设计报告.doc_第11页
第11页 / 共20页
c超市管理系统课程设计报告.doc_第12页
第12页 / 共20页
c超市管理系统课程设计报告.doc_第13页
第13页 / 共20页
c超市管理系统课程设计报告.doc_第14页
第14页 / 共20页
c超市管理系统课程设计报告.doc_第15页
第15页 / 共20页
c超市管理系统课程设计报告.doc_第16页
第16页 / 共20页
c超市管理系统课程设计报告.doc_第17页
第17页 / 共20页
c超市管理系统课程设计报告.doc_第18页
第18页 / 共20页
c超市管理系统课程设计报告.doc_第19页
第19页 / 共20页
c超市管理系统课程设计报告.doc_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

c超市管理系统课程设计报告.doc

《c超市管理系统课程设计报告.doc》由会员分享,可在线阅读,更多相关《c超市管理系统课程设计报告.doc(20页珍藏版)》请在冰点文库上搜索。

c超市管理系统课程设计报告.doc

第1章任务描述

本次C++实践课题为“超市管理系统”。

要求功能有

A、添加商品信息,有商品编号、商品名、供应商代号、进货价、售出价、存货数等。

进货:

若商品已存在,只需修改存货数;若不存在,需增加新纪录。

B、售出:

输入商品编号,修改相应的存货数与销售额。

C、查询:

查询商品,销售额。

第2章系统需求及主要功能

本系统为超市管理系统的设计与实现,可供超市管理者对超市商品信息的查询和修改,适用于各种小型超市,有效地提高了工作效率。

若查询不符合实际情况,则会提示错误。

Enter键确认。

本系统实现以下功能:

(1)进入系统后提示适用方法,键入相应数字依次将商品代码(由阿拉伯数字组成)、商品名称、商品产地、商品单价以及库存量等商品信息存入并保存。

(2)键入商品名称,可将要求删除商品调出,并予以删除。

(3)键入相应数字选项,可修改超市商品的所有信息。

(4)键入相应数字选项,可查询需要查询的商品的所有信息。

(5)键入相应数字选项,可显示超市所有商品的所有信息。

(6)键入数字0退出系统。

第3章系统概要

3.1主界面流程图

设计超市管理系统的主界面,主界面相应的现实有下列菜单:

增加商品、删除商品、修改商品、查询商品、统计商品、显示商品、退出。

超市管理系统

商品类

超市类

查询商品

统计商品

修改商品

增加商品

删除商品

找到

开始

开始

3.1主界面流程图

3.2超市管理模块设计

(1)超市初始化模块

类名为Goods和Supermarket,分别定义了商品的名称,代码,产地,单价和库存数量,以及需要在链表里面寻找的指针。

(2)增加商品的函数模块

在文件中写入产品的信息,加入链表。

(3)删除商品的函数模块

删除结点已达到删除产品的目的。

(4)修改商品的函数模块

载入商品的全部数据,并且放入内存,并且可以重新写入修改。

如果没有找到商品,则返回。

(5)统计商品的函数模块

统计结点数以记录商品的数量,载入所有商品的数量和单价计算商品的总价值。

(6)数据存储的函数模块

将链表的所有数据写入文件,然后关闭文件。

(7)数据读入的函数模块

打开文件,然后将文件中的数据写入内存以备用。

第4章系统设计过程

4.1主界面流程图

设计超市管理系统的主界面,主界面相应的现实有下列菜单:

增加商品、删除商品、修改商品、查询商品、统计商品、显示商品、退出。

查询商品

超市管理系统

商品类

超市类

统计商品

修改商品

增加商品

删除商品

找到

开始

结束

4.1主界面流程图

4.2清除内存中的商品函数

在超市管理系统中,商品出售出去,库存中的商品信息必须清除。

类外定义一个函数clear,在函数中定义一个指针p,讲物品goods赋给p,为了使函数能够不断地清除内存中的数据,要使指针移动,首先将p->next赋予goods,然后删除p中的数据,清空p中的数据,然后将goods赋给p,依次循环,从而实现删除库存中的一个或多个商品。

流程图如图

开始

定义指针

goods赋值p给p

将p的next赋值给goods

删除p中的数据

goods赋值给p

是否有需要删除的商品

结束

YES

NO

图4.2清除内存商品流程图

4.3增加商品信息

类外定义一个函数add,首先在函数中定义变量商品代码num和商品数量count,都为double类型,商品名name和产地address为char类型,价格price为int类型,首先要求用户输入商品信息,依次输入商品的代码、商品名称、商品产地、商品单价,判断单价是否在0~65535之间,如果不在范围内重新输入直到在范围之内再继续向下面执行,输入商品库存量,库存在0~99999之间,如果超出范围重新输入,在范围之内继续执行,保存数据。

开始

定义变量

输入商品代码名称产地

输入商品价格

(0~65535)

输入商品库存

(0~99999)

保存

No

No

Yes

Yes

图4.3增加商品流程图

20

4.4删除商品信息的过程

(1)在Supermarket类下定义一个Delete函数作为删除商品信息的函数,然后定义商品名,输入商品信息。

(2)查找要删除的结点(节点中包含所有该商品的信息:

商品代码、名称、产地、数量、单价),分别定义两个指针,原商品表信息指针p1和输入的商品信息指针p2,在p1循环的过程中比较输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,否则p2指向p1,使得两指针同化,p1指针接着指向下一指针,这样依次向后查询。

(3)删除结点,如果找到要删除的结点则删除,在这个条件下,如果删除的结点是第一个结点,则继续将指针后移删除第一结点,如果删除的结点是后续结点,则将p2下一指针指向p1下一指针,则删除相应的后续结点。

输出的结果是:

找到并删除或者sorry,未找到!

流程图如图4.5

查找要删除的结点

定义指针p1p2

比较输入商品名和商品表已知商品名是否一致

是否找到结点

继续向后查找p2=p1;p1=p1->next

是否为第一结点

找到则删除成功

查找后续结点

开始

结束

图4.5删除商品流程图

4.5修改商品信息的过程

(1)定义各参数变量的类型,然后是输入要查找等待修改的商品名称

(2)查找要修改的结点,定义p1、p2指针,p1为指向goods商品表指针,p2为输入的商品指针,判断p1指针,如果输入的商品名和原有的商品名一致,则结束本次循环,否则,p1和p2指针同化,p1接着指向p1的下一指针。

(3)修改结点,若找到相应的要修改的结点,则p1指向Output函数,接着输出要修改的信息,利用Switch语句来调用相应的修改信息。

(4)创建新商品的结点,把原来要修改的结点删除并重新替换要创建的商品结点。

如果找到等待修改的结点则修改,否则保持商品表信息不变。

流程图如图4.6

输入要查的商品名

查找要修改的结点

比较输入商品名和商品表已知商品名是否一致

是否找到第一结点

继续向后查找p2=p1;p1=p1->next

继续查找后续结点

删除并替换

开始

结束

图4.6修改商品流程图

4.6查询商品的过程:

(1)在Supermarket类下定义一个Query函数作为查询商品信息的函数,输入商品名。

(2)查找要查询的结点(结点中包含所有该商品的信息:

商品代码、名称、产地、数量、单价),定义一个原商品表信息指针p1,在p1循环的过程中比较

输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,否则p1指针接着指向下一指针,这样依次向后查询。

(3)查询结点,如果找到要查询的结点则输出:

查询成功并输出其所有信息,若没有找到输出:

sorry未找到!

流程图如图4.7

定义指针p1

比较输入商品名和商品表已知商品名是否一致

是否找到商品

继续向后查找p1=p1->next

输入要查询商品的名字

开始

结束

图4.7查询商品流程图

4.7统计商品的过程

(1)是在Supermarket类下定义一个Add_up函数作为统计商品信息的函数,然后定义两个double型变量Amount和Value分别表示要求统计商品的总量和总价值,输入商品名字name。

(2)查找要统计的结点(结点中包含所有该商品的信息:

商品代码、名称、产地、数量、单价),定义一个指针p1,原商品表信息指针p1,在p1循环的过程中比较输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,p1指针接着指向下一指针,这样依次向后查询。

没找到则输出:

sorry,未找到!

(3)统计商品,每当找到一个商品后就将Amount与p1所指count相加存入Amount,并将此时p1所指的count与price相乘再加上Value存入Value,循环查找相加,最后分别输出。

流程图如图4.8

开始

查找要统计的结点

定义指针p1

比较输入商品名和商品表已知商品名是否一致

是否找到结点

继续向后查找p1=p1->next

Amount+=p1->count;

Value+=p1->count*p1->price

Value+=p1->count*p1->price

当前指针p1

输出

结束

图4.8统计商品流程图

第4章系统测试

打开软件后见到如图所示的界面正式进入超市管理系统

图5.1系统主界面

该软件有增加商品、删除商品、修改商品、查询商品、统计商品、显示商品六大功能。

(1)增加商品

选择1进入商品录入界面

图5.2新增商品信息界面

依次录入商品代码、商品名称、商品产地、商品单价、商品的库存量并按Y保存。

(2)删除商品

图5.3删除商品界面

首先输入商品的名称,然后选择是Y或者N。

(3)修改商品

选择3进入修改商品界面

图5.4修改商品界面

输入商品的名称,系统会显示商品代码、名称、产地、价格、库存量,然后分别选择1改商品代码、2改商品名称、3改商品产地、4改商品单价、5改商品库存量、7改全部信息。

(4)查询商品

图5.5查询商品界面

输入商品名称后,系统会显示你所查询的商品信息,有商品的代码、商品的名称、商品的产地、商品的单价和库存量等。

(5)统计商品

图5.6统计商品界面

选择5后进入统计商品,输入商品名称后,会显示出商品的数量和总价值。

(6)显示所有商品

选择6后系统会显示所有商品的信息

图5.7显示所有商品信息界面

第6章总结

在xx老师的耐心指导下,本组成员结各人之长,集集体智慧,终于基本完成了超市管理系统的设计与实现。

在实训期间,各成员按时完成各自的分配任务,及时交付组长进行整理融合。

整理完毕后进行调试发现有不少有待改善之处,如商品价格和商品库存量不能为负数,也不能高的离谱等。

在李杰老师的严格要求下,最后还增加了一个显示栏,通过该显示函数的实现可对超市所有商品一目了然。

本着认真学习,对自己负责的态度,本组成员共同努力,对该系统程序的不足之处尽力修改,尽量达到程序的健壮性等。

但是尽管本组成员都非常努力,但该程序仍有不足之处,如对于商品代码num和商品库存量count若输入英文字母,按回车键后屏幕便会闪烁不停,重新打开系统后前面所输入的商品信息不能保存,在保存商品时按Y以外的键也可保存等。

总之,在李杰老师的悉心指导下,我们收获颇丰!

不仅深刻掌握了课本知识,而且加强了团队意识,在以后各自的人生发展道路上抹下了浓重的一笔!

参考文献:

[1]《C++面向对象程序设计》(第一版)谭浩强北京:

清华大学出版社2006年1月

[2]《C程序设计》(第三版)谭浩强北京:

清华大学出版社2005年7月

附录

课程分工:

王兵:

主界面的设计与实现,商品的显示,程序的整合。

叶大鹏:

商品的删除,商品的修改。

韩守飞:

清除内存中商品的数据,增加商品,创建商品类节点。

汪磊:

查询商品,统计商品数量与价值。

费能超:

数据存盘与装入。

系统的测试由五人共同完成。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2