您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > C语言课程设计___物资管理系统
计算机高级语言课程设计(C)题目:物资管理系统设计姓名:学号:院(系):专业:指导教师:2010年08月摘要【题目】:物资管理系统设计【实习时间】:2010-8-28到2010-9-4【问题描述】物资管理系统问题的描述:通过程序实现对物资的输入、信息查询、数量的修改及增加等的管理。【基本要求】1主程序中,应提供文字交互菜单界面。要求包含以下几个功能模块。2信息输入模块input():建立物资管理数据总文件,完成对物资原库存信息的录入,并将其存放到指定文件(如:pro.dat)中。3信息查找模块search():采用如下方式进行查找,若找到,则输出该物资的相关信息;否则,输出提示信息(如:notfound!)。1)按产品名称查询;2)按进货日期查询并统计(统计某年某月进的某种产品的数量,产品的种类);3)按产品名称和规模查询并统计;4新物资入库模块insert():在原数据文件中插入新物资信息。5领料模块lend():查找所领取物资信息,若满足领料的要求,请登记领取物资名称,领料的日期,所领数量(领料后对库存的修改)。6打印功能模块print():1)打印领料单。2)打印物资库存清单。目录1.需求分析.............................................................................................................................11.1系统功能11.2性能描述:12.设计.....................................................................................................................................12.1总体设计12.1.1设计思想12.2模块设计22.2.1过程或函数调用关系图(流程图)22.2.2模块接口说明32.3程序算法及函数的功能实现43.调试分析...........................................................................................................................164.测试结果...........................................................................................................................174.1主函数的调试174.2数据录入函数的调试174.3物品信息的修改184.3.1按时间查找184.3.2按名称查找194.4物品信息注浏览194.5新增物品信息205.程序源代码..........................................................................................错误!未定义书签。6.总结...................................................................................................................................207.致谢...................................................................................................................................218.参考文献...........................................................................................................................21中国地质大学C程序课程设计物质信息管理系统1.需求分析1.1系统功能:⑴具有信息输入功能,能建立物资管理数据总文件,完成对物资原库信息的录入,并将其存放到制定文件中;物资的修改功能,能对物资的相关属性进行修改;物质信息的浏览功能,能查询全部的物质的信息;可采用如下方式进行查找相关的物质;按产品名称查询;按进货日期查询并统计(统计某年某月进的某种产品的数量,产品的种类);按产品名称和规模查询并统计;在新物质入库时能在原数据文件中插入新物资信息;用文件的形式将录入的数据进行存储,并从其中读取数据。1.2性能描述:程序的各种功能基本可以满足,能对物资进行较好的管理,不易出错。程序相对较小,因而运行时反应比较迅速,不存在响应不及时地问题。2.设计2.1总体设计2.1.1设计思想(1)数据结构根据对象的信息和数据形式,数组必须采用结构体的形式出现。结构类型的层次结构如下:图2-1结构体示意图物品的编号num物品的名称name物品白的尺寸size时间time数量amount结构体的具体形式:structProduct{charnum[100];charname[15];charsize[4];chartime[10];charamount[20];中国地质大学C程序课程设计物质信息管理系统}Product[N](2)文件结构程序运行产生文件Pro.txt,它是用来存储物品的个关信息方便后面调用。(3)基本思想利用数据结构体将每个物品的信息放在一个结构体中,方便后面的调用和管理。将程序中的各个功能需要多次使用的操作(比如表头的输出、数据的输出)都采用子函数的形式,使程序更简洁。程序中的每个功能都分别建立模块,在主程序中能方便的对各个模块进行调用,同时在各个模块之间互相调用。采用简单易用的界面,方便便用。2.2模块设计2.2.1过程或函数调用关系图(流程图)对系统进行分析,给出结构图图2-2程序结构图(2)各模块流程图,函数之间相互调用的图示开始主程序物资查询模块数据修改模块数据录入模块数据浏览模块数据添加模块退出中国地质大学C程序课程设计物质信息管理系统图2-3函数调用图2.2.2模块接口说明为了使程序易读方便修改,程序的各种功能是通过模块来实现;同时对不只一次用到的操作采用子函数避免同一个操作的代码反复的出现,各个模块和子函数的作用如下:enter()用于录入物品的信息到指定文件browse()用于浏览物品信息add()用于新物品信息的增加search()用于从指定文件读取物品的信息Modify()用于修改某个已有物品的信息save()用于对物品信息的存档load()用于对也已有物品信息的载入input()用于对物品信息的录入modify_data()用于对物品信息的具体修改no_input()用于对物品信息缟号printf_face()主函数输入模块浏览函数更新函数查询函数插入函数删除函数修改函数按时间按名称结束结束结束结束添加函数结束中国地质大学C程序课程设计物质信息管理系统用于输出物品信息的表头printf_one()用于输出物品的具体的信息printf_back()用于提示操作成功后的操作选择2.3程序算法及函数的功能实现程序的各个功能的实现的算法可以采用用以下的流程图表示:(1)数据录入模块的流程图图2-4数据录入流程图(2)数据添加模块的流程图输入要录入的物品的数量调用input函数i=0?开始调用save函数调用save函数调用printf_back函数中国地质大学C程序课程设计物质信息管理系统图2-5物品信息添加流程图(3)物品信息查找模块的流程图图2-6物品信息查询流程图(4)物品信息修改模块开始输入m值m=1或m=2?输入时间输入名称存在?存在?选择操作输出函数输出函数调用返回函数printf_back开始调用录入函数input输入要添加的数量mm=0?中国地质大学C程序课程设计物质信息管理系统图2-7物品信息修改流程图(5)物品信息浏览模块图2-8物品信息浏览流程图开始调用数据函数printf_one调用读取函数load调用表头函数printf_face结束开始输入物品号曲物品存在?输出原数据保存主函数修改函数继续?中国地质大学C程序课程设计物质信息管理系统2.4,算法设计程序源代码#includestring.hvoidmenu(){intn,w1;do{//程序功能的选择//printf(\t\t***choosefunction****\n\n);printf(\t\t***1Enternewdata****\n\n);printf(\t\t***2Modifydata****\n\n);printf(\t\t***3Searchbypro.dateandname\n\n);printf(\t\t***4Browsedata****\n\n);printf(\t\t***5adddata****\n\n);printf(\t\t***6Exit****\n\n);printf(Chooseyournumber(1-6):[]\b\b);scanf(%d,&n);if(n1||n6)w1=1;elsew1=0;}while(w1==1);switch(n){case1:enter();break;//调用数据录入函数//case2:modify();break;//调用数据修改函数//case3:search();break;//调用数据查找函数//case4:browse();break;//调用数据浏览函数//case5:add();break;//调用数据添加函数//case6:exit(0);}}main(){menu();}#defineN100//定义数据结构体//structProduct中国地质大学C程序课程设计物质信息管理系统{charnum[100];charname[15];charsize[4];chartime[10];charamount[20];}Product[N];#includestdio.henter()//物质的信息的录入模块//{inti,n;printf(HowmanyProducts(0-%d)?:,N-1);scanf(%d,&n);printf(\nEnterdatanow\n\n);for(i=0;in;i++){printf(\nInput%dthproductrecord.\n,i+1);input(i);//调用数据的录入函数//}if(i!=0)save(n);//调用数据写入函数将建立的物品信息写入指定的文件//printf_back();}browse()//物质的信息的浏览模块//{inti,j,n;n=load();printf_face();//调用表头函数//for(i=0;in;i++){if((i!=0)&&(i%10==0)){printf(\n\nPassanykeytocontinue....);getch();puts(\n\n);}printf_one(i);//调用数据函数//}中国地质大学C程序课程设计物质信息管理系统printf(\tThereare%drecord.\n,n);printf(\nPassanykeytoback...);getch();menu();}add()//新物质的信息的建立模块//{inti,n,m,k;FILE*fp;n=load();printf(HowmanyProductsareyouwanttoadd(0-%d)?:,N-1-n);scanf(%d,&m);k=m+n;for(i=n;ik;i++){printf(\nInput%dthProductrecord.\n,i-n+1);input(i);//数据的录入函数//}if((fp=fopen(Pro.txt,ab))==
本文标题:C语言课程设计___物资管理系统
链接地址:https://www.777doc.com/doc-3370007 .html