报告编号:第五组。
综合课程设计报告。
超市管理系统的设计与实现。
学生姓名:指导教师:
所在系: 电子信息系。
所学专业: 计算机科学与技术
年级08级(2)班。
2023年6月。
目录。摘要 1
第1章前言 2
1.1系统前景 2
1.2系统主要功能 2
第2章需求分析 3
第3章概要设计 4
3.1 主界面流程图 4
3.2 超市管理模块设计 5
第4章详细设计 6
4.1主界面流程图 6
4.2清除内存中的商品函数 6
4.3增加商品信息 8
4.4删除商品信息的过程 9
4.5修改商品信息的过程 10
4.6查询商品的过程: 12
4.7统计商品的过程 14
4.8显示商品过程 16
第五章系统测试 17
第6章总结 22
参考文献 22
附录 23摘要。
针对用户对超市管理系统要求,本应用软件运用c++语言编写,通过对系统程序的编写,实现了基本的超市商品管理功能,本应用软件中的时钟时间以所在电脑的系统时间为准,用户可在修改商品的界面中修改超市商品信息来对超市进行管理。
超市管理系统主界面通过操作阿拉伯数字实现超市商品的增加、修改、查询、统计、显示所有商品信息等。本系统的实现主要运用了两个类,商品类和超市类。商品类中有商品必要信息,商品**,商品名称,商品产地,商品**,商品库存量等。
超市类中通过各类函数的实现对商品进行管理。可以增加商品,查询商品,删除商品,显示商品信息,统计商品库存量及价值等。
关键字:商品类超市管理函数指针。
第1章前言。
1.1系统前景。
随着社会的发展,超市的数量越来越多,规模越来越大。因此,对超市的科学管理就显得尤为重要。本系统用c++基本实现了超市管理系统的设计。
c++是一个面向对象的程序设计语言,可以让我们更好的掌握面向对象思想解决实际问题的能力。c++拥有强大生命力,几乎可以兼容c语言。c++牵涉概念很多,语法比较复杂,内容十分广泛。
比如在c的基础上增加了类等。各种类型函数如构造函数,析构函数等。还有函数是在类内定义还是在类外定义等。
总之,c++语言是一门非常实用的语言。
1.2系统主要功能。
1)本系统实现了对超市商品的管理。
2)本系统可以根据用户输入来调整超市商品信息。
3)本系统可以直接显示超市所有商品。
4)本系统的开发语言是当下比较流行的c++语言开发。
第2章需求分析。
本系统为超市管理系统的设计与实现,可供超市管理者对超市商品信息的查询和修改,适用于各种小型超市,有效地提高了工作效率。若查询不符合实际情况,则会提示错误。enter键确认。
本系统实现以下功能:
1)进入系统后提示适用方法,键入相应数字依次将商品**(由阿拉伯数字组成)、商品名称、商品产地、商品单价以及库存量等商品信息存入并保存。
2)键入商品名称,可将要求删除商品调出,并予以删除。
3)键入相应数字选项,可修改超市商品的所有信息。
4)键入相应数字选项,可查询需要查询的商品的所有信息。
5)键入相应数字选项,可显示超市所有商品的所有信息。
6)键入数字7退出系统。
第3章概要设计。
3.1主界面流程图。
设计超市管理系统的主界面, 主界面相应的现实有下列菜单:增加商品、删除商品、修改商品、查询商品、统计商品、显示商品、退出。
3.1主界面流程图。
3.2 超市管理模块设计。
1) 超市初始化模块。
类名为goods和supermarket,分别定义了商品的名称,**,产地,单价和库存数量,以及需要在链表里面寻找的指针。
2)增加商品的函数模块。
在文件中写入产品的信息,并且判断商品的单价和库存量是否超标(65535),并且加入链表。
3)删除商品的函数模块。
删除结点已达到删除产品的目的。
4)修改商品的函数模块。
载入商品的全部数据,并且放入内存,并且可以重新写入修改。如果没有找到商品,则返回。
5)统计商品的函数模块。
统计结点数以记录商品的数量,载入所有商品的数量和单价计算商品的总价值。
6)数据存储的函数模块。
将链表的所有数据写入文件,然后关闭文件。
7)数据读入的函数模块。
打开文件,然后将文件中的数据写入内存以备用。
第4章详细设计。
4.1 主界面流程图。
设计超市管理系统的主界面,主界面相应的现实有下列菜单:增加商品、删除商品、修改商品、查询商品、统计商品、显示商品、退出。
4.1主界面流程图。
4.2清除内存中的商品函数
在超市管理系统中,商品**出去,库存中的商品信息必须清除。
类外定义一个函数clear,在函数中定义一个指针p,讲物品goods赋给p,为了使函数能够不断地清除内存中的数据,要使指针移动,首先将p->next赋予goods ,然后删除p中的数据,清空p中的数据,然后将goods赋给p,依次循环,从而实现删除库存中的一个或多个商品。
流程图如图。
图4.2清除内存商品流程图。
4.3增加商品信息
类外定义一个函数add,首先在函数中定义变量商品** num 和商品数量count,都为double类型 ,商品名name和产地address为char类型 ,**price 为int类型,首先要求用户输入商品信息,依次输入商品的**、商品名称、商品产地、商品单价,判断单价是否在0~65535之间,如果不在范围内重新输入直到在范围之内再继续向下面执行,输入商品库存量,库存在0~99999之间,如果超出范围重新输入,在范围之内继续执行,保存数据。
图4.3 增加商品流程图。
4.4删除商品信息的过程。
1)在supermarket类下定义一个delete函数作为删除商品信息的函数,然后定义商品名,输入商品信息。
2)查找要删除的结点(节点中包含所有该商品的信息:商品**、名称、产地、数量、单价),分别定义两个指针,原商品表信息指针p1和输入的商品信息指针p2,在p1循环的过程中比较输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,否则p2指向p1,使得两指针同化,p1指针接着指向下一指针,这样依次向后查询。
3)删除结点,如果找到要删除的结点则删除,在这个条件下,如果删除的结点是第一个结点,则继续将指针后移删除第一结点,如果删除的结点是后续结点,则将p2下一指针指向p1下一指针,则删除相应的后续结点。
输出的结果是:找到并删除或者sorry,未找到!
流程图如图4.5
图4.5 删除商品流程图。
4.5修改商品信息的过程。
1)定义各参数变量的类型,然后是输入要查找等待修改的商品名称。
2)查找要修改的结点,定义p1、p2指针,p1为指向goods商品表指针,p2为输入的商品指针,判断p1指针,如果输入的商品名和原有的商品名一致,则结束本次循环,否则,p1和p2指针同化,p1接着指向p1的下一指针。
3)修改结点,若找到相应的要修改的结点,则p1指向output函数,接着输出要修改的信息,利用switch语句来调用相应的修改信息。
4)创建新商品的结点,把原来要修改的结点删除并重新替换要创建的商品结点。如果找到等待修改的结点则修改,否则保持商品表信息不变。
流程图如图4.6
图4.6 修改商品流程图。
4.6查询商品的过程:
1)在supermarket类下定义一个query函数作为查询商品信息的函数,输入商品名。
2)查找要查询的结点(结点中包含所有该商品的信息:商品**、名称、产地、数量、单价),定义一个原商品表信息指针p1,在p1循环的过程中比较。
输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,否则 p1指针接着指向下一指针,这样依次向后查询。
3)查询结点,如果找到要查询的结点则输出:查询成功并输出其所有信息,若没有找到输出:sorry未找到!
流程图如图4.7
图4.7查询商品流程图。
4.7统计商品的过程。
1)是在supermarket类下定义一个add_up函数作为统计商品信息的函数,然后定义两个double型变量amount和value分别表示要求统计商品的总量和总价值,输入商品名字name。
2)查找要统计的结点(结点中包含所有该商品的信息:商品**、名称、产地、数量、单价),定义一个指针p1,原商品表信息指针p1,在p1循环的过程中比较输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,p1指针接着指向下一指针,这样依次向后查询。没找到则输出:
sorry,未找到!
超市管理系统课程设计报告
交通运输工程学院。visual foxpro 课程设计报告。设计名称 超市进货供货管理系统 系 院 交通运输工程学院。专业班级。学号。姓名。指导老师。设计时间 2012年6月 目录。课程设计任务书1 一 前言。1 课程设计的目的和意义。2 系统功能设计。3 创建项目管理文件。二 vfp课程设计说明书...
超市管理系统课程设计报告
第1章任务描述。本次c 实践课题为 超市管理系统 要求功能有。a 添加商品信息,有商品编号 商品名 商代号 进货价 售出价 存货数等。进货 若商品已存在,只需修改存货数 若不存在,需增加新纪录。b 售出 输入商品编号,修改相应的存货数与销售额。c 查询 查询商品,销售额。第2章系统需求及主要功能。本...
超市管理系统 课程设计
一 可行性研究。1.1项目背景4 1.2问题定义4 1.3可行性研究5 1.3.1技术可行性研究5 1.3.2经济可行性研究5 1.3.3操作可行性研究6 二 需求分析。2.1引言7 2.1.1编写目的7 2.1.2项目背景7 2.1.3项目定义7 2.1.4参考资料8 2.2项目概述8 2.2.1...