计算机基础强化训练课程设计.doc_第1页
计算机基础强化训练课程设计.doc_第2页
计算机基础强化训练课程设计.doc_第3页
计算机基础强化训练课程设计.doc_第4页
计算机基础强化训练课程设计.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

计算机基础强化训练仓库入库的管理与实现1. 需求分析1.1 问题描述仓库入库的管理是对进入仓库的物品进行详细、准确的记录,以便日后的查账、建档等。1.2 数据需求在对入库的物品进行登记时,需记录其条形码编号、物品的名称、物品的基本单位、物品的单价、数量、总的金额、物品入库的时间和操作员的姓名。符 号数据类型长 度描 述barcode char 10条形码编号 storename char10物资名称 basicunit char5基本单位 unitpricechar5物资单价 number char20入库数量 moneychar20总的金额 timechar10入库时间 manager char 10操作员姓名 shelfchar5物资所放货架 layerchar5所在货架层数1.3功能需求仓库入库管理系统为公司提供增加入库物资信息功能,查询物资信息和显示物资信息等功能,具体功能需求描述如下:1.3.1 增加入库物资信息 可在原有的入库物资信息文件的基础上增加新的物资信息记录。在增加新的物资物资信息时,会提示输入物资的条形码编号、物资名称、单位、单价、数量、总的金额、入库的时间、操作员和物资所放的位置。1.3.2 修改入库物资信息 在增加物资信息出现错误需要修改信息时,需用到此功能。提示输入要进行修改的物资的条形码编号,如果在文件中存在该物资的信息,则提示输入新的编号、名称、单价等信息,如果在文件中不存在该物资信息时,则会提示没有资料可以修改。1.3.3 查询入库物资信息 当选择查询功能时,会有按条形码编号、物资名称、入库时间和操作员姓名四种不同的查询方式,分别提示输入物资的编号或名称或入库时间或操作员姓名,如果在文件中有相同的信息,则会显示次物资的全部信息,如果文件不存在,则会显示没有资料可以查询,然后返回主界面。1.3.4 显示入库资料信息 需要查看所有的入库资料时,选择此功能,界面上会显示所有的入库物资的信息,以便查看,当库中没有资料时,提示没有资料可以显示。1.3.5 保存入库物资信息添加或修改了物资信息后,选择此功能,新的物资信息便会保存在磁盘中,在以后的显示时,再从磁盘中读取这些物资的信息,然后显示在界面上。2.系统设计2.1 结构体 用于存放物资入库时的货架和所在的层数。 struct position char shelf10; /所在货架 char layer10; /所在层数;用于存放每种物资的条形码编号、名称、单位、单价、数量、总的金额、入库时间和操作员、位置。struct store char barcode10; /条形码 char storename20; /物资名称 char basicunit10; /基本单位 char unitprice5; /单价 char number20; /数量 char money50; /金额 char time10; /入库时间 char manager10; /操作员 position pos; /位置;2.2 数据结构 单链表的存储结构。typedef struct LNode struct store data; struct LNode *next;LNode,*LinkList;2.3 用户界面设计主界面设计:查询界面设计,选择查询功能后,会提示按不同的方式查询:2.4 处理过程设计添加物资信息时,在链表尾进行插入,具体代码如下:while(r) /找到最后一个结点 if(r-next=NULL) break; r=r-next; p-next=NULL; /p为链表尾r-next=p;r=p;查询和修改物资信息时,要在文件中找到相匹配的信息,具体处理如下:例如利用物资名称进行查询,则需找到与之相匹配的物资名称,具体语句如下:p=L-next;while(p)if(strcmp(p-data.storename,findmess)=0) /要输出的内容 p=p-next;保存物资信息时,需将存在链表中的信息写入文本文档中,所用的函数为fwrite(),具体实现如下:if(fwrite(p,sizeof(LNode),1,fp)=1) p=p-next; count+; 主函数的处理如下:int main() while(!feof(fp) /向打开的文件中加入记录 p=(LNode*)malloc(sizeof(LNode); if(fread(p,sizeof(LNode),1,fp) p-next=NULL; r-next=p; r=p; count+; fclose(fp); cout记录导入完毕,共导入 count 条记录endl;while(1) menu(); if(sign=6) if(shouldsave=1) cout资料已经改动,是否将改动保存到文件中(y/n)?ch; if(ch=y|ch=Y) Save(L); cout你已经退出系统endl; break; switch(sign) case 1:add(L);break; case 2:Query(L);break; case 3:Modify(L);break; case 4:display(L);break; case 5:Save(L);break; return 0;3.系统设计3.1 测试用例的设计条形码编号902088407709物资名称书籍电脑物资基本单位本台物资单价5200入库物资数量20010物资总金额10002000物资入库时间2003120120041203操作员姓名李四张三物资入库所放货架35物资所在货架层次243.2 测试结果测试添加信息功能:测试查找功能的结果:测试显示功能的结果:测试修改功能的结果:4.小结 计算机专业是一门实践性较强的学科,只懂得理论知识是不够的,必须有实践动手的训练,这样理论和实践结合起来,才能把知识掌握的更准确、更深刻。通过这一周的基础强化训练,自己亲自动手实践,就使我对程序设计的基础内容,如算法设计、计算过程规划与实施等,都有了进一步的提高,而且巩固了专业的理论知识,为以后的学习打下了良好的基础,同时锻炼了我的分析和解决实际问题的能力,虽然设计中还有很多不足的地方,但我相信,通过多次的训练后能够更全面的分析处理问题。程序能够达到基本要求,实现仓库入库管理的添加、查询、修改、显示和保存的功能,而且能够在查询物资信息时,分别按条形码编号、物资名称、入库时间和操作员四种方式查询。在使用了保存功能后,能够将添加或修改的物资信息存入到指定的磁盘中,下一次打开时,会自动导入到链表中,以便查询和显示物资信息。程序中还有很多不足之处,每增加一条物资信息,需要保存后才能存在磁盘中,可以在增加的函数中增加保存的语句,使每次增加信息之后会自动保存,不必再选择保存功能。另外,在修改物资信息的时候,必须将物资的所有信息都输入一遍,如果只是修改物资信息的一项,那么就会很浪费时间。5.参考文献1 计算机科学导论(第二版) 主 编:钟 珞出版社:武汉理工大学出版社出版或修订时间:2004.1 2 C+程序设计教程(第一版) 主 编:闵联营 何克右 出版社:武汉理工大学出版社 出版或修订时间:2005.73 数据结构(C

温馨提示

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

评论

0/150

提交评论