ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:63.46KB ,
资源ID:28309052      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28309052.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c校园超市商品信息管理系统课程设计说明书含源代码.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c校园超市商品信息管理系统课程设计说明书含源代码.docx

1、c校园超市商品信息管理系统课程设计说明书含源代码 Standardization of sany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#c校园超市商品信息管理系统课程设计说明书含源代码计算机科学与技术教研室课程设计说明书(2015-2016学年 第二学期)课程名称程序设计基础课程设计设计题目校园超市商品信息管理系统学号*姓名*小组成员*,*,* 起止时间: * 年 * 月 * 日 至 * 年* 月* 日 课程设计评 语平时表现比较积极,纪律良好,没有缺勤的情况,在演示过程中,表达流畅,做出来的作品也有很强的使用价值,设计报告写的也比较全面,比较细致,深入人心,

2、老师在提问的过程中,回答问题也头头是道,没有磕磕绊绊的情况发生,对于问题的解答也比较透彻。平时成绩报告成绩演示与答辩成绩成绩总评指导教师(签字)年 月 日注:成绩均用百分制。总成绩=平时成绩*20%+报告成绩*40%+演示与答辩成绩*40%设计题目:校园超市商品信息管理系统1.课程设计目的本系统的目的在于,可以很好的管理超市商品与销售员之间的关系,使得系统的功能和用途更加的全面和实用,这样两个和在一起可以避免用户使用起来的麻烦,使得可以更好的方便于使用者。 本课程设计的目的就是要通过一次集中的强化训练,能及时巩固已学的知识,补充未学的但又必要的内容。进行课程设计目的在于加深对程序设计基础理论和

3、基本知识的理解,促进理论与实践的结合,进一步提高程序设计能力。具体目的如下: (1)更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。 (2) 培养综合运用所学知识独立完成课程设计的能力。 (3) 培养勇于探索、严谨推理、实事求是、有错必改、用实践来检验理论,全方位考虑问题等科学技术人员应具备的素质。 (4) 可以运用自己所学的知识在系统的实现。2、课程设计正文系统分析从经济、技术、法律、操作四方面的分析可以看出,本系统的开发时机成熟。从多种角度考虑,都是可行的,采用本系统,能够使整个超市内部所有的信息工作简化、提高工作效益。由于采用统一的数据信息,使相关资料能够查询所需要的数据、

4、资料及其它信息,使信息快速高效运行。 需求分析该设计是通过计算机设计程序软件来实现校园超市商品信息管理系统的基本业务,商品共包含以下信息项:商品编号、商品名称、商品进货数目、商品销售数目、商品剩余库存数目、商品单价、商品产地、商品销售额等;主要功能包括:创建商品信息文件,增加、删除、修改商品信息,销售商品、通过关键字、厂家名称或者编号来查找商品,按照不同的条件对商品信息进行统计工作。在该系统中利用通过类的方式来定义对象以及在类中定义各项的成员函数和数据成员来实现对商品信息的管理。中小型超市采购的商品一般都成千上万件。对这些商品进行有效的管理必不可少。每件商品一般都需要记录商品名、商品编号、产地

5、、价格、出厂日期等商品的基本信息。除此之外,还需要记录商品的其他相关信息,如生产厂家、进货数量、销售数量、剩余库存数量等。超市商品的相关信息需要存储到磁盘文件中,一般都需要提供对商品信息的添加、编辑、删除、查找等操作。超市管理员每天都会记录购进的商品信息,核销过期的商品等。为了巩固我们所学的C+语言程序设计知识,也为了满足课程设计的要求,我们设计和实现一个小型的超市商品管理系统,提供商品系统的添加、删除、编辑、查找等功能。同类系统多数使用结构体数组来操作数据,本系统使用类定义对象,以及成员函数和数据成员来完成对增删查改功能的实现,利用链表结构操作数据,提高了数据处理的效率。(1)分别定义两个类

6、为Supermarket和Supermarketmassage来实现对价格信息、名称信息、数量信息的存储、更正、删除与查询以及其他功能的实现。(2)初始化功能当系统第一次启动时,系统中没有关于商品的信息,所以要根据商品的类型输入关于商品的一系列信息,把这些信息放在磁盘文件中。例如:编号、名称、进货总数、销售数目、剩余库存数目、单价、产地、销售额以及生产日期和保质期。(3)查询功能此时每件商品所包含的信息已经全部在磁盘文件中,所以就要通过一系列的函数来方便使用者查询有关商品的信息,以便更及时地发现商品在销售过程中存在的问题并及时改正或者更新。输入需要查询的商品名称或者编号,如果搜索到的信息与使用

7、者输入进去的信息相同,则返回此件商品所在的位置,输出商品的各项信息。反之,如果搜索不到此件商品,则输出无此商品的信息。(4)修改功能先在磁盘文件中找出是否有该商品,然后提示使用者要进行修改操作的编号,将修改过的商品放到原来那个商品所在的位置,将结果保存到原文件中,就提示使用者按任意字符继续。(5)销售功能提示使用者输入要进行销售的商品的编号或者名称,通过在函数中搜索,如果系统中有该商品的信息,则提示使用者输入要销售的数量,通过if语句,检查一下输入的数量是否大于库存数量,如果大于库存数量,则提示使用者要重新输入;如果小于库存数量,就将该商品所对应的库存数量减去销售数量,再把剩下的商品数量存入到

8、磁盘文件中,完成了销售功能。系统设计系统功能结构图如图1所示。图1 系统功能结构图(1)增加函数的设计该函数实现了对超市商品的增加功能,输入商品的信息,此时磁盘文件中就已经存入了这件商品的信息。增加函数流程图如图2所示。图2 增加函数流程图(2)删除函数的设计该函数实现了对超市商品的删除功能,输入商品的生产日期和截止日期,判断是否过期,如果过期就输入这件商品的编号或名称,最后就删除成功。删除函数流程图如图3所示。图3 删除函数流程图(3)查找函数的设计该函数实现了对超市商品的查找功能,输入想要查找到商品的编号或名称,如果找到了就显示出来,否则就显示找不到该商品。查找函数流程图如图4所示。图4

9、查找函数流程图(4)修改函数的设计该函数实现了对超市商品信息的修改功能,输入想要修改的商品信息,如果在系统中找到了该商品,则输入该商品修改过的信息,再存入到磁盘文件中去,修改成功。修改函数流程图如图5所示。图5 修改函数流程图(5)销售函数的设计该函数实现了对超市商品的销售功能,输入要销售的商品的编号或名称,如果系统中存在该商品信息,则输入要销售的数量,如果小于库存量,则输出销售成功,并将销售过后的剩余库存量存入到磁盘文件中去。销售函数流程图如图6所示。图6 销售功能流程图系统实现(1)进入系统进入系统图如图7、图8所示。图7 进入系统界面图图8 系统菜单图(2)增加界面增加界面图如图9所示。

10、图9 增加界面图(3)查找界面查找界面图如图10、图11所示。图10 按名称查找商品界面图图11 按编号查找商品界面图(4)销售界面销售界面图如图12所示。图12 销售界面图(5)退出系统退出系统界面图如图13所示。图13 退出系统界面图系统测试与维护 系统测试(1) void AddItem() /*添加商品信息*/例:input:(商品名称):a output:商品名称:a input:(商品编号):1001 output:商品编号:1001 input:(进货总数):10 output:进货总数:10 input:(销售数目):20 output:销售数目:20 input:(剩余库存)

11、:10 output:剩余库存:10 input:(产地):ss output:产地:ss input:(单价):10 output:单价:10(2) void Supermarketmassage:RemoveItem() /*删除商品信息*/例:input:(删除商品名称):a output:删除成功(3)void Supermarketmassage:ModifyItem() /*修改商品信息*/例:input:(商品名称):a output:商品名称:a input:(商品编号):1001 output:商品编号:1001 input:(进货总数):10 output:进货总数:10

12、input:(销售数目):20 output:销售数目:20 input:(剩余库存):50 output:剩余库存:50 input:(产地):ss output:产地:ss input:(单价):10 output:单价:10(4) void Supermarketmassage:Find() /*查询商品信息*/例:input:(商品名称):a output:商品名称:查找商品名称 input:(商品编号):1001 output: 输出商品信息系统测试图如图14、15所示。图14 系统测试图输入界面图图15 系统测试退出界面图 系统维护经过多次的对系统的测试,能够保证系统准确无误的运行

13、,用户可以放心使用。3、课程设计总结在为期十天的课程设计中,通过完成这次老师布置的任务,体会颇多,收获也很多。利用设计这次校园超市商品信息管理系统的机会使我比较熟练的掌握了这学期所学习有关c、c+中的一些主要的知识点和应用点。例如:类和对象的定义、类内数据成员及成员函数的声明和定义、类的实现、构造函数与析构函数的定义等等。不只是死板的只知道书本上的知识,能够学以致用。在本次的课程设计中,我不仅仅只学到了利用c+语言来编写程序,还学到了程序开发的一些比较重要的步骤,比如需求分析、总体设计、程序模块设计(包含功能需求、程序代码设计与分析、运行结果等)、对系统的检测和维护等一些中重要的东西。为整个课

14、程设计中的程序设计模块提供主要思路以及实现功能的主要方法,这个工作说起来简单,却不太容易实现,整体的思路对于能否完成一个比较漂亮的程序是至关重要的,如果最一开始的整体思路都没有明确,或者说我们定下来的主题很难用我们学过的知识去实现,这将会导致以后的一系列工作都无法开展。所以说,有一个明确的主题是重中之重。由于我们的人力和所学的知识有限,导致我们此次工作中存在着许多的不足和缺点。比如,这个系统只能实现简单的增、删、查、改,还有好多的功能不能去实现,比如说打折活动、员工与老板之间的联系、顾客与售货员之间的联系都没有在这个系统中体现出来,这个系统只能体现出来商品与顾客之间的联系,比较单一,纯粹的就是

15、一个单链结构,没有扩散出来。再比如,这个系统几乎没有亮点可寻,只是普普通通的,规规矩矩的按照学过的或者是从别的书籍中得到的知识来编写的程序,没有让人耳目一新的新颖的地方,创新的东西太少。其实,我在本次的课程设计中也学到了不少东西,同时也运用到了我们的系统中。例如:(1)对链表的灵活运用。链表,是存储数据的一个很方便的工具,简而言之,就是基于链式储存结构下的线性表。包括单向链表、双向链表以及循环链表。链表的基本操作包括创建链表、在链表中插入结点、在链表中删除结点、遍历链表中的内容以及销毁链表等。相对于顺序表来说,它方便进行插入、删除操作,但是,线性表的内容遍历与输出需要从头指针开始。在这个系统中

16、我们用到了链表的遍历,主要是利用它来查询我们要找的商品信息。(2)#include 头文件的应用。此头文件包含了本程序中的按任意键继续的函数,是库函数。conio是Console Input/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,比如getch()函数等等。(3)void ReadFile(istream & in)函数。它的输入参数是 ,没有输出。函数完成的作用是,依次将中的数据读入到变量中。通过此次课程设计,学到的也不只有这些新知识,对于编程的思想和方法我也颇有感触。如果想要编写出来逻辑清晰,可读性比

17、较强的程序,应该在编程之前先有一个对于程序设计的整体思路,并把它记录下来,这样就可以避免了直接编程序的手忙脚乱。还有就是编程的思想,存储数据最好的就是用链表或者是对象数组,在编写稍微复杂一点的程序时,尽量用类定义对象以及数据成员、成员函数等的方式来实现。还有就是,我的能力也相应的提高了一些,比如就是比较浅显的掌握和运用链表结构,能够比以前更加熟练的利用类以及成员函数来实现功能。既复习了以前的旧知识,又学到了一些新的知识;设计增强了我所用所学知识去解决具体问题的能力,进一步培养了我独立思考问题和解决问题的能力。特别是学会了在Visual C+ 集成开发环境中如何调试程序的方法。本次实践也锻炼了我

18、面对难题,自己思索,自己探索,自己查资料发现问题、解决问题的独断能力。总的来说,收获还是比较多的。4、参考文献1谭浩强.c+程序设计(第二版)M,北京:清华大学出版社,2004.2李云清,杨庆红.数据结构M.人民邮电大学出版社,3赵晓,王丽丽 “C+面向对象程序设计”多样实验探究J 计算机时代 20134袁素梅,付文成 基于Visual C+ 的学生信息管理系统J 电脑编程技巧与维护 2012答辩记录答辩小组教师:*,*提问与答辩情况记录如下:1.你的系统中的查找功能是如何实现的答:也是利用链表结构,显示遍历链表,找到想要根据编号或者名称查找的商品,如果找到了想要找到商品,就调用显示函数,将商

19、品的信息显示出来。2.你最后运行界面的颜色是如何显示出来的答:是通过#include这个头文件,这是个可以调用库函数的一个c语言的头文件。还用到了 system(color C); 其中color后面的C是前景色代号,还可以在C之前加一些代码作为背景色代号,各颜色代码如下:0=黑色 1=蓝色 2=绿色 3=湖蓝色 4=红色 5=紫色 6=黄色 7=白色 8=灰色 9=淡蓝色 A=淡绿色 B=淡浅绿色 C=淡红色 D=淡紫色 E=淡黄色 F=亮白色3.“按任意键继续”是怎样实现的答:先是定义了#include 这个头文件,然后调用这个库函数中的getch()函数,最后在自己想用到“按任意键继续”

20、这个功能的地方直接调用这个函数就可以了。4.你的系统中为什么选择用链表结构答:由于本题目的数据元素的个数不可预知,所以使用链表。链表是动态的,可以在需要的时候增长和减小其长度,而数组是在编译时分配内存的,所以其大小是不可改变的,而且会出现内存浪费的情况。我认为单循环链表能较好的解决问题。在建立循环链表时,因为链表的大小由输入决定,因此与其匹配的结点数也是变化的,所以要进行动态内存分配。附录:程序源代码#include #include #include#include #include 加商品信息 endl; cout 2.显示商品信息 endl; cout 3.排序统计商品 endl; co

21、ut 4.查找商品信息 endl; cout 5.删除商品信息 endl; cout 6.修改商品信息 endl; cout 7.销售超市商品 endl; cout 0.安全退出系统 endl; coutnttntt请选择:; void Supermarketmassage:Find() char name20 ,Num10; int x; Supermarket * p=NULL; coutntt*n; couttt 1.按商品的名称查找ntt 2.按商品编号查找; coutx; switch(x) case 1: coutname; if(p=FindItem(name) p-Next-S

22、how(); cout输入任意字符!继续; getch(); else couttt没有找到该商品信息!nendl; cout输入任意字符!继续; getch(); break; case 2: coutNum; if(p=FindNum(Num) p-Next-Show(); cout输入任意字符!继续; getch(); else couttt没有找到该编号的商品!nendl; cout输入任意字符!继续; getch(); break; void Supermarketmassage:ModifyItem()商品的名称查找ntt 2.按商品编号查找; coutm; switch(m) c

23、ase 1: coutname; if(p=FindItem(name) coutnumber; if(number=Enum1) cout销售成功!endl; cout输入任意字符!继续; getch(); else cout库存不足,请重新输入!endl; cout输入任意字符!继续; getch(); else couttt没有找到!endl; cout输入任意字符!继续; getch(); break; case 2: coutNum; if(p=FindNum(Num) coutnumber; if(number=Enum1) cout销售成功!endl; cout输入任意字符!继续

24、; getch(); else cout库存不足,请重新输入!endl; cout输入任意字符!继续; getch(); else couttt没有找到!endl; cout输入任意字符!继续; getch(); break; void Supermarketmassage:Swap(Supermarket *p1, Supermarket *p2).endl; Supermarket *p=NULL,*p1=NULL,*k=NULL; int n=Supermarketmassage:ListCount(); if(nNext;p!=End;p=p-Next) for(k=p-Next;k!

25、=End;k=k-Next) if(p-Addk-Add) Supermarketmassage:Swap(p,k); cout 排序完成!Next;p!=End;p=p-Next) outnamett Numtt Cnumtt Mnumtt Enumtt Addtt Pricett Sumn; (); void xinxing() /系统开始的心形图形 int i, j, k, l, m; char c=3; for (i=1; i=3; i+) for (j=1; j=32-2*i; j+) cout ; for (k=1; k=4*i+1; k+) coutc; for (l=1; l=

26、13-4*i; l+) cout ; for (m=1; m=4*i+1; m+) coutc; coutendl; for (i=1; i=3; i+) for (j=1; j=24+1; j+) cout ; for (k=1; k=29; k+) coutc; cout=1; i-) for (j=1; j=40-2*i; j+) cout ; for (k=1; k=4*i-1; k+) coutc; coutendl; for (i=1; i=39; i+) cout ; coutc; coutendl; void logo() /进入系统的开头int i; coutttendl; for(i=0;i3;i+) couttttttttt endl; couttt【 欢迎进入校园超市商品

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1