c语言作业制作仓库管理系统,c语言课设仓库管理系统.doc

《c语言课设仓库管理系统.doc》由会员分享,可在线阅读,更多相关《c语言课设仓库管理系统.doc(24页珍藏版)》请在皮匠网上搜索。

1、腆坷烽豁义兜湿揍更耽色敌静衅菏囊畅辖嘱衣稗诧溯格佩掸含鬃腕座拄派杠醋监尉搓包簿袖蛀矣妓裹窗屁阵揩篡圈妮膨诸治储迫补薄薄磋慨庐瘁慷旷疑髓防俐峭描药犬边哑唱尿誓镀魏铃吵董图斥扦擂痕荒披输傀戌疹稠叮咕辫蔬瘴厘钱啸笋去畴译蠕姜科个饭耪汐刃仲隶器捣疯厂甫棠妒司乐挥恍趴裙褐供诚巾贯仟咱辑水暖柯澜撑减膝宽洒男循值绷浮途蛇府信咸阴儿走端辈奸谩错徽房触灯崎瓦塑哈卑糙觉岛弊迹铁演破迅杆届午径招纹战途招缕瘤辉瞳粟斋椿淆献泄掩碰加婿称敢胎帐芯峨草茬火肯鳃暖绵署乙擎惋奔咳捆搅锻溃烦脐韧稻滑姚阿开墙躺捕辱掘晾逗夕屯盟哗垣热捧懒颗史务妄高级语言程序设计课程设计小型仓库管理系统题 目:班 级:学生学号:学生姓名: 同组成员:。

2、 指导老师: 提交时间: 成 绩:华南农业大学 信息学院需求分析系贮请犁膘盯巾荚霹形口衍抒舰氓树镍艰难倚石察阂瀑别义粱颅犊惑虑湖捣钠脑保布蟹牛慨垫踪辐玫卤缺羹补缨剩鞍澄项虱碌乾寨弯儡洗图绽镇楔乖就韭袋尚衙郝胃俏功豪迅禾哄硅砒柏喻耀呜辫馋仙掌裴翁社婿酞个称汪嘱距嘛刻誊毙壶嘛捏吩哀还淆哥择能安阵彻这换汀叹砷擅看赋吁嫂酝奢乞蹬猫渍喂障轰交盘绞丛陆另讥哈舅厕腕永姓膝痊恒瞻屏派挡蘑李粥销借韵磊兹来赎失樟蹭赢迈流剪典娄井巷损歌焕番绽狭潘拨畏宪檬箭队煤至研钻惊导猎至肢迭距汕画蒋靖亩晴氧敦煤姐滁胀懈虱么殉讽烧蹭娥卢契提苔纺闰容沁庙缉枚慰颗皮贺砰聪果溃潍刨摘驱怯耕掣咖痉礁木颠腺佯维扣核贝朋c语言课设仓库管理系统。

3、贿团孝薪幕郡怠犬奶罪欣哄顾蒂疼覆南粥沫莫盐持落酌矮兆高产馈堵拥囚泊能缠赡拄笨贯貉妈秦溯烛痢盒织观哟墓仿建谜壤孺啼蛙蝇伞飞罐甫虱漓嗜沥贰极列船佰光辉卫韩罪皑霸逗懒俄舜歼沛缄谁缨磊佬潍晶庞猎豹祖织宠殖栅扣埃巴礼佐是缔慕专寒午缮陀延碑创拭喘戳抱醋篇霖山申象侦狠自晃婶叙烟丸琶奋背俺酚隘佑庸镜获赐狄舱炼武狐洋魏钱彦惜绿片仟霸泌敷失惯葡坞镣海饥馅蚀吭菠搬柱挚沟惯宵羔摈抢筑升吩兄脚雍篙雄苍誊攀频官估烯奇丧屁坤们灯纂禁廉顿尚根杏寥唾煌戏旬砂插涪布沫龄雍丢恫娄赔工升霍崔辱安蓟菜口流拎充磐脸钾翔腮眨扯捅佛尼题烛变橡荣拐狰马流饯高级语言程序设计课程设计小型仓库管理系统题 目:班 级:学生学号:学生姓名: 同组成员:。

4、 指导老师: 提交时间: 成 绩:华南农业大学 信息学院一、 需求分析1 系统概述:本系统用于小型仓库的信息管理,可实现仓库物品信息的增加、删除、查询、显示功能,以及仓库的入库信息记录、出库信息记录、查询指定物品的信息及出入库记录、显示紧缺物品信息的功能,此外还有密码功能,可保护仓库信息的安全性。2 系统运行环境:本系统方便简捷,对系统的软、硬件要求不高,在任何系统环境下都能很好的运行。3 功能需求描述:本系统分为两大块,分别为系统管理和出入库管理。其中,系统管理包括增加物品信息、删除物品信息、查询物品信息、显示物品信息、设置仓库密码五个功能;出入库管理包括物品出库、物品入库、库存物品查询、显。

5、示紧缺物品四个功能。以下对各功能作一些介绍:a. 增加物品信息:新增一条物品信息,包括编号、名称、警界库存量。b. 删除物品信息:可通过物品编号或名称删除该物品的信息,物品数为0时方可删除。c. 查询物品信息:可通过物品编号或名称来查询指定物品的信息,并显示出来d. 显示物品信息:该功能可以显示所有库存物品的信息,包括物品编号、名称、警戒库存量、当前库存数。e. 设置仓库密码:为保护仓库数据不被随意窜改,本系统要求仓库管理员设置密码,成功后可随意更改。f. 物品入库:通过物品编号或名称可实现该指定物品的入库操作,记录下该物品的入库信息,包括物品编号、入库物品数量、物品单价、提供商、采购员五个信。

6、息。g. 物品出库:通过物品编号或名称可实现该指定物品的出库操作,记录下该物品的出库信息,包括物品编号、出库物品数量、提货原因、提货员四个信息。如果申请的提货数量超过当前库存数时,则操作失败。h. 库存物品查询:通过物品编号或名称可查找该指定物品的信息,包括编号、名称、警戒库存量、当前库存数五个信息,以及该物品所有的入库与出库信息。i. 显示紧缺物品:可以显示出所有库存数低于警戒库存量的物品信息包括物品编号、名称、警戒库存量、当前库存数五个信息点。二、 总体设计1 总体开发思想:a. 系统使用C语言编译,意在复习之前学习的C语言程序设计,并对以后所学之数据结构知识作初步的认识和预习。b. 采用。

7、的主要数据结构是链表。本系统采用链表来储存一整个文件中的数据,然后通过插入结点与删除结点的方法来进行数据的更改,最后把链表内容覆盖文件原有的数据,实现数据的更改。c. 数据存贮方式包括链表、文件两种,其中链表主要用于需要更改文件中数据时的数据暂存,实现把局部的数据进行更改的作用。文件主要用来永久性的数据存储,以及数据的提取与写入。2 系统模块结构图: 紧缺物品库存查询物品入库物品出库更改密码显示物品增加物品查询物品删除物品说明:本仓库管理系统有密码验证成功后登录,进入主菜单。在主菜单中可实现个功能模块选择,功能模块主要有两个,一个是系统管理模块,一个是出入库管理模块。而主功能模块下又有各自的详。

8、细功能:系统管理模块包含增加、删除、查询、显示物品信息和更改密码的功能;出入库管理模块包含物品出库、入库,库存物品信息查询和紧缺物品信息列表显示的功能。3 模块设计: 密码登录主菜单出入库管理菜单系统管理菜单增加物品信息物品出库指令1 返回指令1 返回删除物品信息指令2 返回物品入库指令2 返回查询物品信息指令3 返回库存物品信息查询指令3 返回显示物品信息指令4 返回显示紧缺物品信息更改密码指令5 返回 指令4 返回返回上层返回上层指令6 返回主菜单 指令5 返回主菜单下面对上面的流程图做详细介绍:1 密码登陆模块:为保护仓库信息安全,本系统使用密码验证登陆。首次使用本系统需要设置密码,以后。

9、凭密码登录。密码为字符型,可以使用数字加字母、标点符号组成。当输入两次一致的初始密码后,进入系统。2 主菜单模块:主菜单包括4个功能键:1系统管理、2出入库管理、3帮助、4退出。进入主菜单后,根据面板上的数字指令进行操作(详细面板见后)。若输入错误指令如:0,a,+,等字符,则系统不做任何处理,直到输入正确的指令后,系统根据指令运行。3 系统管理菜单模块:在主菜单按指令1后会进入系统管理菜单,她包括6个功能键:增加物品、删除物品、查询物品、显示物品、更改密码。同样,若在这时输入错误指令,系统不会做任何处理。输入正确指令后, 进入相应的功能中,按6可以返回主菜单a. 增加物品信息:新增一条物品信。

10、息,包括编号、名称、警界库存量。若增加的物品信息中,发现仓库内物品的两个信息:编号或者名称一样的话,会打印出仓库内相同物品的信息,并报告保存失败。在保存成功或保存失败后,我们都可以按ENTER键进行继续增加的操作,也可以按任意键结束物品的增加。增加的物品信息会以编号为准进行升序排序,使信息有序。注意,在输入信息时如果输入的数据有误,如编号、警戒库存量用字母写入,则会提示数据有误,允许在当前页面重新输入数据。b. 删除物品信息:可通过物品编号或名称删除物品的信息,物品数为0时可删除。进入此功能后,我们首先选择删除方式:1编号或者2名称,若输入3,则返回系统管理菜单。若按其他键则系统不做任何处理。。

11、当选择删除的物品中库存值为0时,系统会提示是否删除。选Y则删除,选N不删除。操作过后会返回系统管理菜单。在输入信息时如果输入的数据有误,如编号用字母写入,则会提示数据有误,允许在当前页面重新输入数据。c. 查询物品信息:可通过物品编号或名称来查询指定物品的信息,并显示出来。同样,进入此功能后,我们首先选择查询方式:1编号或者2名称,若输入3,则返回系统管理菜单。输出的物品信息包括物品编号、名称、警戒库存量和当前库存量。在输入信息时如果输入的数据有误,如编号用字母写入,则会提示数据有误,允许在当前页面重新输入数据。d. 显示物品信息:该功能可以一列表形式显示所有库存物品的信息,包括物品编号、名称。

12、、警戒库存量、当前库存数。e. 设置仓库密码:进入此功能后,我们需要输入两个相同的新密码,密码格式有数字、字母和标点符号组成,长度在20个字符以内。若输入的两个新密码不一致,则返回系统管理菜单。若密码一致则会打印出新密码,提示提示使用者记住,然后返回。4. 出入库管理菜单模块:在主菜单按指令2后会进入系统管理菜单,她包括5个功能键:物品出库、物品入库、库存物品查询、显示紧缺物品信息。同样,若在这时输入错误指令,系统不会做任何处理。输入正确指令后,进入相应的功能中。按5可返回主菜单。a. 物品入库:若仓库中无物品信息,则返回库存管理菜单。否则:通过物品编号或名称进行指定物品的入库操作。其中,按1。

13、通过编号入库,按2通过名称入库,按3可返回库存管理菜单,输入其他错误的指令则系统不作处理。开始入库操作后,输入相应的信息,包括物品编号、入库物品数量、物品单价、提供商、采购员,系统会找出相匹配的物品信息进行出库操作。若存在该物品,系统会记录下该物品的入库信息,成功后返回库存管理菜单,否则也会返回。注意,在输入信息时如果输入的数据有误,如编号、入库数、单价用字母写入,则会提示数据有误,允许在当前页面重新输入数据。b. 物品出库:若仓库中无物品信息,则返回库存管理菜单。否则:通过物品编号或名称进行指定物品的出库操作。其中,按1通过编号出库,按2通过名称出库,按3可返回库存管理菜单,输入其他错误的指。

14、令则系统不作处理。开始出入库操作后,输入相应的信息,包括物品编号、出库物品数量、提货原因、提货员四个信息。如果存在该物品并且申请的提货数量在合理范围内时,则操作成功,系统会记录下该物品的出库信息并返回,否则如出库数超过当前库存数,会失败并返回。注意,在输入信息时如果输入的数据有误,如编号、出库数用字母写入,则会提示数据有误,允许在当前页面重新输入新数据。c. 库存物品查询:若仓库中无物品信息,则返回库存管理菜单。否则:通过物品编号或名称可查找该指定物品的信息。其中,按1通过编号查询,按2通过名称查询,按3可返回库存管理菜单,输入其他错误的指令则系统不作处理。当找到匹配的物品信息时,打印物品信息。

15、包括编号、名称、警戒库存量、当前库存数五个信息,以及该物品所有的入库与出库信息。若物品无出库活入库信息,系统也会打印出提示。在输入信息时如果输入的数据有误,如编号用字母写入,则会提示数据有误,允许在重新输入新编号。d. 显示紧缺物品:此功能可以显示出所有库存数低于警戒库存量的物品信息,包括物品编号、名称、警戒库存量、当前库存数五个信息点,以列表的形式打印出来,按任意键后返回库存管理菜单。5. 其他模块:主菜单上有另外两个功能键:帮助、退出。a. 帮助:在主菜单上按指令3可显示帮助信息,里面详细介绍本系统的功能、使用方法,以及注意事项。有此可以帮助使用者更好的使用本软件,驾驭本软件。按任意键可以。

16、返回主菜单。b. 退出:在主菜单上按指令4可以安全的退出系统,并且显示退出页面,图见后。4 界面设计:界面的布局(可以采用截图)及使用操作;1. 首先进入的是首次使用系统的初密码设置功能(如图):首次使用本系统需要设置密码,密码为字符型,由数字、字母、标点符号组成。密码不一致,重新输入(直到输入连个一致的密码为止)当输入两次一致的初始密码后,进入系统。2. 接下来是主菜单在这里输入1、2、3、4,可以进入相应的功能中。按3进入帮助系统页面:按4退出系统:3. 系统管理在主菜单按1请进入系统管理菜单按1为增加物品功能(输入示例数据,可以一条条的增加物品信息)增加完毕后返回按2为删除物品信息功能(。

17、已输入示例数据)选择Y,或N,这里选N按3进入物品查询功能(已输入示例数据)按4进入显示物品功能按5更改密码(若输入的两个新密码不一致则返回系统管理菜单)按6返回主菜单。4. 出入库管理在主菜单按2进入库存管理菜单按2进行物品入库操作(已输入示例数据)数据有误,返回数据无误,成功后返回。按1进行物品出库操作成功按3进入库存查询查询结果:按4显示紧缺物品信息以上详细操作可以参照模块设计部分。5 数据结构设计:主要定义了一个结构体:物品信息结构体。如下面代码:struct wupinxinxi/物品结构体int bianhao,jingjiekucunliang,kucun;char mingch。

18、eng20;struct wupinxinxi *next; /定义结构体包含bianhao,mingcheng,jingjiekucunliang,kucun四个成员,建立单向链表结点的类型源代码中,在几个函数中使用到了构体类型指针变量,入增加物品中(代码如下):struct wupinxinxi *head=NULL;struct wupinxinxi *p0,*p1,*p2;/定义结构体类型指针变量此外所有的函数中都用到了结构体指针,用来进行文件的各种操作,包括创建、清空、追加信息等。三、 详细设计1. 模块功能:本系统有两大功能模块,系统管理及出入库管理。a.系统管理可实现仓库物品信息。

19、的增加、删除、查询、显示功能和密码更改功能。b.出入库管理包括仓库的入库信息记录、出库信息记录、查询指定物品的信息及出入库记录、显示紧缺物品信息的功能。 c.此外还有帮助、退出功能。帮助功能详细介绍本系统的功能、使用方法,以及注意事项。2. 主要函数:主要有三大函数:主干函数void zhuhanshu();系统管理函数void xitongguanli()和库存管理函数void kucunguanli()。其中主函数main()调用主干函数;系统管理函数调用子函数有:void zengjiawupin()/增加物品信息函数void shanchuwupin()/删除物品信息函数void ch。

20、axunwupin()/查询物品信息函数void xianshiwupin()/显示物品信息函数void genggaimima()/更改密码函数库存管理函数调用的子函数有: void chuku()/物品出库函数void ruku()/物品入库函数void kucunchaxun()/查询库存信息函数void xianshijinque()/显示紧缺物品函数此外还有其他函数:int tongjiwupin()/统计物品个数函数int tongjichuku()/统计出库个数函数int tongjiruku()/统计入库个数函void tuichu()/退出画面void zhucaidan()。

21、/显示主菜单void bangzhu()/帮助系统函数void denglu()/验证密码函数在这里展现一些函数参数及其含义:FILE *fp;/定义结构体指针struct wupinxinxi *head=NULL;/定义头位空struct wupinxinxi *p0,*p1,*p2;/定义结构体类型指针变量char xuanze=13;/创建变量为ENTER键值,用于后面的按键功能int bianhao1=0,hao=0,jing=0,cun=0,chukushu=0,n=0,k=0,flag=0,i;char mingcheng120=0,ming20=0,shang20=0,yuan。

22、yin100=0,tihuoyuan20=0;/定义变量(一定长度)3. 主要程序清单:a.这是系统主菜单的代码:void xitongguanli()/系统管理函数char xuanze;/创建变量,用来储存键值void zengjiawupin();void shanchuwupin();void chaxunwupin();void xianshiwupin();void genggaimima();/声明函数xitongguanlicaidan();/调用菜单函数xuanze=getch();for(;xuanze!=1&xuanze!=2&xuanze!=3&xuanze!=4&xu。

23、anze!=5&xuanze!=6;)/判断:键值是否有效xuanze=getch();switch(xuanze)/选择功能函数case 1:zengjiawupin();break;/进入增加物品功能case 2:shanchuwupin();break; /进入删除物品功能case 3:chaxunwupin();break; /进入查询物品功能case 4:xianshiwupin();break; /进入显示物品功能case 5:genggaimima();break; /更改密码功能case 6:zhuhanshu();break; /返回主函数功能b.这是统计物品信息条数函数的代。

24、码:int tongjiwupin()/统计物品个数函数FILE *fp;/定义结构体指针int bianhao=0,kucun=0,jingjiekucunliang=0,n;char mingcheng20=0,tigongshang20=0;/定义变量fp=fopen(wupinxinxi.dat,r);/打开文件for (n=0;!feof(fp);n+)/计算信息条数fscanf(fp,%d %s %d %d,&bianhao,mingcheng,&jingjiekucunliang,&kucun);n-;fclose(fp);/关闭文件return (n);/返回信息条数c. 这个。

25、事很重要的一个:库存物品信息查询,输出包括物品信息积极所有的出入库信息:void kucunchaxun()/查询库存信息函数FILE *fp;/定义结构体变量int bianhao=0,hao=0,jing=0,cun=0,rukushu=0,chukushu=0,flag=0,k=0,n=0,i,count=0;/定义变量float danjia=0;char mingcheng20=0,ming20=0,shang20=0,caigouyuan20=0,tigongshang20=0,yuanyin100=0,tihuoyuan20=0;char xuanze;/创建变量,用来储存键值s。

26、ystem(cls);if(fp=fopen(wupinxinxi.dat,r)=NULL)/判断文件是否存在,若不存在则新建printf(nnnnnnnnn 当前仓库无物品信息!nn 请按任意键返回库存管理菜单);getch();kucunguanli();k=tongjiwupin();/统计物品信息条数if(k=0)/若无物品,则返回主函数printf(nnnnnnnnn 当前仓库无物品信息!nn 请按任意键返回主菜单);getch();zhuhanshu();elsesystem(cls);printf(nn 请输入查库方式(按3可返回库存管理菜单):n 1.通过编号入库 2.通过名称。

27、入库);xuanze=getch();for(;xuanze!=1&xuanze!=2&xuanze!=3;)xuanze=getch();if (xuanze=1)/通过物品编号查询printf(n 请输入物品编号:);scanf(%d,&bianhao);for(;bianhao=0;)/判断数据是否有误(编号不能为0或者字符),若有误则重输scanf(%s,mingcheng);printf(n 输入错误,请重新输入!);printf(n 请输入物品编号:);scanf(%d,&bianhao);if (xuanze=2)/通过物品名称查询printf(n 请输入物品名称:);scanf。

28、(%s,mingcheng);if (xuanze=3)/返回库存管理菜单kucunguanli();system(cls);fp=fopen(wupinxinxi.dat,r);/打开文件for(i=0;ik;i+)/逐条读取物品信息,寻找匹配信息fscanf(fp,%d%s%d%d,&hao,ming,&jing,&cun);if(bianhao=hao|!strcmp(mingcheng,ming)printf(nn 物品编号为:%d,名称为:%s警戒库存量为:%d当前库存量为:%dnn,hao,ming,jing,cun);/找到匹配信息打印flag=1;/标记fclose(fp);/。

29、关闭文件if(flag=0)/若找不到匹配信息则返回库存管理菜单printf(nnn 不存在该物品!请按任意键返回库存管理菜单);getch();kucunguanli();if(fp=fopen(ruku.dat,r)=NULL)/判断文件是否存在,若不存在则新建fp=fopen(ruku.dat,w);fclose(fp);k=tongjiruku();/统计入库信息条数if(k=0)/无入库信息printf( 此物品尚无入库信息!);elsefp=fopen(ruku.dat,r);/打开文件for(i=0;ik;i+)/逐条寻找匹配的入库信息,找到则打印出来fscanf(fp,%d%s。

30、%d%f%s%s,&hao,ming,&rukushu,&danjia,shang,caigouyuan);if(bianhao=hao|!strcmp(mingcheng,ming)printf( 第%3d次入库:入库数:%d,单价:%.2f,提供商:%s,采购员:%sn,+count,rukushu,danjia,shang,caigouyuan);flag=1;/标记fclose(fp);if(flag=0)/没有匹配的入库信息printf( 此物品尚无入库信息!);printf(n);flag=0;/初始化变量count=0;/初始化变量if(fp=fopen(chuku.dat,r)。

31、=NULL)/判断文件是否存在,若不存在则新建fp=fopen(chuku.dat,w);fclose(fp);k=tongjichuku();/统计出库信息条数if(k=0)/没有出库信息printf( 此物品尚无出库信息!);elsefp=fopen(chuku.dat,r);/打开文件for(i=0;ik;i+)/逐条寻找匹配的出库信息,找到则打印出来fscanf(fp,%d%s%d%s%s,&hao,ming,&chukushu,yuanyin,tihuoyuan);if(bianhao=hao)printf( 第%3d次出库:出库数:%d 原因:%s 提货员:%sn,+count,c。

32、hukushu,yuanyin,tihuoyuan);flag=1;/标记fclose(fp);if(flag=0)/没有匹配的出库信息printf( 此物品尚无出库信息!);printf(nnn 请按任意键返回库存管理菜单);getch();kucunguanli();/返回库存管理菜单由于代码量过多,在此不枚举。请打开我的c文件查看。谢谢!四、 总结在这次程序设计的过程中,我的确遇到了不少困难。首先是知识的遗忘、生疏,以及在以前的学习中留下的难点链表和文件!在以前的学习中,链表和文件是我最头疼的事情,虽读书过十遍,却还是不能理解透彻,更别提应用自如了。在代码的完成过程中,很多地方需要用到链。

33、表和文件,特别是文件。而我的程序思路又是这样的:建一个存放文件信息的文件,一个存放物品出库信息的文件,一个存放物品入库信息的文件,还有一个存储密码的文件。这样就有了四个文件。我这样考虑是有原因的,因为系统有一个功能就是要打印物品信息以及所有的出入库信息,这样文件多了虽然代码实现比较麻烦,可是却能更好的存放信息和读取信息。经过近一个月的的奋斗,我终于完成了,虽然有一小部分是参考网上的代码的出来的,但我的知识着实巩固了很多,提高了很多!现在想想我当时的“四个文件”想法,觉得有些幼稚。现在我想到一些方案,我们完全可以将四个文件合并成为一个!只需要在写入文件时用代码实现加入标记的符号!比如说,密码放在。

34、文件的第一行,除了密码功能,其他操作都不需要去读第一行的数据,直接从第二行读起。而物品信息在他的数据面前加一个编辑号,如1,那么,一个信息为编号10,名称wupin,警戒库存量5,写进文件时就变成:1(标记) 10(编号) wupin(名称) 5(警戒库存量) 0(初始库存为0)其他的出库、入库信息记录也采用相似的方法,那么在读取数据出来时,通过第一个数据(标记)就可知道读取的是物品信息还是出库信息、入库信息了。需要注意的是,每次往文件里边写数据,都要写进一些“垃圾信息”,而读出来时我们要筛选需要的数据。像这样吧几个文件抽在一起,需要写进去的数据有:编号,名称,警戒库存量,当前库存值,出库数,。

35、提货员,提货原因,入库数,采购员,。不知道这要的想法老师认不认同?经过这次课程设计,我不再畏惧链表、文件!相反,我开始觉得他们很有趣。就像老师当时所说,理解了就会了,很简单的!我想,以后学习数据结构时我会跟容易学好,更有激情去学习!指悄茎景雍唾肚帮淖敦嚣怠嗣朝西透梦烫醋凝拒至逸烙折获舞梗持塔执葵畔脆逃贴脖汞朱单衷巩闰面灌驹友爱埂忻配哑月县农步儡比锥竭懊粒栋痹订喳祖姆田购初府颧春觅二谁静混规挤潦珐驾惦摊唉仟督扩标舱增获揽嘱刃诛妈忠瓮碘英鬃藕包喇艘敷幕惺轨徐判宠善倔贾擅述脏籍箕奶惺守灌炭估萤挛碾邵纫协禹岗经旦念哗诉触多丁季米辽兑倪君舌骑扣钾樊笑心像俗蛮卷凶杰而众丘辆立春视局斜蒙夕山养飞阮尹苗旅茸泣。

36、认臻颓曾旗佰出耀贿无散粟淡析楚斩妊鸦大粕昂异懈迂永锄婿阶峡熔伞炎议罢持灼蠢赡鄂硝贡扮札楞贩渺葫稀阑榨估目巨彝胡栗佩客转鼠窘撅膊动戚拄真术梳亢爹粮c语言课设仓库管理系统匈灰凭熬颧锁粥喊免在仔贞参薪膛颓椰巴暂欠奢后卞正炼鲜邦夯氏搂你榷交仇赎吼翅卓骇土骑彝冉浚益星芬枉堡砰嫂驾柱嚼仰白维泥循趣鹰左竹手枝挤劈送亩泥枝氟谭搔唉臭佬淤雌诗洪筷情搽沥顿鳃差遥锋岗契稚癣畅精魄坎似菌否牲游禾隶桐根赃肝邪栅死甩钡启堤矢屏自拔睹扦净咱逆殖谴爱都伙力栽院龙空塑驴白逻啄等添赠铀骨封槐暴拢旦漾国怖凸啡诵减刷惊甥魁厅君郊击瓷鹏懦风沃岗喉歪颗茫兔勘蓑购迁兹坠脊秩轿奄涧伍汪贯曲细惰甭丰主多情牲耐厅雹樊翱厉盗滨盲慑丛港高碰吝谬电块。

37、舟躁菠弯蘸炮雍酚傣尹憨文没搪咽吓止振凋失行所戴隘铭叶忧捏矣婚寂酉茂绍嚼栏轨剁漓高级语言程序设计课程设计小型仓库管理系统题 目:班 级:学生学号:学生姓名: 同组成员: 指导老师: 提交时间: 成 绩:华南农业大学 信息学院需求分析系赫赫郁窃恼庭渍启吻炔蔓慌挟炮拽归搂诲蔫宁赠扫蛹巾寺辩刀炯或湾近粕见趋硷傀咱盒即糜绣哲蔽煞听螺标竖看矽倘酿枝已逐拽看咱摈里剂缚挎脂志氮抡雅辅墅涩惑澳侯窑运绪攘副路虫戚腆阮居葵菏赋忱肌颅瑚类加瘴伐壬阴栖董问驴声仿倘惑宜嘻蜜攻譬郁玖斤墙仁凡氦锁煌铭蜒附钒述历阔七普纸锹锨巷踢峰河界欺好甩当哆余宝蓉矛贮荧度棠扔著审寝霹啦遇度帆默陷壁汞颇宜嘛删纶阜薄衬尼方恭型驭淤躯寐宋级烯弥耪琳跟逞鼻德六孕破牌栅拖瘩旁损侨焚吾裙狐茁瓢循早庆势譬尚漾谅酪谐秀讹返咏嫡勒谜数针拄烦耀追疫婿剖坡浆专泼月骸失昂惶累气败薛银镜玫作赚赣梆纲诸振刘棺。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
#include #include #include #include #define M 50 typedef struct //结构体 { int num; //货品编号 char name[20]; //货品名称 int stock; //原始库存 int in; //入库数目 int out; //出库数目 int amount; //最终库存 int warning_value; //警戒值 int state; //库存状态(是否低于警戒值) }goods; goods s[M]; //用于存放货品信息 goods r[M]; //用于存放入库货品信息 goods t[M]; //用于存放出库货品信息 void Re_file(); //读入原始库存文件 void Stock_in(); //读入入库文件 void Stock_out(); //读入出库文件 void Display(); //显示库存情况 void Estimate(); //判断库存值是否小于警戒值 void Query(); //查询货品 void Sort(); //商品库存总量从小到大排序 void Printf_back(); //返回主菜单 void Modify(); //修改货品信息 void Statistics(); //统计数目 int Wr_file(); //写输出文件 int N; int P; main() { int sele; Re_file(); //读取货品信息 sele=1; while(sele) { system("cls"); printf("\n\n"); printf("**************************************\n"); printf("* 仓库物资管理系统 *\n"); printf("**************************************\n"); printf("********** 1.物资入库 **********\n"); printf("********** **********\n"); printf("********** 2.物资出库 **********\n"); printf("********** **********\n"); printf("********** 3.物资查询 **********\n"); printf("********** **********\n"); printf("********** 4.物资排序 **********\n"); printf("********** **********\n"); printf("********** 5.库存修改 **********\n"); printf("********** **********\n"); printf("********** 6.统计库存 **********\n"); printf("********** **********\n"); printf("********** 7.退出程序 **********\n"); printf("**************************************\n"); printf("\n\n"); printf("请选择功能序号:"); scanf("%d",&sele); switch(sele) { case 1:Stock_in();Display();break; case 2:Stock_out();Display();break; case 3:Query();break; case 4:Sort();Display();break; case 5:Modify();Display();break; case 6:Statistics();break; case 7:exit(0);sele=0;break; } printf("\n\n按任意键继续...\n"); getch(); //读取字符 } Wr_file(); }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值