商品销售统计程序设计基础课程设计报告.docx

上传人:小飞机 文档编号:5084626 上传时间:2023-06-02 格式:DOCX 页数:25 大小:422.72KB
返回 下载 相关 举报
商品销售统计程序设计基础课程设计报告.docx_第1页
第1页 / 共25页
商品销售统计程序设计基础课程设计报告.docx_第2页
第2页 / 共25页
商品销售统计程序设计基础课程设计报告.docx_第3页
第3页 / 共25页
商品销售统计程序设计基础课程设计报告.docx_第4页
第4页 / 共25页
商品销售统计程序设计基础课程设计报告.docx_第5页
第5页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《商品销售统计程序设计基础课程设计报告.docx》由会员分享,可在线阅读,更多相关《商品销售统计程序设计基础课程设计报告.docx(25页珍藏版)》请在三一办公上搜索。

1、信息科学与技术学院程序设计基础课程设计报告题目名称:商品销售统计专业班级:电子信息工程12级1班目录目录21课程设计题目与要求31.1设计题目31.2设计要求32总体设计 43详细设计53.1主界面流程图53.2清除内存中的商品函数63.3增加商品信息73.4删除商品信息的过程83.5修改商品信息的过程123.6查询商品的过程:143.7统计商品的过程163.8显示商品过程184运行结果175总结 226编程中的问题及解决方法217心得体会 248程序设计方法259程序运行环境 269.1软件环境269.2硬件环境2410参考文献251课程设计题目与要求1.1设计题目商品销售统计程序。1.2设

2、计要求商品销售统计问题描述编写商品销售统计程序,商品的信息有:商品的名称,计量单位(重量或件), 单价。所有商品的信息事先已存入计算机,屏幕上显示所有商品的名称,选择商 品名,输入商品计量单位(如重量,件数等),根据单价算出总价。客户一次购物 可能购买多种商品,程序应计算出客户应付的钱款数。基本要求程序分为两个部分:第一部分用于输入商品的信息并允许修改和删除;第二 部分实现销售统计。程序运行时由用户选择进入哪一部分功能,并能在运行时在 两部分之间切换。第二部分运行时,首先显示所有商品名称及代码(商品数目较 多时,应考虑分屏显示),用户输入商品代码及商品重量或件数,用户一次操作 可输入若干商品的

3、购买信息,然后输入一个特殊的代码(如)表示本次购物结 束。此时,程序计算出应付钱款数并显示。测试数据程序应输入不少于10种商品的信息,并进行模拟运行。实现提示本程序的商品信息可用一个结构体数组或链表进行管理。至少要有文本菜单实现。2总体设计3详细设计3.1主界面流程图设计超市管理系统的主界面,主界面相应的现实有下列菜单:增加商品、删 除商品、修改商品、查询商品、统计商品、显示商品、退出。3.1主界面流程图3.2清除内存中的商品函数在超市管理系统中,商品出售出去,库存中的商品信息必须清除。类外定义一函数clear,在函数中定义一指针p,讲物品goods赋给p,为了 使函数能够不断地清除内存中的数

4、据 要使指针移动,首先将p-next赋予goods , 然后删除p中的数据,清空p中的数据,然后将goods赋给p,依次循环,从而实现 删除库存中的一个或多个商品。图3.2清除内存商品流程图类外定义一个函数add,首先在函数中定义变量商品代码num和商品数量 count,都为double类型,商品名name和产地address为char类型,价格 price为int类型,首先要求用户输入商品信息,依次输入商品的代码、商品名 称、商品产地、商品单价,判断单价是否在065535之间,如果不在范围内重 新输入直到在范围之内再继续向下面执行,输入商品库存量,库存在099999 之间,如果超出范围重新输

5、入,在范围之内继续执行,保存数据。图3.3增加商品流程图(1 )在Supermarket类下定义一个 Delete函数作为删除商品信息的函数, 然后定义商品名,输入商品信息。(2) 查找要删除的结点(节点中包含所有该商品的信息:商品代码、名称、 产地、数量、单价),分别定义两个指针,原商品表信息指针pl和输入的商品 信息指针p2,在pl循环的过程中比较输入的商品名与原有的商品名是否一致, 如果一致则结束本次循环,否则p2指向pl,使得两指针同化,pl指针接着指 向下一指针,这样依次向后查询。(3) 删除结点,如果找到要删除的结点则删除,在这个条件下,如果删除 的结点是第一个结点,则继续将指针后

6、移删除第一结点,如果删除的结点是后续 结点,则将p2下一指针指向pl下一指针,则删除相应的后续结点。输出的结果是:找到并删除或者sorry,未找到!流程图如图3.5(1 )定义各参数变量的类型,然后是输入要查找等待修改的商品名称(2) 查找要修改的结点,定义p1、p2指针,pl为指向goods商品表指针, p2为输入的商品指针,判断pl指针,如果输入的商品名和原有的商品名一致, 则结束本次循环,否则,pl和p2指针同化,pl接着指向pl的下一指针。(3) 修改结点,若找到相应的要修改的结点,则pl指向Output函数,接 着输出要修改的信息,利用Switch语句来调用相应的修改信息。(4) 创

7、建新商品的结点,把原来要修改的结点删除并重新替换要创建的商 品结点。如果找到等待修改的结点则修改,否则保持商品表信息不变。流程图如图3.63.6查询商品的过程:(1) 在Supermarket类下定义一个Query函数作为查询商品信息的函数,输 入商品名。(2) 查找要查询的结点(结点中包含所有该商品的信息:商品代码、名称、产地、数量、单价),定义一个原商品表信息指针pl,在pl循环的过程中比较输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,否则 pl指针接着指向下一指针,这样依次向后查询。(3) 查询结点,如果找到要查询的结点则输出:查询成功并输出其所有信息, 若没有找到输出:s

8、orry未找到!流程图如图3.7图3.7查询商品流程图3.7统计商品的过程(1 )是在Supermarket类下定义一个Add_up函数作为统计商品信息的函 数,然后定义两个double型变量Amount和Value分别表示要求统计商品的总 量和总价值,输入商品名字name。(2)查找要统计的结点(结点中包含所有该商品的信息:商品代码、名称、 产地、数量、单价),定义一个指针p1,原商品表信息指针p1,在p1循环的过 程中比较输入的商品名与原有的商品名是否一致,如果一致则结束本次循环,p1 指针接着指向下一指针,这样依次向后查询。没找到则输出:sorry,未找到!(3)统计商品,每当找到一商品

9、后就将Amount与p1所指count相加存 入Amount,并将此时p1所指的count与price相乘再加上Value存入Value循 环查找相加,最后分别输出。流程图如图3.8图3.8统计商品流程图3.8显示商品过程(1 )是在Supermarket类下定义一个Out函数作为显示商品信息的函数。(2) 将goods的首地址给pl,判断pl是否为空,若空则输出“没有商品。否则输出该商品所有信息(商品代码、名称、产地、数量、单价)等。(3) 将pl赋给p2,p1-next赋给p1,进入循环,输出下一个商品信息。流程图如图4.9图3.9显示商品流程图4运行结果4.1运行结果截图理询襄 品品品

10、管查商商商 品品品码束加雷回 商商商密结增删基 12340112304.1.1软件进入界面录登 理董 经登结理询曹 si 品品品码束 商商商密结籥格名品品品商商商功入入入成增加鹿品 删陆商品 露商品:apple:2013-01-22:1.24.1.2商品添加2商品种类:NuM商品商品价格:20130102商品价格:20130102商品价格:20130102口商品日期:20130102商品价格:1-相TU商品日期:20130102商品价格=1-品日期:28130102商品价格:景寒彖新M隼子品日期:20130102商品价格:号:0商品辛|称= : 100存在状态= 号:4商品名祝: 100 :询

11、,狗 理询昏 首萤 管查口用 品品品码束商名回81 aPPle商品日期=20138102商品价格= 隹架 口+回叩中忡;橘子商品日期:存在般态:在案.2商昴名称;脸盆商品日期:量=100存在状态=在架品编号:3商昴名称:寺刷商品日期: 量=100存在状态=在架品编号:5高任.=0存在状态:商品已口口编&量=100 : _品编号:7商晶名称:,:100存在状态=在架品编号:8商昴名标了铅笔商品日期:20130102商品价格: 量=100存在状态=在架品编号:9商品名称=U盘商品日期:20130102商品价格:1 量:口存在状态;商品已售出ress any key to continue 1-2商

12、品种类=fruit商1-2商品种类:git商品1-2商品种类:fruit商品1-2商品种类:fruit商品2商品种类=fruit商品数1-2商品种类:繇心七商品1-2商品种类:商品2商品种类=fmit商品数1-2商品种类:git商品4.1.2商品查询信息4.1.3商品销售4.1.4商品删除5总结通过这次实践,我们成功的实现了数据的输入与保存,并在程序中实现了使 用类对各个学生的各参数的基本操作。该系统的难点在于不使用任何数据库,只 使用磁盘文件来实现对每个学生的信息的存储和读取。虽然测试的学生的信息条 数不够多,但是题目的要求是完全能够达到的,在现有的基础上只要稍加修改就 能够满足批量数据的存

13、储和查阅。要想增加更多学生信息,只要增加相应的对象 的属性即可,前提是在拥有相似的属性的时候。若有不同的属性,可以增加相应 的类就可满足需求。其中重要的是打开文件,保存文件,也就是对数据的妥善的 存储和再次的调用的操作。本次的课程设计对我们也是一个很好的实践的机会, 锻炼了自己,提高了自己编程的能力,为今后的项目打好基础。6编程中的问题及解决方法(1 )录入数据难以保存,通过参考一系列的指导书得以解决。(2) 对于预处理函数的概念不清楚,在同学的讲解下,自己才能得以明 白。(3) 对于切换界面的方法不是特别理解,通过参考大量的资料,找到了 解决方法。7心得体会a)对于程序设计有了新的认识,一个

14、好的程序员必须要对程序整体有足够 的认识,才能够写出一个完美的程序。b)要想对每一个代码熟悉,只有不停的实验和不停的变形不同的程序来检 验它的作用,正如“实验室检验真理的唯一标准”同样的对于编程也是如 此。c)熟悉程序是怎样运行的,每一个函数调用的目的、每一个函数的作用和 功能。具体是怎样执行的,这些问题都必须弄得透彻。8程序设计方法根据系统功能要求,可以将问题解决分为以下步骤:(1)分析系统中的各个实体之间的关系及其属性和行为;(2)根据问题描述,设计系统的类层次;(3)完成类层次中各个类的描述(包括属性和方法);(4)完成类中各个成员函数的定义;(5)完成系统的应用模块;(6)功能调试;(7)完成系统总结报告以及系统使用说明书。9程序运行环境9.1软件环境操作系统:Windows 98/2000/XP/7(推荐使用 Windows XP) 调试环境:Visual C+及以上版本。9.2硬件环境处理器:CPU主频在500MHz以上内存:128MB以上硬盘空间:10MB。10参考文献1 C+面向对象程序设计(第一版)谭浩强 北京:清华大学出版社2006年1月2 C程序设计(第三版)谭浩强北京:清华大学出版社2005年7月

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号