




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
成绩: 评语:华南理工大学广州学院2015-2016学年度第二学期课程名称: C程序设计大作业 题 目: 物资管理系统 专业班级: 计算机科学与技术3班 年 级: 2015级 姓 名: * 学 号: 班内序号: 14目录一.引言 (3)二.程序结构 (3)三.程序流程图 (4)四.程序源程序模块设计说明 (5) 模块1:函数头 (5) 模块2:主函数 (5) 模块3-1:物资查找子函数 (6) 模块3-2.1:物资浏览子函数 (6) 模块3-2.2:添料浏览子函数 (7) 模块3-2.3:领料浏览子函数 (7) 模块3-3.1:旧物资添加子函数 (7) 模块3-3.2:新物资添加子函数 (8) 模块3-4:物资领取 (10) 注释 (11)五.程序使用说明 (11)六.总结 (12)一. 引言程序名称:物资管理系统开发平台:Windows 7 Microsoft Visual C+ 6.0 (完整绿色版)主要功能:1、单项物资信息查找 2.1、物资库存清单浏览 2.2、添料单浏览 2.3、领料单浏览 3.1、已有(旧)物资添加 3.2、新物资添加 4、物资领取程序说明:功能齐全、输入控制严格、操作简单且方便!运行环境:Windows NT/2000/XP/VISTA/7/8文件说明:程序源代码(物资管理系统. cpp); 程序运行文件(物资管理系统.exe); 物资信息储存文件(库存物资清单.dat)注:已录入三种物资信息; 物资记录储存文件(添料单.dat/领料单.dat)注:各已录入三项记录;参考资料:C+ 程序设计(第2版) 谭浩强 编著二.程序结构函数头: /包括cin、cout等函数 /包括文本文档的读/写/复制等函数 /包括类、对象、数组等函数定义主函数:int main () 子函数:void search () /单项物资信息查找 void browse1 () /物资库存信息浏览 void browse2 () /添料单浏览 void browse3 () /领料单浏览 void add1 () /已有(旧)物资添加 void add2 () /新物资添加 void get () /物资领取三.内容显示1.物资信息查找6.退出系统5.返回上一级4.领料单浏览3.添料单浏览2.库存物资浏览功能选择1.查阅信息3.退出系统功能选择程序流程图1.旧物资添加数据操作2.新物资添加功能选择2.物资管理3.物资领取4.返回上一级结束开始5.退出系统四. 程序源程序模块设计说明(在说明各个模块时可适当粘贴一小部分代码,然后以段落的方式进行代码的讲解。注意:粘贴几行代码后要对该段代码进行分析,整页粘贴代码或分析文字较少者为不合格)模块1:函数头#include #include #include 调用系统中的函数,以确保程序的运行正常。class materialpublic:int number;string name;double amount;material m1000;定义了一个物资类,其中number用来存放物资的编号,name用来存放物资的名称,amount用来存放物资的数量,定义了物资类的对象数组m1000用于更加快捷、方便地对物资信息储存文件进行读/写。class managepublic:int number;string name;double amount1;double amount2;int time;manage m11000,m21000;定义了一个物资添/领记录类,分别用来存放物资的编号、物资的名称、物资的添/领数量、物资添/领后的剩余数量、物资的添/领日期,定义这个类的对象数组m11000和m21000除了使物资添/领记录储存文件可以快捷、方便进行读/写外,也是为了可以在程序中便于比较以及相互赋值。int a=3,b=3,c=3;int i,w,w1,w2,w3,w4,w5;string str6,str16;定义对象a,b,c用来分别表示库存物资的种类数、物资添加或领取记录数,用于文件读写时更为准确,对象i,w,w1,w2,w3,w4,w5分别用于for循环语句和while循环语句,使之更为条理,对象str6,str16分别用于储存物资信息储存文件和物资添/领记录储存文件内第一行的说明信息。模块2:主函数w=0;while(w3) cout1.查阅信息模块 2.物资管理模块 3.退出系统 (注:请输入功能所对应编号)endlw;if(w=1); else if(w=2); else if(w=3) break;else cout编号输入错误,请重新输入!endl;用了三个循环语句,目的在于每次功能操作后都能循环回到主菜单或次级菜单进行操作;If(w1=1)search();cout信息已全部显示,自动返回查阅信息模块!endl;w1=0;镶嵌到while循环语句中,用于进行功能操作。模块3-1:子函数(物资查找)while (w2a)cout请输入你要查询的物资编号:w2;if(w2a) ;else运用一个条件循环语句,目的是规范用户选择物资编号时的输入操作。for(i=0;mi.amount;if(mi.number=w2) cout mi.number mi.amountendl;运用三个条件循环语句,目的是快速读取各信息储存文件的物资信息,并且准确输出数据。if (w2a) cout库存无此编号物资,请重新选择!endl;if(mi.number=w2)cout mi.number mi.amountendl;运用四个条件判断语句,其中一个条件判断语句是为了提示用户输入的物资编号错误,避免用户输入错误的物资编号,另外三个是将所查找的物资信息向屏幕输出。ifstream ist1(库存物资清单.dat),ist2(添料单.dat),ist3(领料单.dat);将库存物资清单、添料单、领料单这三个文件的信息进行读取。模块3-2.1:物资浏览子函数 ifstream ist(库存物资清单.dat);将库存物资清单这个文件的信息进行读取。for(i=0;m1i.amount1m1i.amount2m1i.time;cout m1i.number m1i.amount1 m1i.amount2 m1i.timeendl;运用一个条件循环语句,目的是快速读取和输出信息,并且准确输出数据。模块3-2.2:添料浏览子函数ifstream ist(添料单.dat);将添料单这个文件的信息进行读取。for(i=0;m1i.amount1m1i.amount2m1i.time;cout m1i.number m1i.amount1 m1i.amount2 m1i.timeendl;运用一个条件循环语句,目的是快速读取和输出信息,并且准确输出数据。模块3-2.3:领料浏览子函数ifstream ist(领料单.dat);将领料单这个文件的信息进行读取。for(i=0;m2i.amount1m2i.amount2m2i.time;cout m2i.number m2i.amount1 m2i.amount2 m2i.timeendl;运用一个条件循环语句,目的是快速读取和输出信息,并且准确输出数据。模块3-3.1:旧物资添加子函数w2=0;while (w2a)coutw2;if(w2a);elsew3=0;while(w32)cout你所要添加的编号物资为:endlw3;if(w3=1) ; else if(w3=2) else continue;运用四个条件循环语句,其中一个条件循环语句是为了规范用户选择物资编号时的输入操作,另外三个条件循环语句是为了让用户对自己输入的信息进行再确认。if (w2a) cout库存无此编号物资,请重新选择!endl;if(w5=1)b+;mw2.amount+=m10.amount1;ofstream ost1(库存物资清单.dat,ios:out),ost2(添料单.dat,ios:out);ost1str0 str1 str2 str3 aendl;for(i=0;ia;i+);ost1.close();ost2str10 str11 str12 str13 str14 str15 bendl;b-;for(i=0;ib;i+);ost2 m10.number m10.amount1 mw2.amount m10.timeendl;ost2.close();w2+;运用五个条件判断语句,其中一个条件语句是为了提示用户输入的物资编号错误,避免用户输入错误的物资编号,另外四个是为了执行用户所选择的功能操作。for (i=0;mi.amount;运用四个条件循环语句,目的是快速读取和输出信息。ifstream ist1(库存物资清单.dat),ist2(添料单.dat);将库存物资清单、添料单这两个文件的信息进行读取。ofstream ost1(库存物资清单.dat,ios:out),ost2(添料单.dat,ios:out);将物资信息写入库存物资清单、添料单这两个文件中。模块3-3.2:新物资添加子函数w2=0;while (w22);coutm20.amount1;coutm20.time;cout你输入的新物资名称为: 你输入新物资的添加数量为:m20.amount1 你输入物资添加的时间为m20.timeendl;w3=0;while(w32)coutw2;w3=w2;if(w3=1);else if(w3=2) w2=0;break;else continue;运用两个条件循环语句,目的是为了让用户对自己输入的信息进行再确认。if (w3=1)ifstream ist1(库存物资清单.dat),ist2(添料单.dat);ist1str0str1str2str3a;for(i=0;istr10str11str12str13str14str15b;for(i=0;ib;i+);ist2.close();a+;m20.number=a;b+;ofstream ost1(库存物资清单.dat,ios:out),ost2(添料单.dat,ios:out);ost1str0 str1 str2 str3 aendl;a-;for(i=0;ia;i+);ost1 m20.number m20.amount1endl;ost1.close();ost2str10 str11 str12 str13 str14 str15 bendl;b-;for(i=0;ib;i+);ost2 m20.number m20.amount1 m20.amount1 m20.timeendl;ost2.close();运用两个条件判断语句,目的是为了执行用户所选择的功能操作。for (i=0;mi.amount;运用四个条件循环语句,目的是快速读取和输出信息。ifstream ist1(库存物资清单.dat),ist2(添料单.dat);将库存物资清单、添料单这两个文件的信息进行读取。ofstream ost1(库存物资清单.dat,ios:out),ost2(添料单.dat,ios:out);将物资信息写入库存物资清单、添料单这两个文件中。模块3-4:物资领取子函数w2=0;while (w2a)coutw2;if(w2a) ;else;w3=0;while(w32)cout你所领取的编号物资为:endlw3;if(w3=1);else if(w3=2) w2=0;break;else continue;运用四个条件循环语句,其中一个条件循环语句是为了规范用户选择物资编号时的输入操作,另外三个条件循环语句是为了让用户对自己输入的信息进行再确认。if (w2a) cout库存无此编号物资,请重新选择!endl;if(w3=1)w4=0;while(w42);运用五个条件判断语句,其中一个条件语句是为了提示用户输入的物资编号错误,避免用户输入错误的物资编号,另外四个是为了执行用户所选择的功能操作。for (i=0;mi.amount;运用四个条件循环语句,目的是快速读取和输出信息。ifstream ist1(库存物资清单.dat),ist2(领料单.dat);将库存物资清单、领料单这两个文件的信息进行读取。ofstream ost1(库存物资清单.dat,ios:out),ost2(领料单.dat,ios:out);将物资信息写入库存物资清单、领料单这两个文件中。注释:本程序中的的所有功能在执行过程中,基本遵循一个运行流程-读取后再写入,如下:1. 打开并逐行从库存物资清单.dat/添料单.dat/领料单.dat中读取物资信息数据;2. 将读取的数据赋值给数组;3. 根据用户所选择的功能对数组中的数据进行算法修改;4. 根据用户选择的功能将数组中的信息在屏幕输出或全部复制并覆盖进各自文件中;注:库存物资清单.dat/添料单.dat/领料单.dat为本程序数据库的文本文档。五.程序使用说明(本小节要求给出运行截图并加以说明,每个功能要求截图展示效果,每个截图的出现要配备段落文字进行说明)注:请按照程序提示进行操作! 每次输入后都要按回车确定!主菜单 1.查阅信息模块 2.物资管理模块 3.退出系统次级菜单(1) 查阅信息模块:1.物资信息查找 2.库存物资浏览 3.添料单浏览 4.领料单浏览 5.返回上一级 6.退出系统次级菜单(2) 物资管理模块:1.已有物资添加 2.新物资添加 3.物资领取 4.返回上一级 5.退出系统 (注:请输入功能所对应编号)物资查找功能 选中后,按提示输入所要查找的物资信息的编号,便会在屏幕上显示该物资库存信息、添料记录、领料记录,然后自动返回次级菜单。(此处放该功能具体实现效果的截图)物资浏览功能 选中后,便会在屏幕上显示所有物资的库存数量信息,然后自动返回次级菜单。(此处放该功能具体实现效果的截图)添料浏览功能 选中后,便会在屏幕上显示所有物资的添加记录信息,然后自动返回次级菜单。(此处放该功能具体实现效果的截图)领料浏览功能 选中后,便会在屏幕上显示所有物资的领取记录信息,然后自动返回次级菜单。(此处放该功能实现效果的截图)旧物资添加功能 选中后,按提示输入所要添加的物资信息的编号,屏幕会输出该编号物资的名称,按提示确认后再输入添加数量和添加时间,确认后便添加成功,然后自动返回次级菜单。(此处放该功能实现效果的截图)新物资添加功能 选中后,按提示输入物资库内所没有的物资名称并输入添加数量和添加时间,确认后便添加成功,然后自动返回次级菜单。(此处放该功能实现效果的截图)物资领取功能 选中后,按提示输入所要领取的物资信息的编号,屏幕会输出该编号物资的名称,按提示确认后再输入领取数量和领取时间,确认后便领取成功,然后自动返回次级菜单。(此处放该功能实现效果的截图)六.总结1. 程序的优缺点分析2. 总结与感想经过了整整一个星期(2014.9.12014.9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江国企招聘2025台州温岭市粮食收储有限责任公司招聘14人笔试参考题库附带答案详解
- 五险一金/年薪12万五九煤炭(集团)招聘50人笔试参考题库附带答案详解
- 2025内蒙古包头市中运铁路运输设备有限公司招聘238人笔试参考题库附带答案详解
- 中国医科大学《审计案例与模拟》2023-2024学年第二学期期末试卷
- 黔南民族职业技术学院《中小学信息技术教学法》2023-2024学年第二学期期末试卷
- 雅安职业技术学院《戏剧影视表演片段训练》2023-2024学年第二学期期末试卷
- 河北科技学院《中医儿科学理论》2023-2024学年第二学期期末试卷
- 陕西科技大学镐京学院《通信系统DSP》2023-2024学年第二学期期末试卷
- 洛阳师范学院《安全科学进展》2023-2024学年第二学期期末试卷
- 徐州工业职业技术学院《教学能力训练》2023-2024学年第二学期期末试卷
- 中信证券公司融资融券业务方案设计
- SZDBZ 194-2016 公园设施维护技术规范
- DBJ04T 289-2020 建筑工程施工安全资料管理标准
- 化工设计知到智慧树章节测试课后答案2024年秋浙江大学
- 《建筑构造与识图》课程标准
- 2025年保健食品从业人员培训考试试题
- 2025年贵州盘江精煤股份有限公司招聘笔试参考题库含答案解析
- 2024年中考数学复习:中点模型专项练习
- 旅行社企业章程范本
- 2025年宁波余姚市直属企业招招聘笔试参考题库含答案解析
- 《心理健康测试》课件
评论
0/150
提交评论