C++实训报告——超市库存管理系统

合集下载

(完整word版)c语言程序设计超市管理系统

(完整word版)c语言程序设计超市管理系统

实验题目:超市管理系统一、实验目的1.熟悉 c 语言的编译连接和运行过程。

2.掌握 c 语言的数据类型,熟悉整型、实型、字符型变量的定义方式及如何给它们赋值。

3.掌握if 语句及switch 语句的运用方法及嵌套应用方法。

4.掌握实现循环结构的三种语句while 、do-while. 、for 的使用。

5.掌握函数的定义方法和调用方法。

6.能够采用模块化思想调试程序。

二.实验内容1.编写程序并进行调试运行。

2.输入商品资料,并保存于文件。

每件商品包含信息如:商品号、商品名、商品类别、商品总量、商品上限和下限、商品价格、进货日期、生产日期、保质期等。

3.对已存入的商品信息进行更新操作,包括添加一件商品信息、删除某件商品信息和修改商品信息。

4.通过按商品名、商品种类、商品进货量的方式查询商品信息。

5.输入某商品号后对其利润进行统计、对进货价格相同的商品进行统计。

6 对商品的库存量和利润进行排序。

7.最后输出商品信息,供需要时打印。

二、需求分析1.该程序可用于对商品的基本信息的存储、更新、查询、输出、统计、排序等操作,以实现管理者对商品的管理和消费者对商品的了解。

2.其中更新功能包括:添加信息、删除信息、修改信息、可根据需要添加一个或多件商品信息,也可对个别商品信息进行适当的删除或修改。

以便随时更新商品信息。

3.程序中设计的查询功能可根据需要从若干数据中查询某件商品信息,并且可根据三种不同的方法查询:按商品名查询、按商品种类查询和按商品进货量查询。

以满足不同的需要。

四、概要设计1、方案设计对系统进行分析,给出结构图分析:系统要求实现许多的功能,因此遵循结构化程序设计思想来进行本系统的设计—自顶向下、逐步细化,将系统设计任务分解出许多子功能模块进行设计结构图如下:超市管理管理系统查询模块排序模块退出系统退出系统查询模块排序模块统计模块*更新模块*输出信息¥录入信息按商品名查询利润排行库存量排行退出系统第二类商品第一类商品退出系统2 •功能模块说明:对各个模块进行功能的描述(1).输入模块:录入需要管理的商品信息并将信息保存于文件中,以方便日后进行打印、读取、更新等操作。

实验报告(超市库存管理系统需求分析)

实验报告(超市库存管理系统需求分析)

实验报告(超市库存管理系统需求分析)超市库存管理系统需求分析一、引言随着小超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。

超市时时刻刻都需要对商品各种信息进行统计分析。

而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。

超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。

从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。

二、任务概述2.1目标本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。

2.2项目背景在我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。

随着超市高速的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。

2.3 运行环境(1)硬件环境台式机或笔记本电脑运行时所需内存:5MB;(2)软件环境Windows操作系统三、数据描述3.1静态数据描述操作员个人信息表(UID, Uname, 联系电话);仓库信息表(仓库名称,负责人,联系电话,联系地址);货品信息表(货品编号,货品名称,货品类别,规格型号,单位);库存信息表(库别,货品编号,数量,进货单价,出货单价);入库单(凭证编号,库别,货品编号,数量,进货单价,合计,入库时间,制单人,采购人编号);出库单(凭证编号,库别,货品编号,数量,出货单价,合计,出库时间,制单人,客户编号);采购员表(UID, Uname, 采购的货品类别,联系电话);客户信息表(客户编号,客户名称,联系人,联系电话,联系地址);3.2数据库描述本软件采用数据库:Microsoft SQL Server 2008;3.3数据字典字段名数据类型字段长度是否为空UID 文本10Uname 文本8联系电话文本15表1 操作员个人信息表字段名数据类型字段长度是否为空仓库名称文本20负责人文本8联系电话文本15联系地址文本50表2 仓库信息表字段名数据类型字段长度是否为空货品编号文本 5货品名称文本10货品类别文本8规格型号文本 4单位文本 2表3 货品信息表字段名数据类型字段长度是否为空库别文本 5仓库编号文本 5数量数字长整型进货单价货币8出货单价货币 5表4 库存信息表字段名数据类型字段长度是否为空凭证编号文本10 库别文本8货品编号文本 5数量数字长整型进货单价货币合计货币入库时间日期/时间制单人文本8采购人编号文本 5表5 入库单字段名数据类型字段长度是否为空凭证编号文本10 库别文本8货品编号文本 5数量数字长整型出货单价货币合计货币出库时间日期/时间制单人文本8客户编号文本 5表6 出库单字段名数据类型字段长度是否为空UID 文本10Uname 文本 6采购的货品类别文本10联系电话文本15表7 采购员表字段名数据类型字段长度是否为空客户编号文本10客户名称文本8联系人文本8联系电话文本15联系地址文本50表8 客户信息表四、功能需求4.1功能划分本软件主要有如下功能(1)身份验证(2)系统主界面的实现(3)出库管理模块的实现(4)信息查询模块的实现(5)修改功能(6)帮助功能4.2功能描述(1)身份验证功能对登陆的用户进行验证,通过者才能进入系统。

c语言 商店存货管理系统 实验报告

c语言 商店存货管理系统 实验报告

兰州商学院陇桥学院工学系课程设计报告课程名称:高级程序设计语言课程设计设计题目:商店存货管理系统系别:工学系专业 (方向):网络工程年级、班:网络工程1301********学生学号:******************2014年7月03日目录一、系统开发的背景 (1)二、系统分析与设计 (1)(一)系统功能要求 (1)(二)系统模块结构设计 (2)三、系统的设计与实现 (2)(一)显示货物信息:DISPLAY() (2)(二)插入新进货物:INPUT() (4)(三)删除已卖货物:OUTPUT() (4)(四)查询库存:SEARCH() (5)(五)主界面:ZHUJIEMIAN() (6)四、系统测试 (7)(一)测试DISPLAY ()函数 (7)(二)测试INPUT()函数。

(8)(三)测试OUTPUT ()函数。

(10)(四)测试SEARCH ()函数。

(11)五、总结 (11)六、源代码 (12)商店存货管理系统一、系统开发的背景根据题目要求,要对商店存货进行相应的管理,方便主人对自己的店铺货品的了解和调用。

首先,应当把商品信息用结构体形式输入,在主函数main下只放入声明的四个函数,分别是展示函数display(),录入函数input(),删除函数output(),查询函数search()。

这四个可以分为四个模块,每个都是独立存在的,在运行时又是彼此串联的,在定义这四个函数的类型为void,意为函数无类型,即无函数值,也就是说,执行这四个函数后不会把任何值带回main函数。

在执行过程中不断进行函数的调用,让整个程序的活力尽现,在展示模块中,利用选择排序,对商品保质期进行排序,让保质期前的商品优先输出,保证整个商店的货品新鲜。

中间用了结构体来储存数据,展出数据,用文件插入新货品,用字符串函数修改删除货品。

其中一直被调用的是zhujiemian()函数,这是为了让程序变得美观大方有思想。

“超市商品库存管理系统”设计报告

“超市商品库存管理系统”设计报告

华中科技大学控制科学与工程系C语言课程设计报告超市库存管理系统完成时间:2010年11月21日星期天目录:一.引言 (4)1.任务背景 (4)2.编写目的 (4)3.任务概述 (4)二.功能及操作介绍 (5)界面1—欢迎暨人员登录界面 (5)界面2—主界面 (6)界面3—信息查询界面 (7)界面4—退出界面 (8)三.系统设计分析 (9)1.程序流程图 (9)2.程序模块分析 (10)1)主函数模块 (10)2)登陆及人员编辑模块 (11)3)主菜单模块 (14)4)超市仿真模拟模块 (18)3.核心算法分析 (21)1)链表的应用 (21)2)图形界面下的同步输入显示 (22)3)超市模拟仿真 (25)四.不足之处 (29)五.编程分工 (30)六.程序设计心得 (30)七.参考资料 (31)八.程序源代码 (31)一.引言1.任务背景在为期一学期的c语言课程学习之后,需要我们能扎实掌握所学知识,能够将其灵活运用到实际当中。

于是在大二上学期布置了c语言课设的任务,本次课设2至3人一组,共设置了22个题材,采用抽签的方式选择各组的题目。

每组须在大约两个月的时间内,编写出不少于1000行的c语言程序。

并要求所编写的程序能正常运行,并符合生活实际。

我们组的题目为“超市库存管理系统”,在下面的内容中将详细介绍。

2.编写目的此次C语言课程设计是本专业的第一次课程设计,具有重要的意义:通过上个学期对C语言的学习,对C语言编程有了初步的了解,获得了一定的基础但是非常缺乏实际的编程经验,无法从质上对自己的编程技巧有一个很大的提高,这次的课程设计给我们提供了一个非常好的锻炼机会。

通过二个人的分工合作,在实际中运用和训练程序设计的模块化和工程化思想和技术,努力掌握C语言精髓;同时提高自己的交流与团队合作的能力.为以后的更专业更复杂的课程设计和实践活动打好基础。

3.任务概述以某超市为研究对象,了解超市商品进出库管理的基本数据流程,能对超市商品进行日常维护(录入、删除、编辑修改)具有存储、出库、入库、查找、统计等功能。

超市商品管理系统 实验报告

超市商品管理系统 实验报告

电子科技大学信息与软件工程学院实验报告(实验)课程名称C语言程序设计电子科技大学教务处制表电子科技大学实验报告学生姓名:学号:指导教师:实验地点:实验时间:一、实验室名称:通用计算机软件实验室二、实验项目名称:超市商品信息管理系统三、实验学时:8学时四、实验原理:使用Visual Studio等C语言集成开发环境(IDE),在微型计算机上对程序进行编辑、编译、连接与运行。

通过上机练习掌握在C编译器中编辑、编译、连接、和运行C程序的方法和过程。

五、实验目的:掌握C语言中函数、结构体、指针数组、指针、字符串、文件操作等重点知识点,并且能够熟练运用。

掌握用C语言实现小型交互式软件的技术方法。

理解模块化编程的思路,学会用模块化的思想分解实际问题。

六、实验内容:以文本形式建立一个超市商品的基本信息库,其中包括商品序号,名称,价格,折扣,总数,余数等;编写C程序,读入文件并用结构存储商品信息,其中序号,名称,价格,折扣等结构成员采用字符串数组存储信息,而总数及余数则采用整型变量存储;编写函数,实现软件界面控制,商品信息初始化,商品信息的查找,修改,增删等操作;其中info_search函数实现用名称查找商品并调用info_output函数输出商品信息,info_insert函数和info_dele函数则实现商品信息的插入和删除,info_change调用info_search函数确认商品存在并实现对商品信息的修改;最后,退出系统,并将商品信息写入到商品信息文件,释放所有已分配的内存。

七、实验器材(设备、元器件):硬件要求:pc机,CPU PII 以上,64M 内存,100M 硬盘空间即可。

软件要求:Windows 7/XP/2003等,包括C编译器的IDE。

八、实验步骤、实验编程与运行结果:实验代码见文件2014220701027-陈家浩.c步骤一、打开程序,运行:(运行程序成功则表明商品信息文件被成功读入,失败会有提示)步骤二、实现商品信息的修改过程:输入要删除的商品的名字,然后info_change函数调用info_search函数查找到商品信息,然后进行修改;未查找到则提示“该商品不存在!”。

超市库存管理系统 实验报告.doc

超市库存管理系统 实验报告.doc

超市库存管理系统一,引言1,编写目的有效的库存管理,可降低运营成本,进而提高商品周转率,这样才能减少因风险造成的损失,从而使利润达到最高点。

一个超市的库存,也就代表了这个超市的大部分资产总额。

如何将这些静态的资产以最快的速度流转,这就是库存管理的目的。

一个好的超市,并不是只有畅销的商品就行了。

因为畅销的可能都是固定的某些商品,而有些商品可能进了超市后,就无人问津,这样不仅使这些商品占据了库房空间,而且也积了大量的资金,使得资金运转相当的困难。

要改善库存周转率不高的状况,就必须先从了解超市目前的库存情况开始,而要了解库存的情况,就可以利用信息系统来进行管理,从而进一步的提高库存管理的效率。

通过信息系统的查询可以方便的找出目前最畅销和滞销的商品,然后再利用各种行销方法,将滞销的商品销售出去,这样就可以避免超市因为滞销而造成的损坏、过期和资金积压等问题。

2,背景超市库存管理在欧美等国已实行多年,如今,在像中国这样的发展中国家也迅速地得到了推广。

它最主要的特点是能够实时和准确地反映店内的销售情况,以便为超市管理者提供决策信息支持。

超市库存管理的内容就是商品的入库、出库和库存管理,它是商品管理的中间环节。

用数据描叙货物的收入、发出和储存的状态,实际反映了商品在超市内流动的客观过程,库存管理和商品管理的其他环节都有直接联系。

可以说它在商品配送管理中起着枢纽和基础的重要作用。

二、需求分析1、功能需求:产品的信息的显示(show)、删除(deleteInfo)、录入(recorde)、修改(modify)、出库(outHou)、结束(return)和清屏(cls)。

显示:显示产品库存的所有信息。

删除:删除产品库存的所有信息。

录入:输入并保存产品的所有信息。

修改:可随机修改产品库存属性的信息出库:依据产品的出库数量,计算现在的库存量,更新出库数量。

2、操作需求:(1)起始菜单:在屏幕上输入0或1选择语言。

其中输入0显示中文,输入1显示英文。

超市管理系统实训报告

超市管理系统实训报告

基于Java的超市管理系统(C/S)组别:第二组姓名:温红权周家博隽飞栾文康拾营学号:1002343107 1002343110 10023431091002343139 1002343146课程名称:Java C/S架构银行管理系统综合实训指导老师:许丽花、李甲林提交日期:2012年01月06日摘要21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。

技术的提升和管理的升级是超市业的竞争核心。

零售领域目前呈多元发展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。

如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。

为了提高物资管理的水平和工作效率,尽可能杜绝商品流通中各环节中可能出现的资金流失不明现象,商品进销存领域迫切需要引入信息系统来加以管理。

而商品进销管理系统是当前应用于超市或者公司管理系统的典型代表。

超市管理系统不仅要求操作方便而且要求界面简洁,它还需要实现帐目管理,用户查询和查询统计功能。

针对上述情况和要求,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析、概要设计、详细设计、程序编码、测试等过程开发了一个超市管理系统。

本超市管理系统是以java为编程语言,使用Java-Eclipse SDK,Mysql为数据库实现的超市管理系统,完成系统管理、帐目管理、用户查询等功能。

该超市管理系统实现了一些基本的工能,比如:前台销售、后台管理、出仓、进仓等一系列的业务。

前言超市管理系统秉承“以客户为中心”的经营理念,通过整合超市所有的业务系统,整合所有的服务形式,建立超市面向客户的跨部门的业务流程。

通过数据挖掘工具,建立数据仓库,建立相关的数学模型,帮助超市在市场、销售、服务、等与客户密切相关的领域以及内部风险控制和决策支持等方面获得有效改善和发展,推动超市市场营销能力、客户服务能力和经营管理能力的提高,帮助超市建立企业的核心价值,提升超市的竞争力。

csharp超市管理系统实习报告doc.doc

csharp超市管理系统实习报告doc.doc

1课题综述1.1 课程设计的目的通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。

根据在数据库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。

1.2 课程设计的背景和意义1.2.1课程设计的背景20世纪90年代后期特别是近几年,我国的超市产业飞速发展,其经营模式更为复杂,旧的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。

超市的数据和业务越来越庞大,而计算机就是一种高效的管理系统,这就需要我们把超市的管理与计算机结合起来,从而超市管理系统应运而生。

依靠现代化的计算机信息处理技术来管理超市,节省了大量的人力、物力,改善了员工的并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。

1.2.2 课程设计的意义“数据库课程设计”的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。

为此,本课程结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。

学生对此热情高,实际收获大,效果好。

通过课堂学习和参与相关项目设计,学生对书本支持有了深刻的理解,实践性教学取得了良好效果。

11.3 课程设计环境操作系统:Windows 7开发软件:Microsoft Visual Studio 2010数据库:Microsoft SQL Server 20082 系统需求分析随着人们生活水平的不断提高,对于物质的需求也越来越高,而超市作为日常生活用品聚集的场所,随着全球各种超市的数目的不断增加,规模不断增大,其管理难度也相应的增加,而为了适应当今信息化发展的时代,一套完整的超市商品管理系统显得尤为重要。

2.1 问题的提出在信息化高速发展的今天,超市商品管理的信息化管理已成为必不可缺的一部分,但是目前的大多是超市商品管理系统应用难度较高,许多工作需要技术人员配合才能完成,角色分工不明确;改版工作量大,系统扩展能力差,应用时更是降低了灵活性,这就使得一套完善的、能够正常工作的商品管理系统应运而生。

c语言超市管理系统报告书

c语言超市管理系统报告书

1 需求分析:随着现代生活质量的提高,超市这种便利的效劳开始走进我们的生活,同时随着超市涌入我们的生活,如何更便利的对超市进行系统和有序的操作,成为了我们需要考虑的问题,本程序运用C语言程序设计了一个超市管理系统。

关系系统的的功能主要有新购物品入库、物品信息删除、物品信息修改、物品信息查询、物品信息浏览功能,在相应的硬盘上面进行存盘以防止局部数据的丧失。

为了更加人性化使用此管理系统,还在MENU选项总添加了系统颜色设置功能,使用户可以根据自己的喜好修改操作界面。

2 概要设计(1)数据结构依据给定的物品信息和数据形式,数组必须用结构体实现。

结构类型的层次结构:struct ima{int id;char name[20];char produce[30];int number;float price;};(2)模块划分依据程序的结构反和功能,遵照“自顶而下〞的原那么,描述该程序的层次结构图一显示了该程序的层次结构,共5层:如下列图:图一图一的层次结构1、void chushihua()2、增加物品Tianjia();3、删除物品信息Shanchu();4、Xiugai();Chazhao();6、Liulan();7、yanseshezhi();8、应用程序退出Jieshu();3 运行环境:Win2003, WinXP, Win2000, NT, WinME, Win9X4 开发工具和编程语言:编程语言:C语言开发工具:microsoft visual C++ 6.05 详细设计:1、结构体变量的定义:struct ima{int id;char name[20];char produce[30];int number;float price;};3、void chushihua(){FILE *fp;struct ima i={1,"花生牛奶","湖北武汉",1200,2.5};fp=fopen("ima.dat","w");if(fp==NULL){printf("\t\t\t系统错误,请重试........");exit(0);}fwrite(&i,sizeof(struct ima),1,fp);fclose(fp);}4、void main(){printf("\n\n");system("color 1a");printf("\t\3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 欢送使用\3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 超市库存管理系统\3\n");printf("\t\3 按任意键继续\3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 \3\n");printf("\t\3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3 \3");getch();system("cls");menu();chushihua();menu();}5、选择菜单void menu(){int choice;printf("\n∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞【超市库存管理系统】∞∞∞∞∞∞∞∞∞∞∞∞∞∞∞\n");printf("--------------------------------系统菜单显示如下--------------------------------");printf("\n\t①=====================【新购物品入库】\n");printf("\n\t②=====================【物品信息删除】\n");printf("\n\t③=====================【物品信息修改】\n");printf("\n\t④=====================【物品信息查询】\n");printf("\n\t⑤=====================【物品信息浏览】\n");printf("\n\t⑥=====================【系统颜色设置】\n");printf("\n\t⑦=====================【应用程序退出】\n");printf("\n\t请输入您要选择的菜单......");scanf("%d",&choice);switch(choice){case 1:Tianjia();break;case 2:Shanchu();break;case 3:Xiugai();break;case 4:Chazhao();break;case 5:Liulan();break;case 6:yanseshezhi();break;case 7:Jieshu();break;default:printf("\n\t\t\t\t\t输入无效,请您重新输入......");getch();system("cls");menu();}}6、int panduanID(int id){FILE *fp;struct ima i;fp=fopen("ima.date","r");if(fp==NULL){printf("\t\t\t系统错误,请您重试........");exit(0);}fread(&i,sizeof(struct ima),1,fp);while(!feof(fp)){if(i.id==id){fclose(fp);return 1;break;}fread(&i,sizeof(struct ima),1,fp);}fclose(fp);return 0;}{ struct ima i;char choice;FILE *fp;fp=fopen("ima.date","ab");if(fp==NULL){printf("\t\t\t系统错误,请您重试........");exit(0);}labID:printf("\n\t请您输入要入库物品的信息...\n");scanf("%d",&i.id);if(panduanID(i.id)==1){goto labID;}printf("\t\t\t\t 物品的名称:");scanf("%s",);printf("\t\t\t\t 物品的生产地:");scanf("%s",i.produce);printf("\t\t\t\t 物品的数量:");scanf("%d",&i.number);printf("\t\t\t\t 物品的单价:");scanf("%f",&i.price);fwrite(&i,sizeof(struct ima),1,fp);printf("\t\t\t\t\t\t 物品信息已入库成功!!!\n");printf("\n您想继续吗?(y/n)");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){Tianjia();}else{system("cls");menu();}}7、void Shanchu(){ struct ima i[1000];struct ima temp;int delID;char choice;int index=0;int j=0;FILE *fp;fp=fopen("ima.date","r");if(fp==NULL){printf("\t\t\t系统错误,请您重试........");exit(0);fread(&temp,sizeof(struct ima),1,fp);while(!feof(fp)){i[index]=temp;index++;fread(&temp,sizeof(struct ima),1,fp);}fclose(fp);scanf("%d",&delID);fopen("f:\\ima.date","w");if(fp==NULL){printf("\t\t\t系统错误,请您重试........");exit(0);}for( j=0;j<index;j++){if(i[j].id!=delID){fwrite(&i[j],sizeof(struct ima),1,fp);}}fclose(fp);printf("\t\t\t\t\t物品信息已去除!!!\n");printf("\n您想继续吗?(y/n)");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){Shanchu();}else{system("cls");menu();}}8、void Xiugai(){ int index=0;int ID,j;char choice;struct ima i[1000];struct ima temp;FILE *fp;fp=fopen("ima.dat","r");if(fp==NULL){printf("\t\t\t系统错误,请您重试........");exit(0);}fread(&temp,sizeof(struct ima),1,fp);while(!feof(fp)){i[index]=temp;index++;fread(&temp,sizeof(struct ima),1,fp);}fclose(fp);fp=fopen("ima.dat","w");if(fp==NULL){printf("\\t\t\t系统错误,请您重试........");exit(0);}scanf("%d",&ID);for(j=0;j<=index-1;j++){if(i[j].id!=ID){fwrite(&i[j],sizeof(struct ima),1,fp);}else{printf("\t\t物品名称修改为:");scanf("%s",i[j].name);printf("\t\t物品生产地修改为:");scanf("%s",i[j].produce);printf("\t\t物品数量修改为:");scanf("%d",&i[j].number);printf("\t\t物品单价修改为:");scanf("%f",&i[j].price);}}fclose(fp);printf("\t\t\t\t物品信息已修改......");printf("\n您想继续吗?(y/n)");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){Xiugai();}else{system("cls");menu();}}9、void Chazhao(){FILE *fp;int findID;char choice;struct ima i;fp=fopen("ima.date","r");if(fp==NULL){printf("\t\t\t系统错误,请你重试........");exit(0);}finID:scanf("%d",&findID);fread(&i,sizeof(struct ima),1,fp);while(!feof(fp)){if(i.id==findID){printf("\n\n\t***************物品信息******************");printf("\n\t-----------------------------------------");printf("\n\t物品名称...%30s\n",);printf("\n\t-----------------------------------------");printf("\n\t生产厂家...%30s\n",i.produce);printf("\n\t-----------------------------------------");printf("\n\t进口数量...%30d\n",i.number);printf("\n\t-----------------------------------------");printf("\n\t批发价格...%30.3f\n",i.price);printf("\n\t-----------------------------------------");printf("\n您想继续吗?(y/n)");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){Chazhao();}else{system("cls");menu();}}fread(&i,sizeof(struct ima),1,fp);}fclose(fp);goto finID;}10、void Liulan(){ struct ima i;int index=0;char choice;FILE *fp;fp=fopen("ima.date","r");if(fp==NULL){printf("\t\t\t系统错误,请你重试........");exit(0);}fread(&i,sizeof(struct ima),1,fp);while(!feof(fp)){index++;printf("\n\n\t****************物品信息%d*****************",index);printf("\n\t-----------------------------------------");printf("\n\t物品名称...%30s\n",);printf("\n\t-----------------------------------------");printf("\n\t生产厂家...%30s\n",i.produce);printf("\n\t-----------------------------------------");printf("\n\t进口数量...%30d\n",i.number);printf("\n\t-----------------------------------------");printf("\n\t批发价格...%30.3f\n",i.price);printf("\n\t-----------------------------------------");getch();fread(&i,sizeof(struct ima),1,fp);}fclose(fp);printf("\n您想继续吗?(y/n)");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){Liulan();}else{system("cls");menu();}}11、void yanseshezhi(){ int a;char choice;system("cls");printf("\n\n\t\t选择以下方案\n");printf("\n\n\t\t1**************红底黑字\n");printf("\n\n\t\t2**************白底黑字\n");printf("\n\n\t\t3**************黑底红字\n");printf("\n\n\t\t4**************绿底蓝字\n");printf("\n\n\t\t5**************黄底紫字\n");printf("\n\n\t\t6**************系统默认\n");printf("\n\n\t\t\t\t\t请挑选您喜爱的颜色<1-5>......");scanf("%d",&a);switch(a){case 1:system("color 40");break;case 2:system("color 70");break;case 3:system("color 04");break;case 4:system("color 21");break;case 5:system("color 65");break;case 6:system("color 1a");break;default:printf("\n\n\t\t\t\t\t输入无效,重新输入......");getch();yanseshezhi();}printf("\n选择的颜色您还满意吗?(y返回主菜单/n继续选择)");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){system("cls");menu();}else{yanseshezhi();}}12、void Jieshu(){char choice;system("cls");printf("\n\n\n\n\n\n\n\t\t\t您确定要退出系统吗?\n\n\n\t\t\t如果您想退出请按'y',其它键将返回主菜单.....");scanf(" %c",&choice);if(choice=='Y'||choice=='y'){system("cls");printf("\n\n\n\n\n\n\n\n\n\n\t\t\t\t谢谢您的使用!!!");printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");}else{system("cls");menu();}}6 调试分析:“;〞before tybe7测试结果:1、欢送界面2、系统选择界面:3、新购物品入库:4、物品信息删除:5、物品信息修改:6、物品信息查询7、物品信息浏览:8、系统颜色设置:9、应用程序退出:8 参考文献:课程设计总结C语言已学习了两个学期了。

管理信息系统实验报告——小型超市库存管理系统设计

管理信息系统实验报告——小型超市库存管理系统设计

管理信息系统实验报告——小型超市库存管理系统设计《管理信息系统》学院: 经济管理学院实验报告小型超市管理信息系统开发设计小型超市管理信息系统开发设计一、实验目的1、能够正确运用《管理信息系统》课程的基本理论和知识,结合本课题,复习、巩固、提高数据库方案设计、论证和分析方法,掌握管理信息系统开发的步骤,熟悉常用开发软件与辅助工具,根据小型超市系统的特点,实现系统。

2、熟悉业务流程图、数据流程图、数据字典的绘制。

3、熟悉代码设计、数据存储设计、输入输出设计等环节,并编制相应的文档。

4、熟悉关系数据库规范化设计理论,根据实验要求设计并建立科学合理的数据库,正确建立数据库中表与表之间的关系。

5、进一步树立正确的系统设计、实施思想,培养分析问题、解决问题的能力,提高查询资料和撰写书面文件的能力。

二、实验环境充分利用现有的设备,采用VB6.0 作为开发工具,利用ACCESS 数据库建立一个高效、准确、操作方便,具有专业的查询、更新及统计功能的微机管理信息系统,以满足工作人员进行综合的、模糊的查询及更新要求,从而更加方便的管理库存物品。

该系统的开发与建立会极大程度提高管理人员、工作人员的工作效率。

Win7平台 Access2000,2G内存,320G外存。

三、实验步骤,、系统项目概述1.1开发背景信息化的发展已经对我们的日常生活产生了积极的影响,并逐渐成为人们管理日常工作的重要手段。

在对信息加工的基础上充分利用信息,会给我们的生活带来巨大的好处。

在我国加入WTO后,商品零售业首当其中成为面临严峻挑战的行业。

面对乐购、家乐福、麦德隆等超市巨头气势汹汹的扩张步伐,发挥自身优势、不断提升竞争力,是各超市高层最为关注的问题。

我国的超市产业飞速发展,现代超市的经营模式更为复杂,旧的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。

并且保持在同行业竞争中“低价格、高质量”的竞争优势是十分必要的。

我超市作为规模疾速扩大的超市,数据和业务也随之越来越庞大。

超市管理系统 C++实验报告

超市管理系统 C++实验报告

信息学院《C++程序设计实践课程》实践报告题目:食品管理系统专业:信息管理与信息系统班级: 0802班学号:姓名:指导教师:完成日期:2011年6月 1 日1.实践题目食品管理系统:通过对C++的继承和派生的运用,开发一个管理食品,实现对基类食品的管理及对派生类肉类、蔬菜和水果类的管理,并由食品类和蔬菜类共同派生出熟食类。

关键词:食品管理系统分析信息2.需求分析2.1 问题的描述某超市需要存储食品的编号、名称、类别,并进行销售额的计算,食品又分为肉类、蔬菜和水果以及熟食类。

四个类当中,水果按单价进行计算,蔬菜和熟食可计算出其利润额。

C++程序设计能够对食品进行管理,应用到了继承、抽象、虚基类以及多态和文件的输入输出等内容。

2.2功能要求(1)添加功能:程序能够任意添加上述四类食品的记录,可提供选择界面供用户选择所要添加的食品,要求食品的编号要唯一。

(2)查询功能:可根据编号、名称等信息对已添加的记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;(3)显示功能:可显示当前系统中所有记录,每条记录占据一行。

(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。

(5)删除功能:主要实现对已添加的食品记录进行删除。

输入要删除的食品的编号,根据所输入的信息删除该食品记录,如果没有找到该食品信息,则提示相应的记录不存。

(6)统计功能:能根据多种参数进行食品的统计。

例如,统计四类食品数量以及总数,销售额等。

(7)保存功能:可将当前系统中各类食品记录存入文件中,存入方式任意。

(8)读取功能:可将保存在文件中的食品信息读入到当前系统中,供用户进行使用。

2.3问题的解决方案根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功能调试;(8)完成系统总结报告。

c语言超市商品管理系统实训报告

c语言超市商品管理系统实训报告

超市商品管理系统实训报告1. 背景超市商品管理系统是为了提高超市的商品管理效率和服务质量而开发的一款软件系统。

传统的超市商品管理方式通常依赖于人工操作,存在着工作效率低下、易出错、信息不及时等问题。

为了解决这些问题,我们开发了一套基于C语言的超市商品管理系统。

2. 分析2.1 系统需求分析在进行系统设计之前,我们首先对超市商品管理的需求进行了全面的分析。

通过与超市管理员和员工的沟通和访谈,我们得出了以下主要需求:•商品信息管理:包括商品的录入、修改、查询和删除等功能。

•库存管理:包括库存数量的统计、调整和报警等功能。

•销售管理:包括销售记录的录入、查询和报表生成等功能。

•会员管理:包括会员信息的录入、修改、查询和积分计算等功能。

2.2 系统设计思路基于以上需求分析,我们设计了一套简单而实用的超市商品管理系统。

该系统采用模块化设计,分为以下几个模块:•商品信息模块:负责处理商品信息的录入、修改、查询和删除等操作。

•库存管理模块:负责处理库存数量的统计、调整和报警等操作。

•销售管理模块:负责处理销售记录的录入、查询和报表生成等操作。

•会员管理模块:负责处理会员信息的录入、修改、查询和积分计算等操作。

系统采用了文件存储方式,将商品信息、库存信息、销售记录和会员信息保存在不同的文件中,以便于数据的读取和修改。

系统还提供了简单的用户界面,方便管理员和员工进行操作。

3. 结果经过系统设计和开发,我们成功实现了超市商品管理系统。

该系统在测试中表现良好,满足了超市商品管理的基本需求,并具备以下特点:•界面友好:系统采用简洁直观的用户界面,方便用户进行操作。

•功能完善:系统实现了商品信息管理、库存管理、销售管理和会员管理等多个功能模块。

•数据准确:系统通过文件存储方式,保证数据的准确性和可靠性。

•操作简便:系统提供了简单易用的操作方式,降低了用户学习成本。

4. 建议虽然超市商品管理系统已经取得了一定的成果,但仍存在改进空间。

超市管理系统实验总结

超市管理系统实验总结

超市管理系统实验总结
超市管理系统是一个用于管理超市业务的软件系统,通过该系统可以实现商品管理、库存管理、销售管理、用户管理等功能。

在本次实验中,我主要负责设计和开发超市管理系统的前端界面部分。

通过这次实验,我收获了以下几点经验和教训。

首先,系统的用户界面设计非常重要。

在设计界面时,应注重界面的美观和易用性。

合理布局界面,使用统一的字体和颜色,对用户输入进行验证等,这些细节的考虑都会对用户体验产生影响。

其次,需求分析非常关键。

在开发过程中,我发现有些功能的需求没有明确说明或者存在歧义,导致我在开发时遇到一些困惑和问题。

因此,在开发前应仔细分析需求,与团队成员进行沟通和确认,以确保对需求的理解一致。

再次,代码的可重用性和可维护性也非常重要。

在开发过程中,我意识到一个好的架构设计和代码实现可以提高代码的可重用性和可维护性,减少代码的冗余和重复开发。

因此,在编写代码时,应注意模块化和功能封装,以便于后续的维护和扩展。

最后,团队协作能力也是非常关键的。

在本次实验中,我承担了前端部分的开发工作,与后端开发人员进行了密切的合作。

通过与团队成员的沟通和协作,我能够更好地理解整个系统的要求和功能,并且能够更好地将前端和后端进行整合。

综上所述,通过这次实验,我不仅提高了自己的技术能力,还
锻炼了自己的团队协作能力和问题解决能力。

通过这次实验的实践,我对超市管理系统的开发有了更深入的理解,并且对软件开发过程中的注意事项有了更清晰的认识。

希望在以后的学习和工作中能够继续努力,不断提高自己的能力和水平。

C++商品管理系统实验报告

C++商品管理系统实验报告

《面向对象程序设计》实训报告题目:模拟超市商品管理系统专业:班级:学号:小组成员:年月日目录1课程设计目的 (1)2程序要求与简介 (1)3系统分析 (2)3.1系统流程图 (2)3.2主要类说明 (3)4测试运行的结果 (4)5心得体会 (6)6程序代码清单 (6)一、课程设计目的通过设计一个较为简单的《商场库存货物管理系统》,进一步熟悉C++中类的概念、类的封装、继承的实现方式。

了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程,加深对C++的理解与Visual C++环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。

二、程序要求与简介设计并实现超市进销存管理系统,假设超市有三个货架,分别放有日常用品、食品和家电。

本题要求完成以下内容:1.实现描述超市的类。

该类中要求包含三个函数:(1)增加商品的函数(说明:能增加新的商品,也能增加已有商品的数量)。

(2)销售函数,按照商品名称销售(要求:当商品现有数量少于卖出数量时,商品不能继续卖出,并有相关信息显示)。

(3)按照商品名称查询商品基本情况的函数。

(查询结果包括基本属性和现有数量)。

2.定义商品类作为基类,要求包含:商品编号,名称,商品现有数量,以及输出函数(可定义为虚函数)。

3.从商品类中派生日用品类,食品类,家电类。

其中,食品类商品拥有保质期属性,家电类商品拥有颜色属性(其他属性可根据实际情况自行定义)。

由输出函数来具体显示各类商品的名称、基本属性和现有数量。

4.设计简单的菜单界面,实现上述所要求的各种功能。

即根据菜单界面的选择,对每一种商品都可以添加、售出和查询各类商品。

5.程序应采用多文件结构。

6.(选做)重载输入“>>”操作符,使得可以通过cin直接读入上述商品对象的值。

分工:商品基类,三个派生类,主函数三、系统分析1.系统流程图2.程序分析使用面向对象的程序设计进行分析,整个系统涉及两大类可操作,超市所用函数、商品。

超市管理系统实践报告

超市管理系统实践报告

超市管理系统实践报告在当今竞争激烈的商业环境中,超市作为人们日常生活中不可或缺的购物场所,其管理的高效性和科学性至关重要。

为了提升超市的运营效率、优化顾客体验、实现精准的库存管理和营销策略,我们引入并实施了一套先进的超市管理系统。

通过一段时间的实践应用,该系统为超市的管理带来了显著的变革和提升。

一、超市管理系统的概述我们所采用的超市管理系统是一款集商品管理、库存管理、销售管理、员工管理、财务管理和客户关系管理等多个模块于一体的综合性软件。

它采用了先进的数据库技术和网络技术,能够实现数据的实时共享和快速处理,为超市的管理者提供了全面、准确、及时的信息支持。

二、系统的功能与特点1、商品管理系统提供了完善的商品信息管理功能,包括商品的名称、规格、价格、供应商、库存数量等。

管理者可以方便地对商品进行分类、编码和查询,同时还能够快速地更新商品信息,确保商品数据的准确性和及时性。

2、库存管理库存管理是超市运营的关键环节之一。

该系统能够实时监控库存水平,当库存低于设定的预警值时,系统会自动发出提醒,便于及时补货。

此外,系统还支持库存盘点和调整,大大提高了库存管理的效率和准确性。

3、销售管理系统能够准确记录每一笔销售交易,包括销售时间、商品种类、销售数量、销售金额等。

通过对销售数据的分析,管理者可以了解不同商品的销售情况,从而制定更加合理的销售策略,促进销售额的增长。

4、员工管理员工管理模块可以记录员工的基本信息、工作岗位、工作时间和绩效等。

管理者可以通过系统进行排班管理、考勤管理和绩效考核,提高员工的工作效率和服务质量。

5、财务管理财务管理模块包括了采购付款、销售收款、费用管理和利润核算等功能。

系统能够自动生成财务报表,为管理者提供清晰的财务状况分析,有助于做出科学的财务决策。

6、客户关系管理通过收集和分析客户的购买记录和偏好,系统能够帮助超市实现个性化的营销和服务。

例如,向常客推送个性化的优惠券和促销活动,提高客户的满意度和忠诚度。

超市管理系统实训报告

超市管理系统实训报告

超市管理系统实训报告
超市管理系统实训是以超市进行管理为主题,通过实际操作开发超市管理系统,使管
理人员掌握超市进货、出货、存储、仓库库存管理、商品管理等相关技能,从而实现超市
的科学管理,提高经营效率,提升管理水平。

实训的具体内容包括:建立数据库,编写接
口程序,搭建系统基础架构,深入了解市场需求,进行软件编码,设计具有逻辑性的界面,及进行系统测试、维护和改进等。

实训过程中,特别进行了数据的管理工作,设计了合理的记录格式,使商品数据成为
系统的关键,使用合理的查询语句实现了售货员的查询,对商品的记录、查询、修改等操
作具有很强的可操作性,从而使超市的存储工作得到极大地改善。

另外,为了保证系统的稳定性,特别进行了异常处理,采用了安全性更高的验证机制,保证系统的安全和防止数据泄露。

此外,搭建了触摸屏,编写脚本,并进行了脚本调试,
使超市营业更加便捷。

为了提高超市管理系统及其使用技能,期间还特别设置了实训考核,考核结束之后,
组织进行了反馈和总结,得出了结论。

最后,根据超市的业务需求,给超市管理系统进行
了简易教学,使系统使用更加容易并能够快速熟练的使用超市管理系统对超市管理及运作
进行有效维护与改进,使超市的管理工作变得更加高效、科学。

超市管理系统实习报告3篇

超市管理系统实习报告3篇

超市管理系统实习报告3篇超市管理系统实习报告篇1这次毕业实习,使我受益匪浅,有很多收获和体会:(1)心态上调整的体会收获学校人向社会人转变,在学校理解了16年的教育,真正的和社会接触并不是太多,而这次毕业实习,则是由学校人走向社会人一个缓冲阶段。

在这个过程中最需要调整的就是心态。

我们并不是什么天之骄子,也没有什么能够值得炫耀的资本,而从学校走出就直接到一个公司最基层上班,理解公司严格的规章制度约束,以及体力,心力上等等的挑战,当然会使很多同学落差很大。

这中间最大的挑战就是我们自己心理上的调整。

要有一切归零心态,从零开始,我们不能够改变环境,只有改变自己来适应这个环境。

(2)相关知识上的收获我由一个不熟悉超市物流,仓储,营销,管理等等,到对这些相关知识的了解熟悉。

以及与自己相关知识的进一步学习加强,如数据库,管理学,物流学,计算机,财务会计,营销渠道管理等等。

很多工作都是一项需要挑战一个人综合潜力的,在工作中,我认识到了自身知识不足和优势,这促使我改善和加强。

(3)人生目标感的清晰透过这次实习,我自身其他各方面都有所提升,如交际,口才,做事情,心理等等,但是最大的收获,是让我认清了我自己身上的优势和不足,以及如何去规划自己的时间,工作,生活,使我的许多目标变的清晰。

(三)推荐与想法这次实习使我提升不少,很感谢学校和人人乐带给这样的机会,当然其中也有一些个人想法与推荐:(1)在人人乐工作这两个月,使我接触到了零售业上最先进的制度和技术,但是也发现了公司这样那样的问题,发现绝大多数问题,不是因为制度和技术原因,而是在执行公司规章制度上出现的失误,再好的制度只有执行下去了才能够说是成功的制度。

这需要人人乐加强对管理等知识上面学习,能够把管理做到更好,使得各部门各司其职,井然有序,提高公司效益。

(2)学校方面上,就应实习比较灵活的实习时间,而不是此刻这样的一刀切。

有许多同学愿意留在实习单位继续工作下去,但是这实习时间和公司请假规章制度有冲突,所以这时候需要学校比较灵活时间的支持。

超市食品管理系统c语言实验报告

超市食品管理系统c语言实验报告

超市食品管理系统c语言实验报告
本实验旨在设计一个超市食品管理系统,使用C语言实现基本的数据输入、存储、查询和统计功能,实现对超市食品销售的管理。

实验内容:
1.设计数据结构
首先,需要设计数据结构来存储超市食品的相关信息,包括商品编号、商品名称、商品类型、商品价格、商品库存等。

2.实现数据输入和存储
在程序运行时,需要进行数据输入并将数据存储到文件中。

这里可以使用文件输入输出流实现,将数据写入文件中,以便查询和统计。

3.实现数据查询
在管理系统中,需要实现对商品信息的查询功能,包括按照商品编号、商品名称、商品类型等进行查询。

可以通过读取文件中的数据,根据查询条件进行匹配。

4.实现数据统计
可以通过读取文件中的数据,进行商品销售情况的统计,包括总销售额、各类商品销售额、销售量等。

实验结果:
经过实验,我们成功地实现了一个基本的超市食品管理系统,包括数据输入、存储、查询和统计功能。

该系统可以有效地帮助超市管理人员进行商品销售的管理和统计,提高管理效率和销售业绩。

实验总结:
本实验通过设计一个超市食品管理系统,提高了我们对C语言的应用能力,同时也增强了我们对数据结构和文件操作的理解和掌握。

我们在实验中遇到了一些问题,如数据存储和读取的具体实现等,但通过不断地尝试和调试,最终成功地完成了实验目标。

(完整word版)C++实训报告——超市库存管理系统

(完整word版)C++实训报告——超市库存管理系统

题目:超市库存管理院系:专业:姓名:学号:指导教师:日期:实训报告目录一、课题设计1。

设计目的2. 设计要求二、需求分析三、系统设计1.系统采用的关键技术2.主要类的说明3. 系统模块图4。

函数清单5。

详细设计五、测试六、设计心得七、附录(源程序)一.课题设计1.设计目的:(1)熟悉C++中类的概念、类的封装、继承的实现方式。

(2)了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程。

(3)深对C++的理解与Visual C++环境的使用。

(4)逐步熟悉程序设计的方法,并养成良好的编程习惯。

2.设计要求:(1)源程序要有适当的注释,使程序容易阅读。

(2)必须用C++中的类,要求命令行界面用文件保存,不得把用数组保存和文件保存相混淆.(3)设计系统要求用C++语言。

(4)设计的系统不仅要具备四个基本功能-增、删、改、查,还要具备“货物的有关信息数据存盘”的功能.因此,货物的有关信息数据既可以保存到磁盘文件,今后也可以从磁盘文件随时读出货物的有关信息。

这样做,不仅方便用户使用,也可以避免数据录入.同时为了考虑到系统实现简洁,货物数据文件采用文本文件,货物数据文件名:date.dat。

二、需求分析随着现代生活水平的提高,超市这种便利的服务逐渐与我们的生活息息相关,如何更便利地对超市进行系统和有序的操作,成为了我们需要考虑的问题.本程序运用C++程序设计了一个超市库存管理系统。

作为一个完整的系统,除了具有增加货物,删除货物的信息模块,还应该具有修改货物相关信息的功能.所以本系统具备了“商品入库”、“商品出库”、“查询统计”、“商品破损”、“退出系统”这5个基本功能,还可以在相应的硬盘上进行存盘以防止部分数据的丢失。

这样一来,就可以用最简洁的方式实现对货物的管理,也就实现了系统的要求。

三、系统设计1.系统采用的关键技术a.仓库管理员类class admin{public:admin();private:string name;};b。

超市管理系统实验报告

超市管理系统实验报告

超市管理系统实验报告一、背景现在,我们身边到处都是超市,而这些超市很多都是小型超市,在这些超市里,实行的还是人工管理,管理方式混乱,工作效率低下,管理成本也比较高,还不能及时的得到货物信息的反馈。

因此笔者开发了一个超市供销存管理系统,客户可以通过安装该系统,提高工作效率,降低管理成本,同时得到及时的货物信息反馈。

因此超市管理系统在现在还是有很大的市场的。

二、可行性分析^p1、经济可行性该超市管理系统的运行环境简单,开发简单,只要有相应的开发软件即可,因此,该系统的开发费用小。

但该系统的需求非常的多,因此该系统在经济上是可行的。

2、技术可行性我们专业已经学习了计算机网络,c语言,VB,数据库的基本原理和信息系统的分析^p 与设计这些课,此外,我还学习了 ee的知识,因此在技术上是可行的。

3、管理可行性因为该系统是本人一人开发,自己就是主管领导,因此管理上同样是可行的。

三、运行环境及主要功能软件:7、access等硬件::奔腾4,内存:32MB以上,硬盘:10GB以上主要功能:商品销售、进货、查看过期商品,删除过期商品记录、查看库存(是否有商品的数量低于安全库存)、计算收入、打印报表、查看商家信息四、组织结构图五、超市管理系统数据流程图商品超市管理系统商品与找零订单和钱供应商顶层图二层图六、E-R图七、实验步骤前期准备:1、学习access的使用,了解access中的各个控件的使用2、学习数据库的一些基本知识,在学习的过程中,每次上机实验时都会把一些不懂得题目在计算机上实验一下,并实验一个题目的各种解决方法系统规划阶段3、思考该系统的功能结构,编写可行性分析^p 报告,考虑该系统的可行因素和不可行因素。

系统分析^p 阶段4、详细分析^p 该系统的功能和可行性,编写系统分析^p 报告。

系统设计阶段5、在这一阶段主要是设计系统的界面和主要功能的实现以及数据库的设计系统实施阶段以及管理与运行阶段6、在这一阶段主要运用白箱测试来测试系统,找出系统存在的错误,并修改,进一步完善系统的功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目:超市库存管理院系:专业:姓名:学号:指导教师:日期:实训报告目录一、课题设计1. 设计目的2. 设计要求二、需求分析三、系统设计1.系统采用的关键技术2.主要类的说明3. 系统模块图4. 函数清单5. 详细设计五、测试六、设计心得七、附录(源程序)一.课题设计1.设计目的:(1)熟悉C++中类的概念、类的封装、继承的实现方式。

(2)了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程。

(3)深对C++的理解与Visual C++环境的使用。

(4)逐步熟悉程序设计的方法,并养成良好的编程习惯。

2.设计要求:(1)源程序要有适当的注释,使程序容易阅读。

(2)必须用C++中的类,要求命令行界面用文件保存,不得把用数组保存和文件保存相混淆。

(3)设计系统要求用C++语言。

(4)设计的系统不仅要具备四个基本功能—增、删、改、查,还要具备“货物的有关信息数据存盘”的功能。

因此,货物的有关信息数据既可以保存到磁盘文件,今后也可以从磁盘文件随时读出货物的有关信息。

这样做,不仅方便用户使用,也可以避免数据录入。

同时为了考虑到系统实现简洁,货物数据文件采用文本文件,货物数据文件名:date.dat。

二、需求分析随着现代生活水平的提高,超市这种便利的服务逐渐与我们的生活息息相关,如何更便利地对超市进行系统和有序的操作,成为了我们需要考虑的问题。

本程序运用C++程序设计了一个超市库存管理系统。

作为一个完整的系统,除了具有增加货物,删除货物的信息模块,还应该具有修改货物相关信息的功能。

所以本系统具备了“商品入库”、“商品出库”、“查询统计”、“商品破损”、“退出系统”这5个基本功能,还可以在相应的硬盘上进行存盘以防止部分数据的丢失。

这样一来,就可以用最简洁的方式实现对货物的管理,也就实现了系统的要求。

三、系统设计1.系统采用的关键技术a.仓库管理员类class admin{public:admin();private:string name;};b.仓库货架类class shelf{public:shelf();private:admin men;//管理员string storeNo;//仓库编号string kinds;//商品大类string shelfNo;//货架号};2.主要类的说明(1)使用面向对象的程序设计进行分析,整个系统涉及两大类可操作,仓库、商品。

所以系统主要涉及两大类:仓库类、商品类。

(2)系统框架就是仓库类和商品类的定义。

(3)主函数中定义一个仓库对象,循环显示主菜单并根据用户选择调用仓库类的相应方法(成员函数)。

(4)考虑系统操作的货物信息具有不确定性,所以考虑使用链表保存、处理货物信息。

(5)仓库类包含:所有货物信息的一个不带头结点的链表及可以对货物信息进行增,改,删除,查询,数量设置,数据存盘等操作的相关模块为成员函数。

所有货物都具有的公共信息及操作可以使用仓库类进行描述。

(6)仓库类包含:所有货物信息的一个不带头结点的链表及可以对货物信息进行增,改,删除,查询,数量设置,数据存盘等操作的相关模块为成员函数。

所有货物都具有的公共信息及操作可以使用仓库类进行描述。

(7)退出系统:选择该项,自动退出该系统。

3. 系统模块图4. 函数清单: (1) 首页函数:first_face(); (2) 入库函数:in_storage(); (3) 出库函数:out_storage();(4) 查询函数:void select_ele(); //查询A.按商品名称查函数:void select_name();B.按商品价格查询函数:select_price();C.按大类查询函数:call_break();(5) 商品报损函数:call_break();商场库存货物管理系统商品入库查询统计退出系统商品信息商品分类信息按名称查询按类别查询 商品出库商品报损直接退出报损商品信息5. 详细设计1、首页函数: [char first_face()……]2.新购商品入库函数:[void in_storage()……]3.商品信息删除函数:[void out_storage()……]4.商品信息查询函数:[void select_ele()……]5.商品报损函数: [ void call_break()……]五、测试1. 系统选择界面2.商品入库:3.商品信息存盘:4.商品查询统计:5.商品破损:6.商品出库:7.系统退出:六、设计心得在短短几天的时间里,完成了该系统的设计,对自己来说确实是一个不小的挑战。

本系统的主要功能是管理员对超市库存商品的管理,可以进行查询、删除、添加、修改等操作。

在设计这个超市库存管理系统的过程中,认识到自己所学的知识确实少得有点可怜,编写代码的时候有时会连最基本的语句都想不起来,只有通过查找课本还有网上的一些资料才慢慢进入设计状态。

通过本次超市库存管理系统的设计,认识到了自身C++的基础知识并不扎实,不过也让我再次熟悉数据库的设计过程。

同时,我也能够基本掌握C++程序设计的方法,并且在此基础上掌握类的构造方法,明确类中构造函数、成员函数的建立以及调用,此外,另外,当我结合C++中字符串函数的编译系统给定的库函数,采用一定的逻辑编译,就可以实现系统设计的各项要求,达到设计目的,进而提高自己的C++语言使用水平。

学习是无止境的,要想有所建树就必须要付出比别人更多的努力,希望在以后的学习中可以有更深的认识,以取得更好的成绩!七、附录(源程序)//main.cpp#include <iostream>#include <string>#include <fstream>#include <cassert>#include <iomanip>#include <conio.h>using namespace std;//仓库管理员类class admin{public:admin();private:string name;};//仓库货架类class shelf{public:shelf();private:admin men;//管理员string storeNo;//仓库编号string kinds;//商品大类string shelfNo;//货架号};//electrical classclass ele{public:ele();private:string name;//商品名double price;//介格shelf sh;//所属货架long count;//商品数量};//管理(组合类)class mana{public:mana();char first_face();//首页void in_storage();//入库void out_storage();// 出库void select_ele();//查询void select_name();//按商品名称查询void select_price();//按商品价格查询void select_kind();//按大类查询void call_break();//商品报损private:ele aele;shelf ashelf;admin abs;};//电器类默认构造函数ele::ele():sh(){name = "xxx";//商品名price = 0.0;//介格count = 0;//商品数量}//仓库货架类默认构造函数shelf::shelf():men(){storeNo = "xxx";//仓库编号kinds = "xxx";//商品大类shelfNo = "xxx";;//货架号}//仓库管理员类admin::admin(){name = "xxx";}//管理类默认构造函数mana::mana():aele(), ashelf(), abs(){}char mana::first_face(){system("cls");cout << endl;cout <<endl <<"\t\t>>>>>>>>>>>>>>>>超市库存货物管理系统<<<<<<<<<<<<<<<<<<<<\t\t"<<endl<<"\t--------------------------系统菜单显示如下---------------------\t"<<endl <<"\t\t¥¥"<<endl <<"\t\t¥¥ 1. 商品入库¥¥"<<endl <<"\t\t¥¥ 2. 商品出库¥¥"<<endl <<"\t\t¥¥ 3. 查询统计¥¥"<<endl <<"\t\t¥¥ 4. 商品报损¥¥"<<endl <<"\t\t¥¥ 5. 退出系统¥¥"<<endl<<"\t\t---------------------------------------------------" <<endl <<endl <<"\t\t";return getch();}//入库void mana::in_storage(){system("cls");string name;//商品名double price;//介格string storeNo;//仓库编号string kinds;//商品大类string shelfNo;//货架号long count = 0; //商品数量cout << endl << "商品入库,请输入相关信息 : " << endl << endl ; cout << "\t商品名称 : ";cin >> name;cout << endl << "\t商品介格 : ";cin >> price;cout << endl << "\t商品数量 : ";cin >> count;cout << endl << "\t仓库编号 : ";cin >> storeNo;cout << endl << "\t商品大类 : ";cin >> kinds;cout << endl << "\t货架编号 : " ;cin >> shelfNo;ofstream storeFile("store.txt", ios::app);storeFile << setiosflags(ios::left) << setw(20) << name << " "<< setw(15) << price << " " << setw(10) << count << " "<< setw(10) << storeNo << " " << setw(20) << kinds << " "<< shelfNo << endl;storeFile.close();cout << endl << endl << "\t该商品已经入库......." << endl << endl << "\t";system("pause");}// 出库void mana::out_storage(){system("cls");string name;//商品名cout << endl << "\t商品出库,输入出库商品信息 : " << endl << endl;cout << "\t商品名称 : ";cin >> name;ifstream storeFile("store.txt");if (!storeFile){ofstream storeFile1("store.txt");storeFile1.close();cout << endl << endl << "\t仓存为空" << endl << endl << "\t";system("pause");return;}bool flag = false;string name1;//商品名double price1;//介格string storeNo1;//仓库编号string kinds1;//商品大类string shelfNo1;//货架号long count1 = 0; //商品数量ofstream tempFile("temp.txt");while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1){if (name1==name)flag = true;else{tempFile << setiosflags(ios::left) << setw(20) << name1 << " "<< setw(15) << price1 << " " << setw(10) << count1 << " "<< setw(10) << storeNo1 << " " << setw(20) << kinds1 << " " << shelfNo1 << endl;}}tempFile.close();storeFile.close();if (!flag){cout << endl << endl << "\t仓库中没有这种商品" << endl << endl << "\t";system("pause");return;}ofstream storeFile1("store.txt");ifstream tempFile1("temp.txt");storeFile1 << tempFile1.rdbuf();storeFile1.close();tempFile1.close();cout << endl << "\t这些商品已经出库, 请仔细检查" << endl << endl << "\t";system("pause");}//查询void mana::select_ele(){while (1){system("cls");cout << endl << endl;cout << "\t======================================================== =====" << endl<< "\t|| ||" << endl<< "\t|| 商品查询 ||" << endl<< "\t|| ||" << endl<< "\t|| 1. 按商品名称查询 ||" << endl<< "\t|| ||" << endl<< "\t|| 2. 按商品价格查询 ||" << endl<< "\t|| ||" << endl<< "\t|| 3. 按大类查询 ||" << endl<< "\t|| ||" << endl<< "\t|| 4. 返回 ||" << endl<< "\t|| ||" << endl"\t======================================================== =====" << endl << endl << "\t\t";char select = getch();switch (select){case '1':select_name();break;case '2':select_price();break;case '3':select_kind();break;case '4':return;default:break;}}//按商品名称查询void mana::select_name(){system("cls");cout << endl << "\t按商品名查询 : " << endl << endl ;cout << "\t输入商品名 : ";string name;cin >> name;string name1;//商品名double price1;//介格string storeNo1;//仓库编号string kinds1;//商品大类string shelfNo1;//货架号long count1 = 0; //商品数量ifstream storeFile("store.txt");if (!storeFile){cout << endl << endl << "\t对不起,你的库存为空" << endl<< endl << "\t";system("pause");return;}bool flag = false;cout << endl << "商品名 " << "介格 " << "商品数量 " << "仓库编号 "<< "商品大类 " << "货架号" << endl << endl;while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1){if (name1 == name){flag = true;cout << setiosflags(ios::left) << setw(15) << name1 << " " << setw(10) << price1 << " " << setw(10) << count1 << " "<< setw(10) << storeNo1 << " " << setw(15) << kinds1 << " " << shelfNo1 << endl;}}storeFile.close();if (!flag)cout << endl << endl << "对不起,库存中没有这种商品"; cout << endl << endl;system("pause");}//按商品价格查询void mana::select_price(){system("cls");cout << endl << "\t按商品价格查询 : " << endl << endl ; cout << "\t输入价格 : ";double price;cin >> price;string name1;//商品名double price1;//介格string storeNo1;//仓库编号string kinds1;//商品大类string shelfNo1;//货架号long count1 = 0; //商品数量ifstream storeFile("store.txt");if (!storeFile){cout << endl << endl << "\t对不起,你的库存为空" << endl << endl << "\t";system("pause");return;}bool flag = false;cout << endl << "商品名 " << "介格 " << "商品数量 " << "仓库编号 "<< "商品大类 " << "货架号" << endl << endl;while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1){if (price1 == price){flag = true;cout << setiosflags(ios::left) << setw(15) << name1 << " " << setw(10) << price1 << " " << setw(10) << count1 << " "<< setw(10) << storeNo1 << " " << setw(15) << kinds1 << " " << shelfNo1 << endl;}}storeFile.close();if (!flag)cout << endl << endl << "对不起,库存中没有这个价格的商品"; cout << endl << endl;system("pause");}//按大类查询void mana::select_kind(){system("cls");cout << endl << "\t按商品大类查询 : " << endl << endl ; cout << "\t输入大类名 : ";string kinds;cin >> kinds;string name1;//商品名double price1;//介格string storeNo1;//仓库编号string kinds1;//商品大类string shelfNo1;//货架号long count1 = 0; //商品数量ifstream storeFile("store.txt");if (!storeFile){cout << endl << endl << "\t对不起,你的库存为空" << endl << endl << "\t";system("pause");return;}bool flag = false;cout << endl << "商品名 " << "介格 " << "商品数量 " << "仓库编号 "<< "商品大类 " << "货架号" << endl << endl;while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1){if (kinds1 == kinds){flag = true;cout << setiosflags(ios::left) << setw(15) << name1 << " " << setw(10) << price1 << " " << setw(10) << count1 << " " << setw(10) << storeNo1 << " " << setw(15) << kinds1 << " " << shelfNo1 << endl;}}storeFile.close();if (!flag)cout << endl << endl << "对不起,库存中没有这类商品"; cout << endl << endl;system("pause");}//商品报损void mana::call_break(){system("cls");string name;//商品名cout << endl << "\t商品报损,请输入要报损商品信息 : " << endl << endl;cout << "\t商品名称 : ";cin >> name;ifstream storeFile("store.txt");if (!storeFile){ofstream storeFile1("store.txt");storeFile1.close();cout << endl << endl << "\t仓存为空" << endl << endl << "\t";system("pause");return;}bool flag = false;string name1;//商品名double price1;//介格string kinds1;//商品大类string shelfNo1;//货架号long count1 = 0; //商品数量ofstream tempFile("temp.txt");string storeNo1;//仓库编号cout << endl << endl << "你想报损商品信息如下 : " << endl << endl;cout << endl << "商品名 " << "介格 " << "商品数量 " << "仓库编号 "<< "商品大类 " << "货架号" << endl << endl;while (storeFile >> name1 >> price1 >> count1 >> storeNo1 >> kinds1 >> shelfNo1){if (name1==name){flag = true;cout << setiosflags(ios::left) << setw(15) << name1 << " " << setw(10) << price1 << " " << setw(10) << count1 << " "<< setw(10) << storeNo1 << " " << setw(15) << kinds1 << " " << shelfNo1 << endl;shelfNo1 += "(损坏)";}tempFile << setiosflags(ios::left) << setw(20) << name1 << " "<< setw(15) << price1 << " " << setw(10) << count1 << " "<< setw(10) << storeNo1 << " " << setw(20) << kinds1 << " " << shelfNo1 << endl;}tempFile.close();storeFile.close();if (!flag){cout << endl << endl << "对不起,仓库中没有这种商品" << endl << endl;system("pause");return;}ofstream storeFile1("store.txt");ifstream tempFile1("temp.txt");storeFile1 << tempFile1.rdbuf();storeFile1.close();tempFile1.close();cout << endl << endl << "这些商品已经损坏,请尽快从仓库中取出" << endl << endl;cout << "报损成功,记录已经更改" << endl << endl ;system("pause");}int main(){char select;mana men;while (select = men.first_face()){switch (select){case '1':men.in_storage();break;case '2':men.out_storage();break;case '3':men.select_ele();break;case '4':men.call_break();break;case '5':cout << "\t" << "谢谢使用" << endl << endl << "\t\t"; exit( 0 );break;default:break;}}return 0; }。

相关文档
最新文档