汽车零部件采购管理教材_第1页
汽车零部件采购管理教材_第2页
汽车零部件采购管理教材_第3页
汽车零部件采购管理教材_第4页
汽车零部件采购管理教材_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

1、 汽车零部件采购管理 第 页 制作人:徐倩HUBEEI UUNIVVERSSITYY OFF AUUTOMMOTIIVE TECCHNOOLOGGYC语言程程序设计计课程设计计报告课设题目目: 汽车车零部件件采购管管理 专 业: 电子信信息工程程(汽车车电子) 班 级: T13323-15 姓 名: 徐倩倩 成 绩:完成日期期: 20114年119周 指导教师师: 吴年年志 目录TOC o 1-3 h u HYPERLINK l _Toc28851 C语言程程序设计计 PAGEREF _Toc28851 0 HYPERLINK l _Toc26862 课程设计计报告 PAGEREF _Toc2

2、6862 01.课程程设计目目的11 HYPERLINK l _Toc1756 2.需求求分析 PAGEREF _Toc1756 22 HYPERLINK l _Toc29859 2.1 要求 PAGEREF _Toc29859 22 HYPERLINK l _Toc590 2.2任任务描述述 PAGEREF _Toc590 3 HYPERLINK l _Toc2875 2.3运运行环境境 PAGEREF _Toc2875 4 HYPERLINK l _Toc5166 2.4开开发工具具 PAGEREF _Toc5166 4 HYPERLINK l _Toc4937 3.总体体设计 PAGER

3、EF _Toc4937 44 HYPERLINK l _Toc27063 3.1系系统流设设计 PAGEREF _Toc27063 4 HYPERLINK l _Toc1370 3.2系系统模块块设计 PAGEREF _Toc1370 55 HYPERLINK l _Toc12183 4.详细细设计 PAGEREF _Toc12183 66 HYPERLINK l _Toc27101 4.1数数据结构构设计 PAGEREF _Toc27101 66 HYPERLINK l _Toc10488 4.2 模块接接口设计计 PAGEREF _Toc10488 7 HYPERLINK l _Toc16

4、13 1)所有有函数声声明 PAGEREF _Toc1613 7 HYPERLINK l _Toc12560 2)全局局变量 PAGEREF _Toc12560 99 HYPERLINK l _Toc28788 3)主要要模块的的实现 PAGEREF _Toc28788 99 HYPERLINK l _Toc7025 4.3主主要功能能模块的的流程图图 PAGEREF _Toc7025 10 HYPERLINK l _Toc19302 5.运行行结果 PAGEREF _Toc19302 113 HYPERLINK l _Toc3508 5.1 欢迎界界面 PAGEREF _Toc3508 13

5、3 5.22 主主菜单页页面113 HYPERLINK l _Toc27181 5.3 信息查查询页面面 PAGEREF _Toc27181 14 HYPERLINK l _Toc1287 5.4 统计菜菜单页面面 PAGEREF _Toc1287 14 HYPERLINK l _Toc5210 5.5 显示信信息页面面 PAGEREF _Toc5210 15 HYPERLINK l _Toc13482 5.6 退出页页面 PAGEREF _Toc13482 155 HYPERLINK l _Toc24338 6.程序序调试与与测试 PAGEREF _Toc24338 116 HYPERLIN

6、K l _Toc6978 6.1 主菜单单选择测测试 PAGEREF _Toc6978 166 HYPERLINK l _Toc23599 6.2采采购信息息未从文文件读入入 PAGEREF _Toc23599 17 6.33采购信信息输入入调试188 HYPERLINK l _Toc478 7.问题题与不足足 PAGEREF _Toc478 20 HYPERLINK l _Toc15516 8.建议议 PAGEREF _Toc15516 21 HYPERLINK l _Toc6517 9.编程程体会 PAGEREF _Toc6517 221 HYPERLINK l _Toc27231 10.

7、程程序源代代码 PAGEREF _Toc27231 2111.课程程设计目目的通过课程程设计,加深对对结构化化程序设设计思想想的理解解,能对对系统功功能进行行分析,并设计计合理的的模块化化结构。通过课程程设计,进一步步掌握CC语言中中重要的的数据结结构。掌掌握并熟熟练运用用指针、链表、结构体体、文件件等数据据结构。通过课程程设计,提高程程序开发发能力,能运用用合理的的控制流流编写清清晰高效效的程序序。通过课程程设计,培养CC语言知知识运用用和自学学能力,真正的的把课堂堂上获得得的知识识运用起起来,培培养自己己对程序序编写的的兴趣,并能独独立设计计和实现现一个小小型系统统。通过课程程设计,加强了

8、了自己的的程序分分析能力力。2.需求求分析2.1 要求遵循软件件开发过过程的基基本规范范;能灵灵活应用用,初步步具备运运用C程程序解决决实际问问题的能能力。运用结构构化程序序设计方方法,按按照课程程设计题题目要求求,完成成包括需需求分析析、数据据结构设设计、概概要设计计、详细细设计、编写代代码、调调试和测测试C程程序等过过程。学会利用用数组、结构体体、链表表进行相相关信息息表示。功能模块块划分清清晰,系系统结构构图符合合功能操操作要求求,且有有详尽的的功能描描述各主要功功能模块块有详尽尽的流程程图及描描述,用用函数的的形式实实现,且且调用入入口、功功能、出出口等关关系正确确。所设计的的C程序序

9、较好的的可读性性和可靠靠性;程程序书写写风格规规范,注注释清晰晰。界面友好好(良好好的人机机互交),凡需需要输入入信息时时,都有有较详尽尽的提示示信息,并对输输入信息息有较完完善的值值域分析析。程序经上上机调试试通过,不应出出现语法法型、功功能型错错误,并并获得满满意的结结果。学会通过过各功能能性测试试用例测测试程序序的能力力,尽可可能避免免原则性性错误的的出现。掌握编写写、调试试和测试试C语言言程序的的基本技技巧,充充分理解解结构化化程序设设计的基基本方法法。C语言课课程设计计报告的的内容反反应实际际设计过过程,且且符合格格式要求求,无抄抄袭现象象。2.2任任务描述述已知在汽汽车生产产时,需

10、需要向零零部件生生产厂商商采购零零部件,设计一一个汽车车零部件件采购管管理程序序,以方方便采购购管理部部门对采采购零部部件的管管理。该该单位每每次采购购都有一一个采购购编号,每次采采购一种种零部件件。该程程序应该该具有如如下功能能添加并保保存采购购信息:输入采采购编号号,零部部件名称称,采购购员名字字,采购购日期,采购价价格,采采购数量量,供货货单位,需要判判断采购购价格和和数量是是否大于于零,采采购编号号是否已已存在,采购日日期是否否合法(形如*-*-*,例如如20113-009-008)。根据采购购编号查查询零部部件采购购信息根据零部部件名称称查询其其采购信信息根据采购购编号修修改已有有采

11、购信信息:需需要判断断修改后后的采购购编号的的唯一性性,采购购日期的的合法性性(形如如*-*-*,例例如20013-09-08)。根据采购购编号删删除此条条采购信信息统计功能能2.3运运行环境境VC+6.00编译环环境2.4开开发工具具C语言3.总体体设计3.1系系统流设设计程序整体体功能结结构如图图一所示示:开始显示课程以及学生信息显示主菜单,输入选择读取文件中的采购信息添加并保存采购信息由采购编号查找零部件采购信息由零部件名称查找其采购信息修改并保存采购信息删除并保存余下采购信息统计采购信息显示所有采购信息根据零部件名称统计其总数量根据采购员名字统计其采购次数3.2系系统模块块设计1) 封

12、封面模块块函数vvoidd huuanyyingg()和和函数vvoidd byyebyye()构成封封面模块块,构造造和谐人人机环境境。2) 菜菜单模块块 函函数vooid mennu()和函数数voiid cchoiise()构成成选择菜菜单,二二级菜单单voiid ttonggji()构成成统计功功能菜单单。3) 查查询模块块函数vvoidd nuumshhow()和函函数vooid nammeshhow()分别别实现根根据采购购编号和和零部件件名称查查询采购购信息的的功能,其中会会有其他他函数辅辅助。4) 信信息处理理模块 函数vvoidd chhangge()实现信信息修改改功能,函

13、数vvoidd diisappperrr()实现信信息删除除功能,voiid iinpuut()实现信信息添加加功能,voiid ssavee()实实现信息息保存功功能,vvoidd liistCCG()实现信信息显示示功能,其中会会有其他他函数辅辅助。5)统计计模块 函数iint nummberr()实实现根据据零部件件名称统统计其总总数量功功能,iint timmes()实现现根据采采购员名名字显示示其采购购次数的的功能,其中会会有其他他函数辅辅助。6)日期期审查模模块函数数 vooid cheeckddatee()使使用标志志位方法法实现对对时间的的审查。4.详细细设计4.1数数据结构构

14、设计根据系统统要求,采购信信息包括括:数据项名名称数据项系系统表示示数据类型型数据长度度备注采购编号号P1-buyynumm字符串10零部件名名称P1-iteemnaame字符串10采购日期期P1-dayy字符串30采购员名名字P1-buyyernnamee字符串10采购数量量P1-couunt整型4采购价格格P1-priice单精度8供货单位位P1-souurcee字符串10为了能实实现系统统的优越越性和cc语言的的精华采采用链表表的建立立采购信信息记录录表,示示意图如如下:采购信息2采购信息3采购信息14.2 模块接接口设计计1)所有有函数声声明viodd huuanyyingg(); /

15、*封面面函数,显示课课程题目目,学生生信息*/ voidd meenu(); /*主主菜单函函数,显显示各项项功能*/voidd chhoisse(); /*根根据主菜菜单选择择并执行行功能*/voidd reeadiintoo(); /*读取取文件内内的采购购信息*/voidd innputt(); /*从从键盘添添加采购购信息并并保存到到文件中中*/voidd liistCCG(); /*显示示所有采采购信息息*/voidd nuumshhow(); /*根据据采购编编号查询询对应采采购信息息并显示示*/voidd naamesshoww(); /*根据据零部件件名称查查询其采采购信息息并

16、显示示*/voidd chhangge(); /*根据据采购编编号修改改并显示示采购信信息*/voidd diisappperr(); /*根据据采购编编号删除除并显示示余下采采购信息息*/voidd toongjji(); /*统计功功能菜单单,显示示两项统统计功能能*/int nummberr(); /*根据零零部件名名称统计计其购买买总数量量*/int timmes(); /*根据据采购员员名字统统计其采采购次数数*/int cheeckttimee(innt yyearr,innt mmontth,iint dayy );/*审查查日期输输入是否否符合要要求*/voidd byyeby

17、ye(); /*告别别界面*/voidd saave(); /*保保存采购购信息*/2)全局局变量1,用于于存储采采购信息息的结构构体sttrucct bbuy;2,判断断文件是是否正确确读入的的标志位位变量iint flaag;3,用于于存储采采购信息息的结构构体指针针:sttrucct bbuy *heead=NULLL,*p,*p1,*p22,*pp3.3)主要要模块的的实现系统以 intt maain()为入入口,首首先调用用voiid hhuannyinng()显示课课程名称称和学生生信息,调用vvoidd meenu()和vvoidd chhoisse()实现功功能显示示和功能能选

18、择。接着,按照用用户的要要求,调调用vooid nummshoow()或vooid nammeshhow()实现现查询功功能,或或调用vvoidd chhangge(),vooid dissappper()实现现修改和和删除功功能不管管是删除除还是修修改还是是添加都都要调用用voiid ssavee()实实现信息息保存功功能。添添加和修修改时还还要调用用intt chheckktimme(iint yeaar,iint monnth,intt daay)函函数对时时间审查查。当不需要要再执行行各项功功能时,调用vvoidd byyebyye()退出管管理器。4.3主主要功能能模块的的流程图图封

19、面模块块(以欢欢迎界面面为例,退出界界面与此此类似)显示题目和学生信息进入系统2)菜单单模块显示主菜单 接受用户输入选项否是否合法?退出管理系统是否是 执行用户所选功能否是是否合法?是否为7?否是是否为0?查询模块块(以根据据采购编编号查询询采购信信息为例例) 返回主菜单页面显示编号对应采购信息编号是否存在 输入所查询采购编号主菜单信息处理理模块(以添加加采购信信息为例例) 输入采购编号否是否是 显示添加信息 输入其他信息是否合格? 输入采购时间是否已存在统计模块块(以根据据零部件件名称统统计采购购总数量量为例)是否s加上其数量返回主菜单是否存在?输入零部件名称,s=06)日期期审查模模块否是

20、 返回0 返回1是否合格调用void checktime()函数输入采购时间,并将其表示成y,m,d5.运行行结果5.1 欢迎界界面5.2 主菜单单5.3 信息查查询页面面5.4 统计菜菜单页面面5.5 显示信信息页面面5.6 退出页页面6.程序序调试与与测试测试数据据:采购编号号0010001001000200100030010004零部件名名称活塞轮胎后视镜方向盘采购日期期20133044-23320133099-077采购员名名字刘尧徐倩卫添翼李林琳采购数量量90679089采购价格格90.0000000078.0000000078

21、.0000000067.00000000供货单位位汽院十堰黄冈河南6.1 主菜单单选择测测试若用户输输入错误误选项,则如图图显示:6.2采采购信息息未从文文件读入入6.3采采购信息息的输入入测试1)若添添加的采采购编号号已存在在,则如如图显示示:若添加的的采购信信息日期期格式输输入错误误,则如如图显示示若查询的的采购编编号输入入错误,则如图图显示若查询的的零部件件名称输输入错误误,则如如图显示示若输入价价格为负负数时,如图显显示若输入的的数量为为负值时时,如图图显示7.问题题与不足足1、需求求分析中中存在的的问题 每每次只能能从键盘盘中添加加一条采采购信息息,当遇遇到需要要添加多多条信息息时,

22、比比较麻烦烦。统计计功能太太少,如如果要求求几个零零部件的的总价,无法实实现。程序中存存在的缺缺陷 每每次运行行其他功功能前都都要先从从文件中中读入,比较耗耗时。有有些功能能输入错错误时无无法重新新输入,而是直直接跳到到主菜单单。缓存存较多。8.建议议题目应更更加贴近近生活,这样可可以让同同学们看看到c语语言的有有用之处处,激发发同学们们的学习习热情。课程设设计的题题目涉及及范围应应该更广广。程序序设计的的功能应应相对更更加复杂杂一点,这样有有利培养养同学们们的分析析问题,解决问问题的能能力,同同时也能能提高同同学们对对代码的的掌握能能力。再再者,就就是验收收时应该该要学生生画出链链表结构构图

23、,帮帮助他们们更加深深刻的掌掌握知识识。9.编程程体会经历了编编c语言言课程设设计后,我对这这一学期期c语言言所学内内容有了了更加深深刻的了了解和掌掌握,特特别是一一直不懂懂的链表表和指针针,现在在发现自自己都能能运用了了,很开开心自己己的进步步。所以以,虽然然写程序序的过程程中,遇遇到各种种问题,调试的的时候也也是遇到到各种令令人头大大的问题题,但能能借助课课程设计计提高自自己对指指针和链链表的熟熟练度,提高自自己对cc语言编编程的熟熟练度,也希望望学校可可以多开开设一些些这样的的课程,既是让让我们对对自己所所学知识识的一个个综合理理解与使使用,也也可以提提高我们们的动手手实践能能力、对对知

24、识的的运用能能力,更更是一个个让我们们学会独独立思考考的好机机会。10.程程序源代代码#inccludde #inccludde #inccludde #inccludde #inccludde #inccludde#deffinee LEEN ssizeeof(strructt buuy) /申申请结构构体空间间#deffinee N 1000/*申申明程序序中运用用的函数数*/voidd huuanyyingg(); /封面面函数voidd reeadiintoo(); /读取文文件voidd innputt(); /添加加采购信信息voidd liistCCG(); /显显示采购购信息v

25、oidd nuumshhow(); /根据采采购编号号显示采采购信息息voidd naamesshoww(); /根据据零部件件名称显显示采购购信息voidd chhangge(); /修改采采购信息息voidd diisappperr(); /删除采采购信息息voidd meenu(); /显示主主菜单voidd chhoisse(); /选选择所需需功能voidd toongjji(); /统计功功能菜单单int nummberr(); /根据零零部件名名称统计计采购的的零部件件总数量量int timmes(); /根据采采购员名名字统计计采购的的零部件件总数量量int cheeckdda

26、tee(innt yyearr,innt mmontth,iint dayy); /检测时时间voidd byyebyye(); /告告别界面面voidd saave(); /保存文文件/*定义义全局变变量*/struuct buyy /定定义结构构体charr buuynuum110;charr ittemnnamee100;charr daay330;charr buuyerrnamme110;int couunt;floaat ppricce;charr soourcce110;struuct buyy *nnextt;int flaag=00;/*fflagg为文件件是否以以正确读读入

27、的标标志位*/struuct buyy *hheadd=NUULL,*p,*p11,*pp2,*p3; /*定义结结构体指指针*/*主函数数*/int maiin()huannyinng();getcch();whille(11)menuu();/*显示示主菜单单*/choiise();/*显示选选择功能能*/retuurn 0;/*封封面函数数*/voidd hhuannyinng()prinntf(nnnnttt*nn); prrinttf(tt* *n); prrinttf(tt* c语言言课程设设计 *n); prrinttf(tt* *n); prrinttf(tt* 学学生姓名名:

28、徐倩倩 *n); prrinttf(tt* 指指导老师师:吴年年志 *nn); prrinttf(tt* 班班级:TT13223-115 *n); prrinttf(tt* 学学号:220133023315338 *n); prrinttf(tt* 联系方方式:118777296613557(6691880) *n); prrinttf(tt* *n); prrinttf(tt* 课程题题目:汽汽车零部部件采购购管理程程序 *n); prrinttf(tt* *n); prrinttf(tt*n); ffflussh(sstdiin); prrinttf(请按回回车键继继续);/*告别界界面*

29、/voidd byyebyye()prinntf(nnnnttt*nn); prrinttf(tt* *n); prrinttf(tt* *n); prrinttf(tt* *n); prrinttf(tt* *n); prrinttf(tt* *n); priintff(ttt* *n); prrinttf(tt* *n); priintff(ttt* *n); priintff(ttt* *n); priintff(ttt* *n); priintff(ttt* 欢迎下下次使用用 *n); prrinttf(tt*n);/*主菜菜单函数数*/voidd meenu()systtem(cll

30、s);prinntf(nnnnttt*欢欢迎使用用汽车零零部件管管理系统统*nn);prinntf(ttt | ttttt|n);prinntf(ttt |ttt11,读取取采购信信息tttt|n);prinntf(ttt | ttttt|n);prinntf(ttt |ttt22,从键键盘添加加并保存存采购信信息tt|nn);prinntf(ttt | ttttt|n);prinntf(ttt |ttt33,根据据采购编编号查找找零件信信息tt|nn);prinntf(ttt | ttttt|n);prinntf(ttt |ttt44,根据据零部件件名称查查找采购购信息t|n);prinnt

31、f(ttt | ttttt|n);prinntf(ttt |ttt55,修改改并保存存采购信信息ttt|n);prinntf(ttt | ttttt|n);prinntf(ttt |ttt66,删除除并保存存余下采采购信息息t|n);prinntf(ttt | ttttt|n);prinntf(ttt |ttt77,统计计采购信信息tttt|n);prinntf(ttt | ttttt|n);prinntf(ttt |ttt88,显示示采购信信息tttt|n);prinntf(ttt | ttttt|n);prinntf(ttt |ttt00,退出出管理系系统tttt|n);prinntf(t

32、tt*n);/*读读入文件件函数*/voidd reeadiintoo()FILEE *ffp; /*文件指指针*/ intt n=0; if(fp=foppen(liingjjiann.txxt,r)=NUULL) /*打开开文件时时无此文文件*/ prinntf(文件件打开错错误:n); exitt(0); p1=(strructt buuy *)maallooc(LLEN); headd=p11;p1-nexxt =NULLL; whille(!feoof(ffp)/*读取文文件内的的信息*/ fscaanf(fp,%ss%s%s%ss%d%f%ss, p1-buuynuum,pp1-i

33、teemnaame,p1-daay,pp1-buyyernnamee,&pp1-couunt,&p11-ppricce,pp1-souurcee); p2=(strructt buuy *)maallooc(LLEN); /*p2指指向新申申请的节节点*/p1-nexxt =p2; p3=pp1; p1=pp2; p1-nexxt =NULLL; freee(p22); p3-nexxt=NNULLL; fcloose(fp);/*关关闭文件件*/ flagg=1;prinntf(文件件读取成成功!n);listtCG();/*选选择所需需功能函函数*/voidd chhoisse()int

34、n;prinntf(请从从键盘输输入您的的选择(0-88内的整整数):);scannf(%d,&nn);whille(nn8)prinntf(输入入不合法法,请再再输入一一次:);scannf(%d,&nn);swittch(n)casee 1:sysstemm(ccls);/*清屏*/readdintto();breaak;casee 2:sysstemm(ccls);inpuut();breaak;casee 3:sysstemm(ccls);numsshoww();breaak;casee 4:sysstemm(ccls);nameeshoow();breaak;casee 5:syss

35、temm(ccls);channge();breaak;casee 6:sysstemm(ccls);disaappeer();breaak;casee 7:sysstemm(ccls);tonggji();breaak;casee 8:sysstemm(ccls);listtCG();breaak;casee 0:sysstemm(ccls);byebbye();exitt(0);/*从键键盘添加加并保存存采购信信息函数数*/voidd innputt()int n=00,i=0,kk;charr chh;longg y,m,dd;if(fflagg=00) prinntf(未建建立,采采购

36、信息息数据库库为空n); prinntf(按任任意键返返回);getcch(); reeturrn; priintff(请请输入将将要添加加的采购购编号(形如00010002,以回车车键结束束)nn);ffluush(stddin);scannf(%s,p22-bbuynnum);p1=hheadd;whille(pp1!=NULLL)if(sstrccmp(p2-buuynuum,pp1-buyynumm)=0)/*找找到数据据库信息息中与输输入相同同的采购购编号*/prinntf(你输输入的采采购编号号已存在在!);prinntf(对应应零部件件信息如如下:);prinntf(采购购编号:

37、%sn,p1-buuynuum);prinntf(零部部件名称称:%ssn,p11-iitemmnamme);prinntf(采购购日期:%sn,p1-daay);prinntf(采购购员名字字:%ssn,p11-bbuyeernaame);prinntf(采购购数量:%dn,p1-coountt);prinntf(采购购价格:%fn,p1-prricee);prinntf(供货货单位:%sn,p1-soourcce);n=1;/*标标志位*/prinntf(请按按任意键键返回!n);getcch();systtem(clls);breaak;p1=pp1-nexxt;if(nn!=11)sy

38、sttem(clls);p1=hheadd;whille(pp1-nexxt!=NULLL) p1=pp1-nexxt;prinntf(请输输入);p2=(strructt buuy *)maallooc(LLEN); /开辟辟一个新新单元 ffluush(stddin);for(i=00;ibuyynumm);if(ii=11) ffluush(stddin);prinntf(零部部件名称称(文字字或英文文字符串串型):);scannf(%s, pp2-iteemnaame);if(ii=22)doprinntf(采购购日期(形如*-*-*,以回回车键结结束):);ffluush(stddi

39、n);scannf(%s,p22-dday);if(pp2-dayy4=-&p22-dday7=-&strrlenn(p22-dday)=110)y=(pp2-dayy0-488)*110000+(pp2-dayy1-488)*1100+(p22-dday2-48)*100+(pp2-dayy3-488);m=(pp2-dayy5-488)*110+(p2-daay66-448);d=(pp2-dayy8-488)*110+(p2-daay99-448);k=chheckkdatte(yy,m,d);/*根根据函数数返回值值判断是是否要重重新输入入*/if(kk=11)breaak;whiil

40、e(1);if(ii=33)ffluush(stddin);prinntf(采购购员名字字(文字字或英文文字符串串型,以以回车键键结束):);scannf(%s,p22-bbuyeernaame);if(ii=44)ffluush(stddin);prinntf(采购购数量(文字或或英文字字符串型型,以回回车键结结束):);scannf(%d, &p2-coountt);whille(pp2-couuntcouunt);if(ii=55) ffluush(stddin);prinntf(采购购价格(数字型型,以回回车键结结束):);scannf(%f,&pp2-priice);whille(p

41、p2-priicepriice);if(ii=66)ffluush(stddin);prinntf(供货货单位(文字或或英文字字符串型型,以回回车键结结束):);scannf(%s,p22-ssourrce);p2-nexxt=NNULLL;p1-nexxt =p2; p1=hheadd;systtem(clls);prinntf(所有有信息如如下,请请核实);whille(pp1!=NULLL)prinntf(采购购编号:%sn,p1-buuynuum);prinntf(零部部件名称称:%ssn,p11-iitemmnamme);prinntf(采购购日期:%sn,p1-daay);prin

42、ntf(采购购员名字字:%ssn,p11-bbuyeernaame);prinntf(采购购数量:%dn,p1-coountt);prinntf(采购购价格:%fn,p1-prricee);prinntf(供货货单位:%sn,p1-soourcce);prinntf(nnnn);p1=pp1-nexxt;savee();prinntf(按任任意键返返回);ffluush(stddin);scannf(%c,&cch);/*根据据采购编编号查找找采购信信息函数数*/voidd nuumshhow()charr annum10,chh;p1=hheadd;if(pp1=NULLL)prinntf(

43、采购购信息数数据库为为空nn);prinntf(按任任意键返返回);getcch();systtem(clls);exitt(0);prinntf(请输输入所查查零件编编号(形形如00000001,以以回车键键结束):nn);getccharr();scannf(%s,annum);whille(pp1!=NULLL)if(sstrccmp(anuum,pp1-buyynumm)=0)/*找到与与信息数数据库中中与输入入相同的的采购编编号*/prinntf(采购购编号:%sn,p1-buuynuum);prinntf(零部部件名称称:%ssn,p11-iitemmnamme);prinntf(

44、采购购日期:%dn,p1-daay);prinntf(采购购员名字字:%ssn,p11-bbuyeernaame);prinntf(采购购数量:%dn,p1-coountt);prinntf(采购购单价:%fn,p1-prricee);prinntf(供货货单位:%sn,p1-soourcce);breaak;elseep1=pp1-nexxt;if(pp1=NULLL)/*pp1=NULLL表示示到最后后都没有有找到与与信息数数据库中中与输入入相同的的零部件件名称*/prinntf(文件件中没有有您所查查找的采采购信息息,请核核对您的的采购编编号是否否输入正正确!n);prinntf(请按按

45、任意键键返回返返回!);ffluush(stddin);scannf(%c,&cch);prinntf(按任任意键返返回);ffluush(stddin);scannf(%c,&cch);/*根根据采购购零部件件名称查查找采购购信息*/voidd naamesshoww()charr annamee100,cch;int n=00;p1=hheadd;if(pp1=NULLL)prinntf(采购购信息数数据库为为空nn);prinntf(按任任意键返返回);getcch();systtem(clls);exitt(0);prinntf(请输输入所查查零件名名称(以以回车键键结束):nn);f

46、fluush(stddin);scannf(%s,annamee);whille(pp1!=NULLL)if(sstrccmp(p1-ittemnnamee,annamee)=0)prinntf(采购购编号:%sn,p1-buuynuum);prinntf(零部部件名称称:%ssn,p11-iitemmnamme);prinntf(采购购日期:%dn,p1-daay);prinntf(采购购员名字字:%ssn,p11-bbuyeernaame);prinntf(采购购数量:%dn,p1-coountt);prinntf(采购购单价:%fn,p1-prricee);prinntf(供货货单位:%

47、sn,p1-soourcce);n=1;elseep1=pp1-nexxt;if(nn!=11)prinntf(文件件中没有有您所查查找的采采购信息息,请核核对您的的零部件件名称是是否输入入正确!n);prinntf(请按按任意键键返回返返回!);ffluush(stddin);scannf(%c,&cch);prinntf(按任任意键返返回);ffluush(stddin);scannf(%c,&cch);/*删除并并保存余余下采购购信息函函数*/voidd diisappperr()charr annum10,chh;if(fflagg=00)/*fflagg=00表示未未建立文文件,标标

48、志位法法*/ prinntf(未建建立,采采购信息息数据库库为空n); prinntf(按任任意键返返回);getcch(); reeturrn; if(hheadd=NNULLL) prinntf(nn 采购购信息数数据库为为空,无无法删除除,请按按任意键键返回:n); getcch(); systtem(clls); retuurn; p1=hheadd; /*p11指向头头结点*/prinntf(请输输入要删删除的采采购信息息编号:n);ffluush(stddin);scannf(%s,annum); whille(sstrccmp(anuum,pp1-buyynumm)!=0&p1-

49、neext!=NUULL) /*找到要要删除的的学号*/p2=pp1; p1=pp1-nexxt ; if(sstrccmp(anuum,pp1-buyynumm)=0) if(hheadd-nnextt=NNULLL) /*只有一一个节点点的情况况*/freee(heead); headd=NUULL; elsee if(hheadd=pp1) /*要删除除的编号在第第一个节节点中*/headd=p11-nnextt; freee(p11); elseep2-nexxt=pp1-nexxt; freee(p11); prinntf(已删删除!n);listtCG();savee();else

50、eprinntf(找不不到此采采购编号号对应的的采购信信息,请请核您输输入的采采购编号号是否正正确!); prinntf(按任任意键返返回:n); ffluush(stddin); prinntf(按任任意键返返回);ffluush(stddin);scannf(%c,&cch);/*修改改并保存存采购信信息函数数*/voidd chhangge()charr annum10,chh;int t,kk;longg y,m,dd;if(fflagg=00)prinntf(未建建立,采采购信息息数据库库为空n); prinntf(按任任意键返返回);getcch(); reeturrn; if(h

51、headd=NNULLL) prinntf(nn 采购购信息数数据库为为空,无无法修改改,请按按任意键键返回:n); getcch(); systtem(clls); retuurn; p1 = heead;prinntf(请输输入要修修改采购购信息的的采购编编号(形形如00010002,以以空格键键结束):nn);ffluush(stddin);scannf(%s,annum);whille(sstrccmp(anuum, p1-buuynuum) != 0 & pp1-nexxt != NNULLL )p1=pp1-nexxt;if(sstrccmp(anuum, p1-buuynuum)

52、 = 0 )prinntf(是否否修改采采购编号号?是(1)否否(0));/*判断断各项是是否需要要修改*/scannf(%d,&tt);if(tt=11)prinntf(请输输入修改改后的采采购编号号:nn);ffluush(stddin);scannf(%s,p11-bbuynnum);prinntf(是否否修改零零部件名名称?是是(1)否(00));scannf(%d,&tt);if(tt=11)prinntf(请输输入修改改后的零零部件名名称:n);ffluush(stddin);scannf(%s,p11-iitemmnamme);prinntf(是否否修改采采购日期期?是(1)否否

53、(0));scannf(%d,&tt);if(tt=11)doprinntf(请输输入修改改后的采采购日期期(形如如*-*-*,以以回车键键结束):);ffluush(stddin);scannf(%s,p22-dday);if(pp2-dayy4=-&p22-dday7=-&strrlenn(p22-dday)=110)y=(pp2-dayy0-488)*110000+(pp2-dayy1-488)*1100+(p22-dday2-48)*100+(pp2-dayy3-488);m=(pp2-dayy5-488)*110+(p2-daay66-448);d=(pp2-dayy8-488)*1

54、10+(p2-daay99-448);k=chheckkdatte(yy,m,d);/*根根据函数数返回值值判断是是否要重重新输入入*/if(kk=11)breaak;elsee prrinttf(输入错错误!n);whiile(1);prinntf(是否否修改采采购员名名字?是是(1)否(00));scannf(%d,&tt);if(tt=11)prinntf(请输输入修改改后的采采购员名名字:n);ffluush(stddin);scannf(%s,p11-bbuyeernaame);prinntf(是否否修改采采购数量量?是(1)否否(0));scannf(%d,&tt);if(tt=1

55、1)prinntf(请输输入修改改后的采采购数量量:nn);ffluush(stddin);scannf(%d,&pp1-couunt);whille(pp1-couuntcouunt);prinntf(是否否修改采采购价格格?是(1)否否(0));scannf(%d,&tt);if(tt=11)prinntf(请输输入修改改后的采采购采购购价格:n);ffluush(stddin);scannf(%f,&pp1-priice);whille(pp1-priicepriice);prinntf(是否否修改供供货单位位?是(1)否否(0));scannf(%d,&tt);if(tt=11)pri

56、nntf(请输输入修改改后的供供货单位位:nn);ffluush(stddin);scannf(%s,p11-ssourrce);systtem(clls);prinntf(修改改完毕!n);listtCG();savee();elseeprinntf(文件件中没有有您所查查找的采采购信息息,请核核对您的的零部件件名称是是否输入入正确!n);prinntf(按任任意键返返回);ffluush(stddin);scannf(%c,&cch);/*统计计功能菜菜单函数数*/voidd toongjji()int n,xx,y;charr chh;prinntf(tt*统计计功能菜菜单*n);pri

57、nntf(ttt11,统计计采购的的零部件件总数量量ttnn);prinntf(ttt22,统计计采购员员采购次次数tttn);prinntf(请输输入你选选择的统统计类型型编号(1或22):n);scannf(%d,&nn);swittch(n)casee 1:sysstemm(ccls);x=nuumbeer(); /*x赋值值为函数数返回的的零部件件总数量量*/prinntf(总数数量为%dnn,xx);breaak;casee 2:sysstemm(ccls);y=tiimess();/*y赋赋值为函函数返回回的采购购次数*/prinntf(采购购次数为为%dn,y);breaak;defaaultt:prinntf(无效效输入!请按任任意键返返回);getcch();systtem(clls);prinntf(按任任意键返返回);ffluush(stddin);scannf(%c,&cch);/*根根据采购购编号统统计采购购的零部部件总数数量*/int nummberr()int n=00,t=0;

温馨提示

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

评论

0/150

提交评论