商品管理系统设计与实现毕业设计论文_第1页
商品管理系统设计与实现毕业设计论文_第2页
商品管理系统设计与实现毕业设计论文_第3页
商品管理系统设计与实现毕业设计论文_第4页
商品管理系统设计与实现毕业设计论文_第5页
已阅读5页,还剩117页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南昌航空大学科技学院毕业设计(论文)毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:导师签名:南昌航空大学科技学院学士学位论文目前在全球信息技术的影响之下,世界经济体制的变革已经进入了加速状态。世界经济的一体化,企业经营的全球化,令企业与顾客、企业与供应商的关系变得更加密切和复杂。强化企业内部管理,规范业务流程,加快企业商品资金的周转,以及为流通领域信息管理全面网络化打下基础,是公司乃至众多商业企业梦寐以求的愿望。商品管理是商业和企业经营管理中的核心环节,也是一个企业能否取得最佳经济效益的关键。对于企业来说,如果可以合理购买、及时的销售和保证库存量最低,减少积压,就可以使企业的效益最大化。商品管理在手工管理的情况下,企业是很难给出正确的库存、销售等统计资料,企业的生产部门也难以做出一份合理的生产计划,使生产条件和市场需求难以准确地反映到生产企业。商品管理一采购客户高需求量的商品,处理积压的商品,并把商品以最大利润销售出去一对于零售商来说是成功的关键,因为商品是零售的基础。特别是在一个电子商务环境中,客户的需求变化是很快的,而且批发商的忠诚度是很低的,所以必须能够尽快的了解客户的需求变化,并且能够根据变化尽快的做出反应。南昌航空大学科技学院学士学位论文Intheinfluenceofinformationtechnology,thereformoftheworldeconomenteredthestate.Thewbecomemorecloselyandcomplex.moreintensivemanagement,standardizedoperationflow,greatertransparencyandtoacceleratetheflowoffenterpriseswhichitwishes.Goodsmanagementisthecoreoftheprocess,whichisthperformanceforanenterprise.ifyoucanbereproductionconditions.Merchandisemanacement-selectinc,desirablemerchandise,disposingmerchandiseisthebasisofretailing.ParticularlybecauseinanElectronicCommerceenvironment,customerpreferencesareverydiversequicklyandrespondtothemappropriately.However,untilnow,mostretailershavedependedonhumansformerchandisemana南昌航空大学科技学院学士学位论文 11.1课题研究背景和现状分析 11.2课题内容 12需求分析 22.1功能需求 22.2运行环境需求 33系统设计 43.1系统设计原则 43.2系统总体设计 43.3系统权限设计 63.4系统模块结构图 73.5系统工作流程图 93.6界面设计 3.7数据结构设计 3.8详细设计 5结束语 6参考文献 南昌航空大学科技学院学士学位论文1.1课题研究背景和现状分析目前在我国,有相当一部分企业连入了Internet。其中一些企业已拥有了自己的主页和www服务器,甚至部分企业已能够熟练进行国际子商务。信息技术和与之部分企业还停留在原始计账管理阶段。而随着全球经济信息化的进程和WTO的成科学经营管理观念的迅速传播,使中小企业经营者逐渐认识到转变企业经营管理理理系统便是实际的企业进销存问题与计算机强大数据统计功能相结合的产物。1.2课题内容22需求分析2.1功能需求(1)顾客验证:根据顾客所输入的顾客名和密码,判断是否允许该顾客使用本系(2)提供系统主控平台:不同权限的顾客进入不同的系统主控平台,界面内只显对系统提供的功能,用列表方式来清晰的显示给顾客,并能正确接受顾客的输入。(3)创建商品价格信息文件:顾客根据提示输入商品的序号、名称、各项价格要格信息,存储在系统磁盘的文件中,以便进行管理、查找和备份。(4)增加商品价格信息:可在原有商品价格信息文件的基础上,增加新的商品价得最终折扣价格,并同样作为价格要素项,存入到文件中的对应记录中。(5)删除商品价格信息:提示顾客输入要进行删除操作的商品序号,如果在文件应的文件中加以删除。并提示顾客选择是否继续进行删除操(6)修改商品价格信息:提示顾客输入要进行修改操作的商品序号,如果在文件3(7)查询商品价格:可根据名称查询或根据序号查询,分别提示顾客输入要查询(8)商品价格排行浏览:该项功能要求根据商品的折扣价格(即会员价)进行排(9)管理员的顾客管理:包括顾客的创建、增加、删除、修改和、浏览,管理员创建的顾客登陆信息存储在名为yonghu的磁盘文件中。每当顾客登陆系统时,系统权限的功能,普通顾客和管理员级顾客对于系统的权限不同。2.2运行环境需求一个好的系统必然有一个相对最优的系统配置方案。系统配置要根据用户的实际情况设计,主要依据就是系统的吞吐量和系统相对稳定性的要求。南昌航空大学科技学院学士学位论文43系统设计(1)有效性(2)机密性商品管理系统要设置合适的权限,不允许越权访问系(3)完整性由于数据输入时的意外差错或欺诈行为,网络故障,可失、破损和重复,并且保证信息传送次序的统一。模块进行进一步设计,确定界面总体设计方案、并给出合理的数据结构。5依据需求分析结果,小型商品管理系统可以分为4个模块:顾客验证模块、商品全部子功能。总体来说,商品信息管理模块的主要功能包括如下几个部分。系统自动计算获得,计算公式为:会员价=价格×折扣。该功能可连续输入若干条商品记录,输入商品号为0时则停止输入。入操作。具体录入操作同上,由系统自动计算获得折扣价格即会员价。样由系统自动计算获得,并自动赋值给相应的商品的会员价63、权限管理模块权限管理模块实现对使用小型商品管理系统的顾客的顾客名、密码和权限的管理,以便顾客登录模块进行校验和权限判断。只有管理员能够使用顾客管理模块的各项功能:该模块有如下5个子功能。①初始化用户信息:他建文件存储拥护各项信息,将顾客的各项息信存入磁盘上名为yonghu的文件中,以便顾客登录模块校验判断。本系统的初始管理员用户名为admin,密码为123456,普通顾客用户名为user,密码为123456。②增加用户:管理员级的顾客在登录后可选增加新顾客功能,将新顾客名、密码和权限等各项信息追加至yonghu文件。③删除用户:管理员顾客登录后可选择输入要删除的顾客序号,将该顾客的相关信息从yonghu文件中删除,今后该顾客则无法再继续登录系统。④修改用户:管理员顾客登录后选择修顾客功能,则输入要修改的顾客序号,继续按照系统提示输入要修改的顾客名、密码及权限,使得该顾客再次登入系统时要符合管理员修改后的信息方可登录。修改后的信息保存至yonghu文件。⑤浏览用户信息:将yonghu文件中存储的顾客信息按顾客序号排序显示给管理员,以便管理员对各个顾客进行管理操作。3.3系统权限设计系统权限设计是系统设计的关键环节之一,不同身份的用户对系统有不同的访问权限;在本系统中,有四种不同身份的用户,分别为:系统管理员、采购员、销售员、仓库保管员。通过首页登录时判断用户的不同身份进入不同部分。每一部分为一个模块,它又包含自己的子功能。73.4系统模块结构图依据需求分析结果,小型商品管理系统可以分为4个模块:顾客验证模块、商品信息管理模块、权限管理模块、系统主控平台。系统模块结构图如图所示。商品信息管理模块系统主控平台图3-1系统模块结构图身份验证及权限判断顾客验证模块进入权限对应管理界面图3-2顾客验证模块图83.4.2商品信息管理模块当顾客成功登入系统时,可根据权限不同,调用商品信息管理模块中的部分或全创建商品信息文件创建商品信息文件增加商品信息记录删除商品信息记录商品信息管理模块修改商品信息记录查询商品信息商品价格信息排行图3-3商品信息管理模块图3.4.3权限管理模块权限管理模块实现对使用小型商品管理系统的顾客的顾客名,密码和权限管理,以便顾客登录模块进行校验和权限向判断。初始化用户信息初始化用户信息增加新用户删除用户修改用户浏览用户信息权限管理图3-4权限管理模块图93.4.4系统主控平台给管理员级顾客和普通顾客提供不同的主控平台,便于进行功能选择。系统主控平台管理员主控平台普通顾客主控平台3.5系统工作流程图系统主控平台图开始开始是否是管理员商品信息管理权限管理退出商品信息浏览商品信息查询退出结束(1)考虑到顾客可能出现误操作情况,如果顾客输入的帐号密码错误,则提示顾客(2)顾客使用系统时,输入的密码采用不回显的方式输入,保证顾客登录系统时密(3)当顾客输入的帐号密码相符,则提示顾客登录成功,并告知用户权限是管理员pleaseentertheusername:admin(1)管理员的主要功能包括商品信息管理和顾客管理两大部分,在进行界面设计将其划分为界面中的两块区域,并且在提示顾客操作上较为类似,使得界面友好易用。井井井井井Hyourpowerisuser!3.6.3执行结果界面设计由于C语言对图形化界面的支持比较有限,对于该管理系统来说,首要考虑的是执行结果的清晰易读.对于此类的界面设计主要采用C语言自带的打印函数进行简单处理,将执行结果用列表的方式清晰显示给顾客.创建商品价格信息文件:2ofEmployeewhichneedslookup(under20bitfigure),endwinputnumber,nameandsalary.numinputnumber,nameandsalary.num010theuseryouwillde23.7数据结构设计在对商品的排序浏览,删除和修改等功能模块中该常量用于定义数组长度。2.商品价格信息数据结构用于存放每个商品的序号、名称、价格、折扣和会员各方面信息。/*结构体类型product*/南昌航空大学科技学院学士学位论文typedefstructcharName【20】;/*Fieldofnumber*//*Fieldofname*//*Fieldofpiece*//*Fieldofdiscount*//*Fieldofmemberprice*/明这些字段不是孤立的,而是共同描述一个网站的事物,因此用结构体这种形式来体3.登录顾客信息数据结构顾客描述登录系统的顾客序号、顾客名、密码和权限信息。/*结构体类型user*/typedefstructcharName【20】;charps【8】;4.计算公式会员价=价格×折扣。/*顾客序号*//*顾客名称*//*顾客密码*//*顾客权限*/3.8详细设计3.8.1顾客登录模块提供顾客登录验证功能,但运行小型商品管理系统时,系统提示输入顾客名,并用不回显的方式输入密码,游戏厅提取磁盘上名为yonghu的文件验证顾客名密码是否正确,并提供程序输入顾客名和密码的选择功能。2.源文件定义南昌航空大学科技学院学士学位论文3.函数声明(1)接收顾客输入的顾客名和密码,存放在相应变量中进行判断。(2)判断顾客名和密码是否相符,如果相符,则获得该顾客权限。(3)判断该顾客权限是管理员还是普通顾客,并调用相应系统主控平台。(4)如果顾客名和密码不符,提示顾客选择查询输入或退出系统。(1)顾客登录成功或失败的信息。(2)成功登录的顾客权限。(3)对应当前顾客权限的系统主控平台。程序清单(1):user.h/*==========user.h===-=-=------typedefstructfcharps[8];/*顾客名称*/externvoidDelUser();程序清单(2):login.c/*login.c:顾客登录,判断顾客登录名、密码、权限,根据权限调用相应功能选择界面*//*包含顾客信息头文件包含创建顾客信息、增加、删除、修改、排序的顾客处理程序包含管理员、普通顾客的功能选择界面处理程序*/userTmpS;/*临时存放顾客信息的结构体变量*/-charDataFile[40]="yonghu";/*存放顾客信息的文件名为yonghu*/charrelogin;printf"#WelcometotheProductManagementSystem!#ln");printf("#==----------------------------------\n");/*输入密码,用不带回显的方式保证安全性*/{}/*打开yonghu文件,用来验证登录名和密码*/}/*循环读取文件校验登录名和密码是否正确*/while(fread(&Show,sizeof(user),1,fp)!=(i/*如果通过验证,则将success成功登录标记设为1*/if((strcmp(TmpS.Name,Show.Name)==0)&&(strcmp(Tm/*判断权限,如power的值为1,则是管理员,并调用管理员功能选择界面*/Admin(;/*调用管理员系统主控平台*//*判断权限,如power的值为0,则是普通顾客,并调用普通顾客功能选择界面*/{printf("\nyourpowerisuGuest();/*调用普通客户系统主控平台*/}}}/*如未能成功登录,让顾客选择重新登录或退出*/{printf("nerrorusernameorpassword!inputag{南昌航空大学科技学院学士学位论文}3.8.2商品信息管理模块1.模块描述对若干商品价格记录进行创建商品信息文件、增加商品信息、输出商品信息、修改商品信息、查询商品价格和商品会员加排行浏览6项功能管理。2.源文件定义admin.c管理员系统主控平台及管理员功能调用。guest.c普通顾客系统主控平台及普通顾客功能调用。add.c增加价格信息。add.c增加价格信息。删除价格信息。modnum.c修改价格信息。按商品名称查询价格。按商品序号查询价格。3.计算公式会员价=价格×折扣(memberprice=price*discount)4.函数声明功能:给出管理员顾客的功能选择提示界面,根据管理员顾客的选项调用相应函数。输入:管理员顾客输入要进行操作的数字选项。(1)接受管理员顾客输入的操作选项。(2)系统根据顾客输入的操作选项调用相应的功能函数。南昌航空大学科技学院学士学位论文(3)显示相应函数的操作过程和结果。程序清单(1):shead.htypedefstruct{longNumber;/*Fieldofnumber*/charName[20];/*Fieldofname*/floatprice;/*Fieldofprice*/floatdiscount;/*Fieldofdiscount*/floatmemberprice;/*Filedofmemberprice*/externvoidQueryByName();/*按姓名查询*/externvoidSortByMemberPrice();/*按会员价查询程序清单(2):admin.c/*admin.c:管理员功能选择界面,根据客户选项调用相应函数实现系统功能*/{intchoice=0;/*存放客/*====功能及操作的界面提示==--*/{printf("--------------------------------------------------\n");printf("WelcometoProductManagementSystemprintf("|3.DelProduct)printf("|4.QueryByProductName)printf("|5.QueryByProductNum)printf("|6.ModifyByProductNumber()printf("|7.SortByMemberPrice)(\nprintf("|13.DelUser)printf("---------------------------------------------------\n"printf("#PleaseInputYo功能:给出普通顾客的功能选择提示界面,根据普通顾客的选项调用相应功能。输入:普通顾客输入其可使用功能的数字选处理:(1)接受普通高考输入的操作选项。(2)系统根据顾客输入的操作选项调用相应的功能函数。(3)显示相应函数的操作过程和结果。输出:顾客选项对应的函数的执行结果。{{printf(" \n");printf("printf("|printf("|printf("printf("\nPleaseinputyour{Nn");}功能:初始化商品信息文件,在磁盘文件中存放若干条商品信息记录供顾客查找、浏输入:(1)商品价格信息文件的文件名。(3)输入序号为0,结束输入。(1)接受顾客输入的文件名、创建文件。(2)提示顾客逐条输入商品信息记录。(3)获取顾客输入的信息,通过价格、折扣用公式计算会员价。(4)将完整的商品价格记录存入文件。(5)循环判断顾客输入的商品序号,如为0则结束输入。(6)读取文件,列表显示商品信息内容。输出:列表显示顾客创建并输入内容后的商品信息文件内容。/*creat.c:用于创建商品信息文件*/{FILE*fp=NULL;/*定义指向文件的指针*/productTmpS;/*定义进行操作时存放结构体变量的*/intcount=1;/*计算可输入数据的最大范围*//*====输入存放商品信息的文件名====*/printf("\npleaseinputnewfilenameofproduprintf("inNotice:Nameoffilecan'texceed8characters.suffixcan'texceed3characters,partof/*如顾客没有输入,则循环提示顾客输入*/}/*用二进制写的方式打开文件,即创建文件*//*如果当前文件不存在,提示打开文件失败*/}/*如果成功打开或创建文件,则提示输入商品序号、名称、价格要素等相关信息*/printf("Numberisnotexceed9figures,N/*循环从键盘上读取顾客输入的序号、名称、价格要素等相关信息*/while(count<=SIZE)/*输入序号,如为0则停止输入*/if(TmpS.Number==0)/*用公式自动计算会员价*/TmpS.memberprice=TmpS.pr/*如遇无法写入文件的异常,则加以提示*/if(fwrite(&TmpS,sizeof(pro{printf("nwritefile%sfail!Endwithanykeyn",DataFile);南昌航空大学科技学院学士学位论文printf("\nsorry,numberofdatacannotexc/*==-=在屏幕上显示文件内容==--*/printf("Thedatayouinputissto{printf("\nOpenfile%sfail!Endwithanykey\n",DataFile);printf("\nNumber\tName\tprice\tdiscount\tmemberwhile(fread(&TmpS,sizeof(product),1,fp)!=({printf("\n%ldt%st%4.2ft%4.2ftt%4.2fn",TmpS.Number,TmpS.Name,TmpS.price,TmpS.}文件并保存。输入商品序号为0,结束输入。最后列表显示文件内容。(1)要追加商品信息记录的文件名。(2)若干条商品信息记录。(3)输入序号为0,结束输入。(1)接受顾客输入的文件名、打开文件,当文件不存在时,创建文件。(2)提示顾客逐条输入商品信息记录。(3)获取顾客输入的商品信息,通过价格、折扣用公式计算会员价。(4)将完整的商品价格记录追加存入文件。(5)循环判断顾客输入的商品序号,如为0则结束输入。(6)读取商品信息文件,列表显示商品信息。输出:列表显示顾客追加商品信息记录后的文件内容。/*add.c:添加商品信息记录*/FILE*fp=NULL;/*定义指向文件的指针*/productTmpS;/*定义进行操作时的临时结构体变量*/charDataFile[40]="";/*存储商品信息的文件名*/intcount=1;/*计算可输入数据的最大范围*//*====输入要添加商品信息的文件名==--*/f{fp=fopen(DataFile,"a+");/*a+:当文件存在时,追加,当文件不存在时,创建*//*如果当前文件不存在,提示打开文件失败*/}/*如果成功打开或创建文件,则提示输入商品序号、名称、价格要素等相关信息*/isnotexceed9figures,Nameisf/*循环从键盘上读取顾客输入的序号、名称、价格要素等相关信息*//*输入序号,如为0则停止输入*/printf("\ninput'number=0'meansendinput.\nif(TmpS.Number==0)/*用公式自动计算商品会员价*/TmpS.memberprice=TmpS.pr/*如遇无法写入文件的异常,则加以提示*/if(fwrite(&TmpS,sizeof(pro{/*如果输入的数据量超过最大允许的范围,则提示数据不能录入*/printf("\nsorry,numberofdatacannot/*====在屏幕上显示文件内容====*/printf("Contentasfollow:\n");if(fp=NULL)}printf("\nNumber\tName\tpriceltdiscountmemberpwhile(fread(&TmpS,sizeof(product),1,fp)!=(printf("n%ldt%st%4.1fit%4.1ft%4.lfin",TmpS.Number,TmpS.Name,TmpS.price,TmpS.d}}(5)voidDelRe功能:删除。根据顾客输入的文件名打开商品价格信息文件,进行删除记录操作,如没有文件存在,这提示打开文件失败。(1)要删除商品价格信息记录的文件名。(2)要删除商品的商品号码。(3)是否继续删除的选项字母。(1)接收顾客输入的文件名、用追加方式打开文件,当文件不存在时,提示错误。(2)提示顾客输入要删除商品的商品序号。(3)将文件中对应的商品记录删除。(4)将进行删除操作后的文件进行保存。(5)读取文件,列表显示文件内容。*delete.c:删除商品信息记录*//*存放顾客输入的要删除商品序号*/FILE*fp;/*====fp指针指向存储数据的文件名====*/printf("\npleaseinputthenwhile(*DataFile==(`0')){printf("\npleaseinputthena;{}循环后数组中即为去掉了要删除记录后的剩余记录*/while((fread(&TmpS,sizeof(product),1,fp))!=({s[recNumber].Number=TmpS.Number;s[recNumber].memberprice=TmpS.memberprice;}}/*===将删除后的剩余结构体记录写入文件====*/if(fp==NULL){}{}}/*====显示删除后的文件====*/if(fp==NULL){printf("nOpenfile%sfail!Endprintf("\nNumber\t\tName\tprice\tdiscount\tmemberprice\n");while(fread(&TmpS,sizeof(product),1,fp)!=(printf("'n%ldt%st%4.1ft%4.1ft%4.1fn",TmpS.Number,TmpS.Name,TmpS.price,TmpS.di}/*询问顾客是否继续删除*/南昌航空大学科技学院学士学位论文if(next='y'l|next=='Y')gotobegin;(1)要修改商品信息记录的文件名。(2)要修改商品的商品号码。(3)要修改的各项商品记录的内容值。(4)是否继续修改的选项字母。处理:(1)接收顾客输入的文件名、用读的方式打开文件,当文件不存在时,提示错误。(2)提示顾客输入要修改商品的商品序号。(3)提示顾客输入要修改的各项内容值。(3)提示顾客输入要修改的各项内容值。(5)根据顾客输入的价格、折扣计算并修改会员价。(6)将进行修改操作后的数组写入文件并进行保存。(7)读取文件,列表显示修改后的文件内容。输出:列表显示顾客修改商品信息记录后的文件内容。/*****************************************/*modnum.c:修改商品信息记录*//*****************************************flongmodnum;/*存储顾客输入的要修改的商品序号*/productTmpS;/*定义进行操作时的临时结构体变量*/products[SIZE];/*SIZE,在shead.h头文件中定义的常量,值为100*//*DataFile存储商品信息的文件名,next为是否进行下一次删除操作的选项*/FILE*fp;/*====fp指针指向存储数据的文件名====*//*提示顾客输入要进行修改记录的文件名*//*提示顾客输入要进行修改记录的文件名*/{}/*以读的方式打开文件,如文件不存在,提示错误*/{printf("pleaseinputthe/*输入要修改记录的各项内容值*/Number=modnum;/*用公式自动计算商品会员价*/memberprice=price*d/*将文件中要修改的信息存入结构体数组*//*循环将文件数据读入结构体数组,如文件中的数据商品号和要修改的商品号不符,则原样写入数组,如文件中数据的商品号和要修改商品号匹配,则根据顾客输入的各项修改内容重新赋值,即修改,并写入数组*while((fread(&TmpS,sizeof(product),1,fp))!=(s[recNumber].discount=TmpS.discount;s[recNumber].memberprice=TmpS.membes[recNumber].Number=Number;s[recNumber].memberprice=memberprice;/*====将修改后的结构体数组记录写入文件====*/if(fp=NULL){}{{/*====显示修改后的文件====*/{}printf("\nNumber\titName\tprice\tdiscounttmemberpriceln");{printf("n%ldt%st%4.1ft%4.1ft%4.1fn",TmpS.Number,TmpS.Name,TmpS.price,TmpS.di}/*提示是否进行下一次修改*/if(next=='y'|lnext=='Y')gotobegin;}功能:按名称查询。根据顾客输入的文件名打开商品价格信息文件,进行按名称查询操作,如没有文件存在,则提示打开失败。(1)要查询商品价格信息记录的文件名。(2)要查询商品的商品名称。(3)是否继续删除的选项字母。(1)接收顾客输入的文件名、用读服输打开文件,当文件不存在时,提示错误。(2)提示顾客输入要查询商品的商品序号。(3)循环匹配查找对应记录。(4)如查找到,列表显示查找结果。(5)提示顾客是否进行下次查找。 输出:列表显示顾客查找到的价格信息记录。/*=======qname.c:按名称查询商品信息记录===voidQueryByName()/intresult=0;/*"result=1"说明查询成功,反之查找失败*/productTmpS;*定义进行操作时的临时结构体变量*/charXingming[20];/*用户输入要查询的商品名称*//*DataFile存储商品信息的文件名,next为是否进行下一次删除操作的选项*//*====fp指针指向存储数据的文件名====*//*提示用户输入要查询的文件名*/printf("\npleaseinputthenameofproductinformationfile./*提示用户输入要查询的文件名*/{printf("\npleaseinputthenameofproductinformationfile.}/*===提示用户输入要查询的商品名称==--*//*以读方式打开文件*/{printf("nOpenfile%sfail!Endwithanykey.\n",DataFile);}/*循环查找和输入名称相匹配的商品信息记录,如果查找到,则输出结果*/{if(fread(&TmpS,sizeof(product),1{if(stricmp(TmpS.Name,Xingming)==0)printf("\nFind:)\n");printf("\nNumber=%ldName=%sprice=%4.1fdiscount=%4.1fmemberprice=%4.1f\n",TmpS.Number,TmpS.Name,TmpS.price,TmpS.discount,Tmpresult=1;/*"result=1"说明找到了该商品的对应信息.*/}}/*提示用户已查到结果并询问是否继续查找*/{='Y')gotobegin;操作,如没有文件存在,则提示打开失败。(1)要查询商品价格信息记录的文件名。(2)要查询商品的商品号码。(3)是否继续删除的选项字母。(1)接收顾客输入的文件名、用读服输打开文件,当文件不存在时,提示错误。(2)提示顾客输入要查询商品的商品序号。(3)循环匹配查找对应记录。(4)如查找到,列表显示查找结果。(5)提示顾客是否进行下次查找。/*==qseatnum.c:按序号查询商品信息=----------*/南昌航空大学科技学院学士学位论文intresult;/*"result=1"说明查询成功,反之查找失败*/printf("\npleaseinputthenameoffilewheredataisstored,endwithenterkey.\n");while(*DataFile==("0'))}/*==-提示用户输入要查询的商品序号=---*/printf("PleaseinputthenumberofEmplif(fp=NULL){perror("Openfilefail"}/*循环查找和输入序号相匹配的商品记录while(feof(fp)==0)/*=---Functioif(fread(&TmpS,sizeof(product),{if(TmpS.Number==seatnum){printf("\nFind:)\n");memberprice=%5.2fn",TmpS.Number,TmpS.Name,TmpS.price,TmpS.discount,Tmpresult=1;/*"result=1"说明找到了/*提示用户已查到结果并询问是否继续查找*/{}(9)voidSortByheji()功能:按会员价排序浏览。根据顾客输入的文件名打开商品价格信息文件,进行按会员价排序浏览操作,如没有文件存在,则提示打开失败。(1)要排序商品价格信息记录的文件名。(1)接收顾客输入的文件名、用读服输打开文件,当文件不存在时,提示错误。(2)用选择法进行排序。(3)将排序结果写入文件,并列表显示。输出:列表显示按会员价排序后的价格信息记录。/*smemberprice.c:按商品会员价循序排序*/productTmpS;/*定义进行操作时的临时结构体变量*/FILE*fp;/*====fp指针指向存储数据的文件名====*//*提示顾客输入要进行排序的文件名*/printf("npleaseinputthenameofproduct/*提示顾客输入要进行排序的文件名*/printf("\npleaseinputthenameofproductinformationfile./*以读的方式打开文件,如文件不存在,提示错误*/{1/*将文件中要排序的信息存入结构体数组*/while((fread(&TmpS,sizeof(product),1,fp))!=(s[recNumber].discount=TmpS.discount;/*====如果文件中有记录,则将各条记录按合计值排序===*/{/*===用选择排序法进行按合计的排序===-*/{{if(s[k].memberprice<s[j].memberprice)k=j;TmpS.memberprice=s[k].memberprice;s[k].discount=ss[k].memberprice=s[s[i].price=TmpS.ps[i].memberprice/*==-将排序好的结构体记录写入文件==--*/}{/*====显示排序后的文件=-==*/printf("'nOpenfile%sfail!Endwithanykey\n",DataFile);}printf("\nNumber\tName\tpriceltdiscount\tmemberprice\n");while(fread(&TmpS,sizeof(product),1,fp)!=({printf("\n%ldt%st%4.2f\t%4.2f\t%4.2fin",TmpS.Number,TmpS.Name,TmpS.price,TmpS.d}cuser.c创建顾客信息文件adduser.c添加新顾客munum.c按序号修改顾客信息sunum.c按序号对顾客信息排序浏览(1)顾客信息文件的文件名。(2)若干条顾客信息记录。(3)输入序号为0,结束输入。(1)接收顾客输入的文件名、创建文件。(2)提示顾客逐条输入顾客信息记录。(3)获取顾客输入的记录信息。(4)将完整的顾客信息记录存入文件。(5)循环判断顾客输入序号。(6)读取文件,列表显示文件内容。输出:列表显示顾客创建并输入内容后的文件内容。/*cuser.c创建用户信息文件*/charDataFile[40]="yonghu";*存储顾客信息的文件名*/intcount=1;/*计算可输入数据的最大范围*//*如果当前文件不存在,提示打开文件失败*/if(fp=NULL){}则提示输入序号、用户名、密码、权限等相关信息*//*循环从键盘上读取用户输入的用户相关信息*/while(count<=SIZE){if(TmpS.Number==0)南昌航空大学科技学院学士学位论文if(fwrite(&TmpS,sizeof({}printf("\nsorry,numberofdatacannotexceed%d\n",SIZE);/*====在屏幕上显示文件内容==--*/printf("inNumbertName\tpsltpowewhile(fread(&Show,sizeof(user),1,fp)!=(iprintf("\n%ldt%st%st%d\n",Show.Number,Show.Name,Show.ps,Show.p/*printf("n%ld\t%s\t%5.2ft%5.2ft%5.2ft%5.2f\t%5.2f\n",Show.Number,Show.Name,Show.ow.jiangjin,Show.baoxian.Show.shuijin,Show.heji);功能:增加顾客。根据顾客输入的文件名打开顾客信息文件,进行添加记录操作,如没有文件存在,则创建(1)要追加顾客信息记录的文件名。(2)若干条顾客信息记录。(3)输入序号为0,结束输入。(1)接收顾客输入的文件名、打开文件,当文件不存在时,创建文件。(2)提示顾客逐条输入顾客信息记录。(3)获取顾客输入的记录信息。(4)将完整的顾客信息记录存入文件。(5)循环判断顾客输入序号,如为0则就是输入。(6)读取文件,列表显示文件内容。输出:列表显示追加顾客信息记录后的文件内容。/*adduser.c增加用户信息记录*/charDataFile[40]="yonghu";/*存储用户信息文件名*/intcount=1;/*计算可输入数据的最大范围*/fp=fopen(DataFile,"ab+");/*a+:当文件存在时,追加,当文件不存在时,创建*//*如果当前文件不存在,提示打开文件失败*/}/*如果成功打开文件,则提示输入用户相关信息*/while(count<=SIZE)printf("'ninputnumber=0'meansenif(fwrite(&TmpS,sizeof(}printf("\nsorry,numberofdatacannotexceed%/*====在屏幕上显示文件内容====*/if(fp==NULL)while(fread(&Show,sizeof(user),1,fp)!=(i{功能:删除。根据顾客输入的文件名打开顾客信息文件,进行删除记录操作,如没有文件存在,则提示打开文件失败。(1)要删除顾客信息记录的文件名。(2)要删除顾客的顾客号码。(3)是否继续删除的选项字母。(1)接收顾客输入的文件名、用追加方式打开文件,当文件不存在时,提示错误。(2)提示顾客输入要删除顾客序号。(3)将文件中对应的顾客记录删除。(4)将进行删除操作后的文件进行保存。输出:列表显示顾客删除顾客信息记录后的文件内容。{users[SIZE];/*SIZE,在user.h头文件中定义的常量,值为10南昌航空大学科技学院学士学位论文FILE*fp;/*====fp指针指向存储数据的文件名====*/if(fp==NULL)}printf("pleaseinputtheuser'seatnumwhichyouwilldelete:");printf("theuseryouwilldeleteis:%ld\n",delnum);while((fread(&TmpS,sizeof(user),1,fp))!=(/*====将删除后的结构体记录写入文件==--*/if(fp==NULL){perror("Setupfail");}if(fwrite(&s[i],sizeof(}/*====显示删除后的文件=--=*/}while(fread(&TmpS,sizeof(user),1,fp)!=({printf("\n%ld\t%st%st%d\n",TmpS.Number,Tmp}printf("\nGoon?(y/n)");}功能:修改。根据顾客输入的文件名打开顾客信息文件,进行修改记录操作,如没有文件存在,则提示打开文件失败。(1)要修改顾客信息记录的文件名。(2)要修改顾客的顾客号码。(3)要修改的各项顾客记录的内容值。(4)是否继续修改的选项字母。(1)接收顾客输入的文件名、用读的方式打开文件,当文件不存在时,提示错误。(2)提示顾客输入要修改顾客序号。(3)提示顾客输入要修改的各项内容值。(4)将文件中对应的顾客记录进行修改。(4)将进行修改操作后的数组写入文件并进行保存。(5)读取文件,列表显示修改后的文件内容。输出:列表显示顾客修改价格信息记录后的文件内容。/*munum.c按用户序号修改用户信息*/{charps[8];users[SIZE];/*SIZE,在userh头文件中定义的常量,值为100*/if(fp=NULL){printf("pleaseinputtheuser'seatnumwhichyouwillmodify:");printf("theuseryouwilldeleteis:%ld\n",modnum);Number=modnum;/*将文件中要修改的信息存入结构体数组*/while((fread(&TmpS,sizeof(user),1,fp))!=(s[recNumber].Number=TmpS.Num/*===将删除后的结构体记录写入文件====*/if(fp==NULL){{if(fwrite(&s[i],sizeof({南昌航空大学科技学院学士学位论文}printf("thefileaftermodifyis:\printf("\nNumber\f\tName\tps'tpower\while(fread(&TmpS,sizeof(user),1,fp)!=({printf("\n%ld\t%slt%sit%d\n}}排序浏览操作,如没有文件存在,则提示打开文件失败。(1)接收顾客输入的文件名、用读的方式打开文件,当文件不存在时,提示错误。(2)用选择法进行排序。(3)将排序结果写入文件,并列表显示。输出:列表显示按顾客序号排序后的价格信息记录。/*sunum.c按顾客序号排序浏览顾客信息*/{FILE*fp;/*====fp指针指向存储数据的文件名====*/}/*将文件中要排序的信息存入结构体数组*/while((fread(&TmpS,sizeof(user),1,fp))!=(}/*====如果文件中有记录,则将各条记录按序号排序==-*/{/*===用选择排序法进行按序号的排序=--*/{if(s[k].Number<s[j].Number)k=j;TmpS.Number=s[k].Nuf/*=--将排序好的结构体记录写入文件==--*/printf("nSetupfile%sfail!{if(fwrite(&s[i],sizeof(/*====显示排序后的文件=--=*/printf("\nNumber\tName\tps\tpowewhile(fread(&TmpS,sizeof(user),1,fp)!=(南昌航空大学科技学院学士学位论文3.8.4系统主控平台1.模块描述给管理员或顾客提供一个人机接口,提示用户输入代表功能的选项代码进行系统提供的功能选择,以调用对应的管理功能。2.平共处源文件定义admin.c:管理员功能选择。Guest.c:客户功能选择。3.函数声明公效率,增强公司的市场竞争力和规范企业内部管理,有着重要的作用。本系统使用标准C语言进行开发实现,总体思想基于结构化的程序设计。应用循存储和操作用C语言中对文件的支持来实现,包括对文件的打开、读写等基本操作。以光有书本上的一些理论知识是远远不够的!通过实践我发现需要学习的东西还有很现所要求的基本功能。总体来说,本系统的设计具有良好的扩展能力并且便于维护,使用较为简便,但是由于时间和其他方面的限制原因,系统还有很多方面需要改我相信在以后的学习生活中定能一步一步的去克服这些,使本系统功能越来越完善。南昌航空大学科技学院学士学位论文6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论