C语言物资标准管理专业系统设计方案报告.doc
《C语言物资标准管理专业系统设计方案报告.doc》由会员分享,可在线阅读,更多相关《C语言物资标准管理专业系统设计方案报告.doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计汇报物资管理系统 指导老师:姓 名:班级序号:学 号:一 题目要求请设计一个物资管理系统,要求主程序中应提供文字交互菜单界面,要求包含以下多个功效模块: 信息输入模块input():建立物资管理数据总文件,完成对物资原库存信息录入,并存放到指定文件中(pro.dat) 信息查找模块search():采取以下方法进行查找,若找到,则输出该物资相关信息;没有则给出提醒信息。()按产品名称查询()进货日期查询并统计。()按产品名称和规格查询并统计。 新物资入库模块insert():在原数据文件中插入新物资信息。 领料模块lend():查找所领取物资信息,满足领料要求,请登记领取物资名称
2、,日期,数量(领料后修改) 打印功效模块printf()(1)打印领料单()打印物资库存清单。二 需求分析依据题目要求,因为物资信息是存放在文件中,所以提供文件输入,输出等操作在程序中需要浏览物资需要浏览物资信息,应提供显示,查找等操作;另外还应提供键盘选择菜单实现功效选择。三 总统设计依据上面分析及题目要求能够分为以下六个模块(系统模块以下图1。)物资管理系统商品种类输入商品查询模块商品信息输入商品领取模块打印商品信息系统推出四 具体设计(一)主函数通常是设计简练,只提供输入,处理和输出部分函数调用。其中各功效模块用菜单方法选择。其中步骤图图(2)menu() int n,w1; do pu
3、ts(ntt*MENU*nn); puts(ttt1.物资信息输入模块); puts(ttt2.查询模块); puts(ttt3.物资信息查找模块); puts(ttt4.领料查询); puts(ttt5.打印模块); puts(ttt6.Exit); puts(nntt*n); puts(tt*by 袁璐n); puts(tt*.12.29n); printf(选择你要得命令 1-6: bb);开始 scanf(%d,&n); if(n6) N显示一系列功效选择 w1=1;getchar(); else w1=0; while(w1=1);输入n,判定m 是否是1到6?switch(n) c
4、ase 1:enter();break; case 2:search();break; case 3:insert();break; 图2 case 4:lend();break; 依据n值调用各功效模块函数 case 5:print();break; case 6:exit(0); 结束main() *主函数* puts(ntt*欢迎进入物资管理系统*nn); puts(ttt姓名:袁璐); puts(ttt学号:1002604); puts(tttEmail:); puts(tttTel:); puts(nntt*n); puts(tt*制作 袁璐n); puts(tt*.12.29n);
5、 printf(n按ENTER键进入.); getch(); menu();(二)各功效模块设计1.输入模块*多个类型,名称等信息 *enter()int i,n; printf(n物资种类大小(0-%d)?:,N-1); scanf(%d,&n); printf(n输入数据nn); for(i=0;in;i+) printf(输入第多个物资名称。数量规格日期:n,i+1); input(i); if(i!=0)save(n); printf_back();input(int i) printf(nname(1-20letter):); scanf(%s,&proi.p_name); prin
6、tf(nnumber(1-7num):); scanf(%d,&proi.p_num); printf(nsize(1-4letter):); scanf(%s,&proi.size); printf(ndate:); scanf(%d.%d.%d,&proi.in_date.year,&proi.in_date.month,&proi.in_date.day); printf(min_s real_s max_s:); printf(n最小库存量 真实库存量 最大库存量); scanf(%d %d %d,&proi.min_s,&proi.real_s,&proi.max_s);printf
7、_data(int i) printf(nnamettnumtsizetdatettmin real maxn);printf(%st%dt%st%d.%d.%dt%d-%d-%d,proi.p_name,proi.p_num,proi.size,proi.in_date.year,proi.in_date.month,proi.in_date.day,proi.min_s,proi.real_s,proi.max_s);关键是为了输入商品类型,名称,数量,型号,日期,最大,最小,真实库存量,并存放在指定文件(pro.dat)中。但要注意到输入时间,最大最小库存格式(如) 请输入第 1th中商
8、品信息 :name(1-20letter):苹果number(1-7num):1size(1-4letter):2date:.06.06amountmin-real-max:3-4-5 (二)searchmenu()*查询模块*int n,w2; do puts(ntt*查询菜单*nn); puts(ttt1.姓名查询); puts(ttt2.日期查询); puts(ttt3.物资名称和规格查询); puts(ttt4.返回); puts(nntt*n); printf(选择你要得命令 1-4: bb); scanf(%d,&n); if(n4) w2=1;getchar(); else w2
9、=0; while(w2=1); switch(n) case 1:search_by_name();break; case 2:search_by_date();break; case 3:search_by_nameandsize();break; case 4:getch();menu(); search() searchmenu();search_by_name()int j,n,m=0;char a20; n=load(); printf(n输入你要查询物资名称nname:); scanf(%s,a); for(j=0;jn;j+) if(strcmp(a,proj.p_name)=
10、0) m+; printf_data(j); printf(n查找第多个物资!,m);getch();menu();struct s_dateint year; int month; int day;s;search_by_date()int j,n,m=0; n=load(); printf(n输入你要查询物资日期!ndate:); scanf(%d.%d.%d,&s.year,&s.month,&s.day); for(j=0;jn;j+)if(s.year=proj.in_date.year)&(s.month=proj.in_date.month)&(s.day=proj.in_dat
11、e.day) m+; printf_data(j); printf(n查找第多个物资在那天!,m);getch();menu();search_by_nameandsize()int j,n,m=0;char a20,b4; n=load(); printf(n输入你要查询物资名称!nname:); scanf(%s,a); printf(n输入你要查询物资规格!nsize:); scanf(%s,b); for(j=0;jn;j+) if(strcmp(a,proj.p_name)=0)&(strcmp(b,proj.size)=0) m+; printf_data(j); printf(查
12、找第多个物资!,m);getch();menu();关键以一个查询方法进行说明步骤图以下:开始输入商品名称是否查到此商品信息显示找到结果提醒没有找到并返回主菜单操作图 *菜单*开始选择2 1.商品种类输入n 2.商品查找 3.新商品信息录入 4.领取商品判定m 是否是0到4? 5.打印商品信息 6.退出依据n值调用各功效模块函数 * *by袁璐结束返回 *.12.29Choice your order 1-6:2 *SEARCH* 1.经过商品名查询 2.经过录入日期查询 3.经过商品名和日期查询 4.返回菜单 *请选择要查询种类 1-4:1输入你要查询商品名称!name:苹果name num
13、 size date min-real-max苹果 4362900 2 .6.6 3-4-5找到 1 种商品! *菜单*(三)新物资录入 在此函数上对新料进行了统计insert()int n,c; n=load(); puts(nInput one data:n); do input(n); printf_data(n); printf(nnAre you sure?n1).suren2).cancel and againn3).back without save bb); scanf(%d,&c); if(c=1)save(n+1);printf_back(); else if(c!=2)m
14、enu(); while(c=2);input(int i) printf(nname(1-20letter):); scanf(%s,&proi.p_name); printf(nnumber(1-7num):); scanf(%d,&proi.p_num); printf(nsize(1-4letter):); scanf(%s,&proi.size); printf(ndate:); scanf(%d.%d.%d,&proi.in_date.year,&proi.in_date.month,&proi.in_date.day); printf(min_s real_s max_s:);
15、printf(n最小库存量 真实库存量 最大库存量); scanf(%d %d %d,&proi.min_s,&proi.real_s,&proi.max_s);该函数据对物资进行了全方面查找(四)领料模块*查找对所领聊信息,若满足领料要求,便登记一系列内容,并修改 程序以下struct one_prochar p_name20; char size4; struct date one_date; long int total; struct one_pro *next;check;lend()int j,n; n=load(); printf(n请检验你要带走物资日期等信息!); print
16、f(nname(1-20letter) size(1-4letter) date amountn);scanf(%s%s%d.%d.%d%d,&check.p_name,&check.size,&check.one_date.year,&check.one_date.month,&check.one_date.day,&check.total); for(j=0;jn;j+)if(strcmp(check.p_name,proj.p_name)=0)&(strcmp(check.size,proj.size)=0)&(check.one_date.year=proj.in_date.year)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 物资 标准 管理 专业 系统 设计方案 报告
限制150内