程序设计课程设计_第1页
程序设计课程设计_第2页
程序设计课程设计_第3页
程序设计课程设计_第4页
程序设计课程设计_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

课程设计骂课程名称剃期飞程序设计课唉程设计哭臭班级与班级慕代码旷预2023级晕信息管理1耕班旷陕专奉业删亏判信息管理匠新胜指导教师:成物胡玉平祸循暮学养号逝:做初唱11251吩1011与21耽雁拳姓俗名蝶:距揪执咐蓝俊杰能暮晶提交日期:赴2023羡壁年6劳月23粉日和创广东商学院径教务处旅制首姓名金腾蓝俊杰奉连滨断希课程设计成罪绩两隙说评语:礼评价内容似不及格虑及格叉中屠良唇优靠表达精练,首格式准确,忧基本无错别暴字缸内容完整,技思路清晰,冲结构严谨,睡设计科学,尾可操作性强卵程序能完成估课程设计任养务书所规定虏的任务,功堡能完善,升独立分析和陷解决问题能隆力较好。碗代码简洁,额算法清晰,想可读性强越无抄袭现象锯且课程设计铃报告体会深女刻槐悠突岁凉铁指导教师投(签名)磨外丧枪涝摔锐争顿绒献超年得月乱日斥说明:指导晶教师评分后继,课程设计扔交院(系)赞办公室保存炎。阅课程设计报鸦告正文的内雷容及排版要命求西标题:忍单位仪器设遍备基本信息佛管理软件设铃计种1系统功舌能要求:(湿一级标题:缺黑体、四号下)鸽内容:圆单位仪器设井备基本信息扔管理软件设斥计个:采用结构侍体数组或文涝件形式存储洽每种设备的脏信息,每个划仪器设备应炒包含如下几络方面的信息如:设备编号探、设备名称授、设备单价向、购进年代畏、生产厂家牢、该设备数橡量、可用性俭。软件由主伍函数(含欢婚迎界面)+器下列5个功素能模块组成破:(1)购姑进功能(被姻购进设备数算量增x);查(2)显示益已有设备;抢(3)报废呜功能(对陷“提可用性垦”税信息为室“嘉否考”端的设备报废安,被报废设猪备数减x)衡;(3)查很找功能(需末指定设备号忍或设备名)闭;(5)统浅计功能(统出计每种设备饶可用数、不破可用数);教(6)退出荒程序的运行慌。残2系统妈总体设计思伪想州(1)开发户与设计的总慧体思想内容示例:保单位仪器设笨备基本信息谋管理软件算缘法说明:捎STEP1孝预处理,烂定义结构体普STEP2避进入欢迎萝界面芝STEP3货选择某一贯种功能嫂STEP4辽根据提示捕输入一个献数字修STEP5促对于输入衬的羊数字岛编辑关于购蜻进、报废、子查找、统计归功能的函数惕STEP6杯如果输入驻的字母表示朱退出,退出震系统洪(2)系体猴模块结构图欢迎界面主菜单欢迎界面主菜单购进设备 查找设备 报废设备 修改设备 显示程序 保存设备退出读取设备退出读取设备氧(3)系统谨文件及函数疏组成、功能垫(参考滋P154的促表12-1讯)毯源文件临函数名或其扰他成分神功能酒facil之ity疏.c扰main葛总控函数笑同selec较t血菜单选择紫menu_咱selec皇t帝菜单处理异quit众结束运行妥F狭acili砖ty_讲add_扬sum递.c耳showT驼able廊打印表头欠show捉显示所有的微设备信息绪addfa河cilit妻y禾在表尾追加岁信息毕facil向ity_M映odify败_remo脏ve炒.c芒findR案ecord液胖查找到指定尘的信息庆seekf所acili恒ty舒查询指定设态备的信息凉remov杏efaci封lity倘报废设备亩modif墨yfaci悼lity傻修改怖设备躲facil华ity歌.h夫常数蛛提供常数违结构声明炎设备结构变库函数及函齿数原型声明腾引用库函数胁及函数鞠facil罚ity_s梢ave_l道oad.c受saveR跑ecord拾s场存储信息旺loadR速ecord锹s睛读取信息黎3系统躺详细设计思泼想涌次(1)函肥数的描述嘉内容包括:百分模块(函魄数)简述其朋功能;函数贤中使用的各凤变量的类型乔及作用等(淹可参考材P痰155的写菜法)。攻1.显示所析有设备信息被函数村函数原型:味void夹show击热(void三)希功能:显示誉内存里的记丈录信息艺参数:vo脆id彻返回值:v圾oid嘱工作方式:罢从头部开始点逐个显示记凳录内容。窝要求:报告否是否有记录最及记录条数玩和内容。办2.购进设销备函数哥函数原型:赠void恩addfa型cilit郊y闷状(void泻)讯功能:增加众记录塞参数:vo脏id妻返回值:v瓦oid争工作方式:迁从尾部开始峰逐个追加记猴录。比要求:将新悠记录追加在佛记录尾部,承并对记录进密行计数。酷3.显示所泻有设备信息惑函数犯函数原型:睡void虑showT多able(抵void)寻功能:输出侨表头信息润参数:vo哀id丙返回值:v蒙oid迟工作方式:蚕输出一行表湾头信息。搬要求:输出仆一行表头信牢息。衰4.报废设之备函数四函数原型:玉void效remov略efaci百lity估帮(void升)顺功能:旷把所选的仪萝器报废,最被报废设备金数减x。疮参数:vo穗id蜓返回值:v应oid菌工作方式:奖根据给定的患关键字,查乱找符合的记夕录并将报废词的设备删除燥。拐要求:将报测废的设备数艘减去。有5.显示所荡有设备信息铃函数沟函数原型:中intf材indRe躲cord(化char*击targ响et,i季ntta岂rgetT女ype,槐intf扭rom)假功能:查找等指定的记录牲参数:ch王ar*t乏arget隙:欲查找记都录的某一项笔与targ德et相同合返回值:i蚕ntta磁rgetT抬ype:表径明通过哪项才来查找,0柔为编号,1匀为名称。捎吵int恋from胡:从第fr押om个记录争开始找。见工作方式:值根据给定的垄关键字,查芬找符合记录痛的序号。市要求:找不隐到则返回-址1.暑6.慈查询指定毅设备赞的击信息函数附函数原型:旬void站驶seekf绘acili眨ty嘱软(void脚)仆功能:揪查询指定设之备的信息促参数:vo绝id银返回值:v鄙oid耗工作方式:海可以按照编莫号、名称来境查询劳要求:苍股打印查询到达的设备的信岁息减7.锄修改设备信凡息奥函数原型:寒void扬modif细yfaci治lity支香(void鞋)羽功能:酱修改指定疏设备攻的信息盲参数:vo钱id找返回值:v阀oid哑工作方式:挽修改设备的捡信息肉要求:报告肥是否有记录简及记录条数笼和内容茄8、文玩件存储操作底函数静函数原型舱:昼ints吴aveRe猛cords稿(辱void畜)昂功能:繁把信息存储稀进指定文件扭中毒参数:in氧t方返回值:v悔oid接工作方式:正输入文件名贷字并保存踪要求:草有空间存储名9、秧文件读取操惨作函数给函数原型:粥intl仪oadRe洲cords海(voi消d)外功能:处从指定文件胸中读取出的事记录听参数:in咽t贱返回值:v勤oid多工作方式:救输入已经存热在的文件名矿字来读取文唤件中的信息折要求:已经把存在文件可崭供读取水10摩.主函数腹函数原型:港intm心ain()患功能:控制叫程序佩参数:vo楚id赞返回值:v触oid配要求:管理旧菜单命令并惑完成初始化幻11活.菜单处理义函数踢函数原型:狡void伸selec固t省(void容)及功能:处理尽选择的菜单泡命令码参数:vo砖id伸返回值:v歇oid春工作方式:蕉根据命令,滨调用相应函挽数俗要求:给出探结束信息谊12门.菜单选择日函数逗函数原型:衔intm两enu_s酸elect乱()泊功能:接收可用户选择的角命令代码其参数:vo之id桨返回值:i币nt感工作方式:坚返回命令代贸码的整数值罪要求:只允座许选择规定烤键,如果输叶入不合要求南,则提醒用踪户重新输入穗13制.结束程序躬运行函数溉函数原型:平void现quit(对void)滚功能:结束剖程序运行俗参数:vo饶id蹦返回值:v勿oid夺工作方式:牧根据要求决雁定在退出前元是否将修改垮的记录存入抄文件焰要求:结束之运行之前,挪询问是否对恩修改的记录扩进行存储示14舱.头文件虾函数原型:央devic宾e.h雄功能:声明依函数原型,肢包含文件及询自定义宏和材数据结构除参数:vo逢id钱返回值:v困oid筋要求:报告奶是否能正常堪打开文件执求行存入操作阴及存入记录犹的条数疤1格5宪、文件瘦陕(2)主要木函数流程图虎1.vo名idad冻d怨facil狱ity圈(void袖)乎2谈.伙寄void怖selec别t矩(void乔)期3.鼠桂void羽show弱(void皮)语4.悟席intf窃indRe仁cord(怀char*防targ柜et,i愤ntta微rgetT漆ype,甩intf闭rom)仔5.妇查void怨remov榆facil盟ity距(void班)境6.姓假void挡modif哨yfaci咱lity棕丰(void台)调试结果:伍(1)恰欢迎界面:挡输入拣密码借(2)功能哪选择菜单息(3)购进都新设备功能基而在于设备智数量大于1来00台和小肺于100台汇的处理上,倘大于100令台则直接输散入可用设备蛇的数目,而巷对于小于1碑00台,则朱逐台输入每愉台的可用性垮不可用性。控(4)显示地已有设备巧(5)报废堆设备刑报废功能也访可以按照名报字和编号来亚报废,报废蒙前还会打印贵出将要被报解废的设备信更息再一次询泪问操作者是则否要删除该灭设备。们(6)查找电设备肢按编号查找连按设备名称尿查找倒(7)保存石设备信息却(8)读取分设备信息纹本人在程序袜设计中感想卖本人在程序坟设计的课程委设计中感受弱到:很多的雷函数设计与元学生管理系跟统还是有挺垦大的差别的请。通过设置撇密码可改变坐背景和字体照颜色的设计致,让我懂得专了C语言剧还是有很多此我没有了解姥到的地方,吼通过互联网马上的资源我劣们可以懂得绵的更多。而育遇到不懂的相地方就要耐离心的读懂,剑实在不懂的笑就要谦虚地捕问同学和老演师,例如在补程序设计过开程中sca杏nf语句与赠getch档ar()语咬句混搭容易抵出现跳句,万需要不断的难修改来完善趣。将保存文约件语句和读攻取文件语句隶穿插也需要宪注意,当记衫录为0时直星接调用sa肆veRec拔ord()脂语句是保存汇不了的,所守以需要再修柜改。通过实枕验让我更加壁深刻学习到朋了C语言的川好处。5结束语技C语言的程稀序设计实验亡的成功实验派,靠得不仅听仅是自己的片努力,还有抹同学的帮助悼,当然最重泽要的还是老孟师的耐心解童答。参考文献层[1]谭茄浩强,C程洽序设计(第狗二版),北醉京:清华大阵学出版社,疗2001.敬1(左对飞齐,宋体,飞五号)袄[2]陈双朔鹰,C语液言程序设计易习题集,北顶京:人民邮距电出版社,距2003.鼠6渣facil深ity.h卸#ifnd录efH饥_STUD丽ENT_H泉H//钳如果没有定做义竭H_STU尺DENT_丽HH,岔继续执行游#defi序neH_蔑STUDE装NT_HH紧//博定义拳H_STU解DENT_计HH,示可避免重复桂编绎做#incl赛ude<仍stdio鼠.h>启#incl墨ude<姐stdli睁b.h>雕#incl役ude<辫conio忙.h>谦#incl黎ude<葵strin谱g.h>配//给头文件包含圈#defi驾neIN酒ITIAL旅_SIZE阻5剩嘉//绍竹数组初始大草小三#defi警neIN之CR_SI到ZE5驼除曾//偿厚数组每次增篮加的大小销//状可根椐系统布使用需要的滩常量定义召struc叫tfac规ility俘_info杨{默券char场numbe面r[20]辰;见锻掏//出设备编号肝盒char拢name[邮20];魔文龙准//村设备名称不拢char恒manuf柔actor螺y[20]驳;桑//翁设备生产厂跟家迫接给缘趣细胞陕经算畅char棋year[侦20];比降知/骂/限设备购进年勾代捧峰float悦getn锦umber苏s;狭钩/车/轧设备购进数缘目嗽f灵loat搁usab困le;四陡星/龙/率可用设备扒确float词pric彻e;坟描蚀/将/烧设备单价衰秋自引趴露};何typed亦efst应ruct鲜facil樱ity_i衡nfoS没BInfo症;//遮定义一个类漠型名宁SBInf目o舟代表定义的划结构体隙shebe张i_inf游o赴exter扰nint志numS毯tus;京析泳跃//幕记录的设备灭数饿exter闸nSBI棚nfo*笨recor割ds;荷都/臭/朴记录设备信害息的数组指答针鹊exter欧ni泛ntar豪raySi仅ze;获债客//裕压数组大小阻exter懒ncha抓rsav艇edTag厦;俭//把共享的全局惠变量定义瞒void模selec牛t(voi嫁d);己intm黑enu_s来elect快(void症);重void走addfa辽cilit郊y(voi甜d);掌void伪modif也yfaci熊lity(舱void)葬;旗void跟show(齿void)祸;撇void惰seekf太acili桐ty(vo碑id);跟void贡remov秘efaci暑lity(肝void)疲;级void庄quit(敏void)罗;抢void太showT联able(迫void)财;渠intf组indRe健cord(沃char*升targ原et,i斤ntta穷rgetT旁ype,杨intf遥rom);为intg失etInd辩ex(fl件oats贺um);拴ints货aveRe痰cords郑(void住);怪intl借oadRe蠢cords贷(void恩);从void悔copyR拘ecord雕(SBIn宜fo*h墙um,S等BInfo搭*orc叠);危//懒函数申明鸭,拣注意晴()廊里必须包含寨对应函数形逢参类型竟#endi欢f//拍H_STU尝DENT_羊HH岁facil付ity.c揉#incl涝ude"键facil默ity.h臂"能#incl畜ude<c竟onio.汽h>尸/****崭*****冒*****删*****授*****脂**村*款初始化钱****总*****皮*****标*****竭*****皇**/预intn创umStu坏s=0社;首玩线/威/期记录的学生逝数社SBInf意o*re隐cords稠=NU屑LL;乐城//磁记录学生信宰息的数组合inta威rrayS胜ize;坡恋/向/巴数组大小水char饿ch1[1喉5],ch辆2[15]禾={"JJ野"};稀char致saved急Tag=房0;彼矛//届信息是否已搞保存的标志奉,跨1鸡为未保存,乖0研为已保存色/****债*****骄*****谅*****损*****辈**集*绕主函数懂****醉*****挪*****赛*****赴*****览**/艇intm吓ain(){途仍syste乖m("co狭lor9形");硬左//查初始化数组轿谈recor梯ds=猛(SBIn寺fo*)m渗alloc继(size交of(SB是Info)粱*INIT起IAL_S喇IZE);妹//制给数组分配管StuIn蹦fo抢分配布INITI拿AL_SI兄ZE逆个记录空间见大小障杂if(r补ecord亩s==舅NULL)鸣{今绿锣print鬼f(茎"memo灯ryfa院il!")吐;雅疾失exit(角-1);即//秃如果内存空敏间不够分配御,菠退出程序}懂兽array孟Size捧=INI棉TIAL_费SIZE;赠窝逃辞那己扶刮建吓耐泊适print狮f("脖****哥*****头*****患*****神*****极*****妈*****莫*****藏*****尚*****气*****琴*****迁*****他*****析****狡\n"庄);柏print僵f("渐*恨ca属llmeJ肆J灶谋痰私渡享SING树LEJJ昌雷BIR惹THDAY株炒*骂\n");廊print烈f("*捉咐lo义velov侄e*鸦*姐讨悦暗ha摧ndsom身e痛1缴99209肥29肿蔑*\n"脂);之print用f("*挽锡含**舰*忠*爷辅金榜然**白匆欢**秆梢盗*\n"鸦);神print辣f("*得竿久**趟*狂适肚舍降善**猪庸桃**指唉聪*\n"晓);完print槐f("*棕翻垒**近型QQ:适49679阴8140赌淡缸**负烂轰**工腿宏*\n"羊);趟print跃f("*衔摧匹**撑神机嘿我是蓝俊软杰扭驾微**粉挑读*谷*显恋*\n永");专print患f("*誓腔细**逢把QQ醉QQ银QQ花湖**像**芬木*懒***呀波慕*\n"每);肥print戚f("*佩圆愉弟:150渡贤QQ油QQ扁QQ酒陪6737郊98彻渐673资798雪怠*花\n");卵print贺f("*胁咽爽1559戏3798母执QQ发QQ俩QQ扩肚**笼*窄策*贺**玻时*矩\n");亏print裂f("**棒均差扬计厅肺祥遣暖承矿换肯桃辩*\n"被);腹print群f("*泊*比立勿革铸达则快隶浓庆条颤历*雕*\n"鼠);初print谅f("股**萝歌激烈欢迎使用嚼孔仪器设备基览本信息管理望程序恩惰确胁找**蒸\n");硬print貌f("遥**奉对乎霉邀精想粒假页弊毛旨纸**鞠\n"病);袋print顾f("届**饲锁径双设计者皮均蓝俊杰企1251梯10112承1虹距染狗讲**字\n保");联print逐f("挖*穴*创眠维太冤界*誉*****宁秒喉粘匆正**钉牢\n")禽;乎print圾f("里便**穴朵偶萍袭**吃*虑***盟惜帝险型**便绕\n"耍);傅print量f("住帐**集普趟辅远***研**些***许俘均姿例**抄毫\n"酒);池print吩f("仅察贤*****澡*****管*****汁*****涨****搬*鞋****棍*****纤*****踪*****韵*****鼻*翼逝\n"饶);铺print家f("庭氧姑***雪*****裤*****酿*****溜*****想**窑****拼*****服*****泽*****郊****苦文孝\n"赠);园print威f("虑惩轧土握躲逐**偿*弃***固梦柜费经规宝\抽n");棍print悄f("煮膀励这滑供俭单*****策*熄仓颗巷独逃弯\n"殊);方堂print攀f("\n泉");件脸for(;写;)条因{prin普tf("\错n趋模进入系统的亚密码是:嘴");塞策gets忧(ch1)扑;植踏if(s锡trcmp放(ch1,追ch2)=贸=0)br碍eak;呜镇else筑prin价tf("\陆n右SORR洋Y!铁密码错啦隆T_T!\轰n");}丰需print撞f("\n快\t\t椒欢迎使用设刻备管理系统研!\t\n腥");谅音selec今t();}碗/****台*****撤*****批*****绘*****扭**蠢*免菜单处理函辉数卷****所*****抱*****句*****艇*****较**/砍void裙selec夏t(voi图d){怕就for(壮;;无){宇卫偶贯湾征switc真h(men泰u_sel换ect()吉){享阳巩case奴1:稻室刮春addfa踏cilit速y();炊轧购世break润;恶庄取恶case傻2:寺牛津冈seekf涉acili喘ty();房啦攻淡break雀;技宾霞case攻3:叔区舅才remov燕efaci级lity(私);研写垂苍break昨;壁掘做case述4:悦失要留modif财yfaci妈lity(别);网基钉鸦break畅;由项窃case湾5:造堆曲榆show(晨);冰茧院完break招;悄馒伞case锅6:弓血盘总saveR尤ecord岭s();袄企惊历break麻;教离收case丧7:留济称丈捏映蛋loadR专ecord鼻s();充袭撇舞break使;卸序ca间se8:徐宽遥短quit(陕);}}}奴/****娘*****到*****屈*****征*****辽****扯*涌菜单选择函辈数耀menu_成selec赞t滥****嫁*****时*****老*****洲*****针****/叔intm阁enu_s相elect微(){瓦头char来s[2];傻鸦intc隙n=0;清脚print兴f("\n户");由p陷rintf待("\妨t1.总购进设备捐\n")球;僚贴帐print而f("货\t2.碎查找设备较\n")岸;欢于print缝f("迹\t3.吨报废设备伏\n")深;丘羞print痛f("规\t4.押修改设备信邪息续\n")主;傲乞print堵f("洽\t5.慕显示设备信末息锐\n")叮;魂穴pri蹄ntf(浸"\t6禁.前保存设备信堡息极\n")望;兽焦print谈f("鹅\t7.猪读取设备信售息磁\n")误;我畅print关f("全\t8.越退出程序盼\n")趴;望邮print樱f("构\n\t古左边数字对盏应功能选择棕,请选逃1-8:第");灿胆for(;卖;){拾卧显gets(仪s);缝揭背cn=止atoi惑(s);剩绝跳姨if(cn烦<1||旱cn>8形)pri巴ntf("旬\n\t呀输入错误,夹重选免1-8固:锹");急贝泪else龄break昆;}澡弱retur顿ncn;}辩/****犬*****夸*****妥*****脖*****贫*****张*****胀*****垄*索结束运行,笼退出百*饶*吊参数量紫void震*****营*****顺*****升*****解*****血*****脾*****始****/宰void总quit(沿void){爬ch捐arst鞠r[5];豆if各(sav题edTag籍==1)弯{p伯rintf次("\n蜡塞庭是否保存记窑录?(懂Y/n薄)嫩\n");畅p进rintf飞("贡沉选择:愉");轮g坏ets(s膨tr);防if赞(str[轮0]!='萍n'&&s炭tr[0]皱!='N'堂)夸晌胡saveR回ecord圆s();}编fr尼ee(re怖cords绪);发print刘f("\n丽墓By额eBye作啦啦啦啦附通~语\n\n多");驴exit(刑0);}郑facil赤ity_a散dd_su阅m.c柏#incl哭ude"削facil贼ity.h惑"灵/****抽*****惹*****候*****库*欲*裁打印表头穴****跨*****旧*****径*****害*/男float搅getn麻umber禾s,use嫌numbe际rs_1,税usenu止mbers合_2;黎float简unus摊able,杨usabl饺e;舌voi软dsho如wTabl励e(voi侦d){存阳print稼f("\n擦\t煌编号赚\t粮名称狗\t胜厂家蜜");度嗓print处f("\t炉年代淋\t趴单价弄\t助数量见\t践可用数恐\n");}肢/****斑*****扶*****阔*****旋****构*驼显示所有的愿设备信息蝇****牙*****栏*****钢*****盲****/联void虑show(辣void){炉催inti死;谊离if(n洋umStu共s==蜻0){览市渣print脏f("\n哪球秩没有可供显收示的记录!笛\n");西充球红retur准n;}息费showT膨able(恒);召趁if(ge母tnumb粉ers<=践100){踏营for哀(i=0;贼i<nu盛mStus氧;i++纱){仓举宇//羽打印设备的狐信息揭喷剧print到f("\t史%s\t%凉s\t%s矩\t%s\士t%.2f旷\t%.f怨\t%.f泪\n",r规ecord扎s[i].棵numbe世r,rec附ords[央i].na聪me,re险cords攀[i].m族anufa俊ctory侍,reco降rds[i到].yea上r,rec轿ords[遭i].pr猫ice,r汽ecord绘s[i].典getnu浴mbers超,reco塌rds[i谎].usa妨bl宇e);}}耽装else巡if(g隐etnum鞭bers>车100){傻桃fo坐r(i=全0;i<晓numSt穴us;i菜++){头冬蹈//迅打印设备的砍信息聋司剥print旷f("\t戴%s\t%涂s\t%s初\t%s\浓t%.2f明\t%.f鼻\t%.f迈\n",r帆ecord弦s[i].验numbe质r,rec领ords[每i].na清me,re掌cords工[i].m啄anufa痒ctory换,reco谋rds[i露].yea嗽r,rec震ords[姑i].pr象ice,r仆ecord仓s[i].槽getnu枪mbers淋,reco节rds[i掠].usa亏ble);}}}骗/****棚*****伍*****锋*****浴*****汽*****全*绣在当前表的则末尾增加新皂的信息设*农结果:屠recor丢ds亿中将记录新怨的信鸡*饭息,如果数隔组大小不够昌,会重忙*坦新申请数组忽空间漆****即*****压*****讲*****掀*****扛*****程/详void少addfa耍cilit只y(voi谋d){是株char霜str[1转0];爹懒float淡unus类able,召usabl跨e;汁辜int欢酿j;糊驱float喉getn夜umber净s,use颂numbe咸rs_1;市毛float躁pric残e;治i粘f(num摸Stus=厌=0)悦那放凭print援f("\n麦谦析原来没有记寺录,现在建客立新表驾\n");else纲愧历print泳f("\n咽妈并下面在当前约表的末尾增埋加新的信息赖\n");祖赢while锣(1)//茫()彩中为宰1职表示无条件国反复循环{体拾田print凭f("阶载小您将要添加陷一组信息,糕确定吗?赤(Y/n)委");壤专搬gets(财str);艰义汇if(s串tr[0]俯=='n'溉||s等tr[0]佣=='N'店)//挺不再添加新铁的信息享错粗b认reak;馋霜衰if(n素umStu军s>=批array闭Size)大//芽现在的数组扮空间不足,僵需要重新申锯请空间{善别享策recor马ds=脂reall贝oc(re初cords绘,(arr掘aySiz秋e+INC相R_SIZ急E)*si换zeof(害SBInf路o));/遵/悼新空间大小累变为冲(arra候ySize引+INCR忘_SIZE斗)萄记录大小英,胡即在原来基桃础上增加揭INCR_膛SIZE废个记录大小驾茎闲护if(r久ecord装s==途NULL){亭化卖猴辽print然f("me月mory盒faile默d!");考糠洪析址exit(钉-1);}戚到攀芳array车Size宽=arr蛾aySiz驴e+INC猴R_SIZ既E;//冒array炉Size患修改为新空英间可保存的炼记录数}换谁沿print雁f("\n鸭苏穿请输入设备教编号:前");售丑眠gets(款recor辽ds[nu警mStus醋].num鹿ber);岁置幕print蛾f("贸验译请输入设备律名称:愉");傍菜轮gets(柴recor电ds[nu后mStus伞].nam泼e);朗扛pr范intf(昏"迟敞请输入设备炸购进年代:脚");蚊库误gets(甜recor怒ds[nu音mStus冤].yea存r);堆锄pr尸intf(丰"凤缸请输入设备昏生产厂家:纳");改啊ge轨ts(re科cords鬼[numS否tus].迫manuf荐actor肯y);庆朵pr某intf(询"近节请输入设备气单价:灾");杰远ge往ts(st义r);墓弄援耗price腹=(f概loat)珍atof(拘str);锤瞎慢蕉recor记ds[nu衔mStus圈].pri践ce=pr离ice;拔赛愈print板f("戒胞该购进设备数钉量是否大于榨100剃台疲?(Y/N份)");虑席小gets(盟str);渐敲得if(s漂tr[0]妻=='y'怨||s亡tr[0]太=='Y'奋){肆初攻胖print竖f("\n迁轰招请输入购进重设备数量:宾");子古详继gets(着str);东紫搭室getnu役mbers键=(f芹loat)掉atof(昆str);原旬党榨recor扭ds[nu洽mStus赵].get箩numbe蜻rs=ge斑tnumb扬ers;丢耻立p细rintf话("决献可用设备的妄数量有:舞");躁踪锹酷gets(塑str);抖呜堂粮usenu买mbers袜_1=(慨float崖)atof朗(str)乓;们界困叶recor舒ds[nu颂mStus绩].usa搅ble=u框senum诱bers_狐1;}齐症忙else垮if(st温r[0]=厚='n'今||st循r[0]=负='N'){膏帅怨pr龄intf(灿"膀艘请输入购进寒设备数量:寿");效馒护g梯ets(s懂tr);难愧灭送getnu集mbers披=(f缓loat)睛atof(雄str);消桂费弓recor左ds[nu击mStus跃].get绿numbe曾rs=ge佩tnumb诸ers;u裤nusab避le=0;殿usabl虽e=0;吴雷辜床for(j吊=1;j<淹=getn孕umber愈s;j++卸)繁驰主雀{pr登intf(犬"改第专%d炭台设备的可伙用性为牧:(汇设备不可用出请输入和0辽,设备可用擦请输入破1):秃",j充);歼徐蓝乒苹沸鼻愉ge阵ts(st沈r);沿宾粗牛if爽(str[废0]==萝'0')构涝隔棵{勇贪崭辉厉unus凶able=仆unusa余ble+1献;池脆处胀兼遵霉赵删硬陆}卫钓给霜棚els堪eif(预str[0裁]=='1盛')姨钉酷挎{拉阅忧早巧usa涝ble=u匪sable安+1;肆篮腥买涛汉国幸障}纽倦劈导}reco财rds[n粮umStu欣s].us孔able=咽usabl忽e;香胆师迹unus辉able=执0;usa馋ble=0竿;航竞挎互响}numS怒tus++货;//健输入一设备投记录后奴,血设备数加莫1}梅蕉print谎f("\n壮迅毒现在一共有月%d佣条设备信息约\n",n害umStu蛾s);锻路saved苏Tag=小1;}摄facil舟ity_M拔odify起_remo五ve.c养#incl槐ude"储facil替ity.h锅"李/****详*****壁*****经*****充*****漂*****铲*****救*****疫*****敢*****愉*****牧*****芽***虑*掠查找指定的葛记录铺*毙参数:评豆targe辣t:损欲查找记录景的某一项与怠targe胀t枣相同激*岗更询昆targe古tType舒:商表明通过哪枣一项来查找窜,召0皱为设备编号次,现1励为设备名称我*骂举板罢from:谱从第赵from勿个记录开始去找究*横返回:找到击的记录的序伶号,若找不欣到则返回耐-1影****俩*****且*****尘*****拍*****说*****蛋*****底*****栏*****犁*****件*****冠*****压***/臂intf肾indRe赏cord(筹char*须targ筋et,i妙ntta肉rgetT嗽ype,盯intf笑rom){副int战i;言for莲(i=fr鹿om;i<合numSt锻us;i+滑+){送蛙if((t扣arget皇Type=驳=0&&s校trcmp辉(targ姿et,re但cords稀[i].n漂umber炮)==0)逼||军述(t泪arget指Type=听=1&&s影trcmp劫(targ突et,re门cords感[i].n株ame)=割=0))喉绝ret校urni彼;//渣如果找到符骆合条件的记绳录,返回记围录号企i}狸re宰turn参-1;//绣如果没有找降到,返回-患1}耐/****院*****屑*****乳*****尽*****劳*****贸***潮*召查询指定设脆备的信息徒*脉可以按照设般备编号或名摧称来查询迎****代*****俯*****晒*****托*****刺*****厅***/染void考seekf贵acili元ty(vo巨id){乓过char斜str[5医];挺轿char罪targe桐t[20]忙;袖元intt听ype;乡借睁intc病ount;裳逐inti烘;期i滴f(num卡Stus=密=0){袋巡咱print昌f("\n捉短归没有可供查陈询的记录物\n");粒现达retur你n;}葵踢while促(1){斧悟肤print懒f("\n遮冬仔请输入查询口的方式:(决直接输入回慕车键则结束淘查询)披\n");讯填骑print撤f("君柱1.垂按设备编号怒查找线\n");躺顶炸print绪f("洒筛2.黎按设备名称励查找劲\n");揉堤蛋伤print乞f("\n殊稀萄选择幼:");馋虫纪gets(系str);韵仰欺if(s务tr[0]戚=='池1'){讽投桑封print险f("\n屑半竟请输入欲查辉找的设备编女号:绣");恨录家炕gets(构targe骄t);词忠稼倒type黄=0;扛增躺}els烤eif罚(str[交0]==觉'2'){划栗舍创print陈f("魂碍乖请输入欲查手找的设备名蒸称:恰");笼挽津哪gets(载targe片t);伏替似剪type碰=1;径济她}else乒brea注k;秧贵殖弊思i=f主indRe优cord(吧targe昌t,typ孩e,0);是//,许从舌0典号记录起查成找,查询项拣type唉,查询目标略数据项药targe吼t博哭土if(i>策=0){茧所味//森打印查询到坊的设备的信辜息装尝若show杀Table锡();权勇}垄吼帮count练=0;存字店养while录(i!=交-1){素液冷绣count驱++;//霸查询到的设急备数加智1柿益误虎print福f("\t株%s\t%催s\t%s欢\t%s\劣t%.2f舍\t%.f窗\t%.f醒\n",r比ecord肤s[i].旷numbe决r,rec腊ords[鸦i].na津me,re炭cords仓[i].m毅anufa匹ctory营,reco炮rds[i甲].yea贞r,rec专ords[条i].pr嫌ice,r随ecord篇s[i].舒getnu钞mbers陪,reco咱rds[i久].usa映ble);信吸狂//逗输出沈i秘记录的各个骡数据项登药沉i=医find善Recor浙d(tar冬get,t进ype,i喷+1);/胸/事从额i+1奥条记录起查应找下一条符记合条件的记财录}头胆爸if(c同ount=庄=0)p争rintf怠("\n夺本绿没有符合条依件的设备!扣\n");仔捆el喉sepr波intf(夫"\n营蜻压一共找到了渠%d切种设备的信陡息蜂\n\n"员,coun雹t);}}泳/****做*****雪*****销*****佩*****搭*卸删除指定的伞记录检****败*****旧*****胞*****扰*****全/湿void根remov弱efaci闪lity(瘦void){坟嘱char稳str[5叛];浊乒char秒targe喇t[20]包;膝冬intt舌ype;爪顺inti稿,j;驾胃if(nu刮mStus妄==0){彼暴币print袍f("\n号汇笔没有可供删枪除的记录颠\n");到破繁retur春n;}公潮while腔(1){荷误邮print扔f("\n乘踢亡请输入如何歌找到欲报废弊的设备:(晃直接输入回校车键则结束房移除操作)行\n");墙段秘print助f("般艳1.蚀按设备编号拖\n");冠偏加print窝f("尺姥2.跪按设备名称舒\n");椅替遣print荐f("\n蹦至惭选择绞:");势斗胜gets(跨str);侧竿诞if(s义tr[0]秒=='悔1'){举奔列眨print运f("\n写熟刷请输入该设颗备的编号:巴");泽牢铸目gets(穿targe比t);再姨讨担type仓=0;杂结康}els惭eif棒(str[惭0]==挺'2'){柴寺遗为print殃f("骆而想请输入该设抬备的名称:吧");声测驴疫gets(馒targe部t);互吩姓范type惨=1;赛纽梅}else拾brea足k;迟烟侍i=f赤indRe剖cord(杂targe笑t,typ里e,0);能茧宏if(i适==-1)惧prin积tf("\糕n慈绢没有符合条己件的设备!简\n");美璃集while中(i!=争-1){丈划纲努showT宜able(匹);咐卡勉再print锣f("\t伤%s\t%画s\t%s击\t%s\蛙t%.2f秤\t%.f兼\t%.f悬\n",r陕ecord殿s[i].死numbe马r,rec镰ords[暴i].na举me,re俭cords筝[i].m些anufa塌ctory误,reco度rds[i限].yea孝r,rec序ords[龟i].pr径ice,r虹ecord爹s[i].封getnu壳mbers倍,reco艇rds[i会].usa愁ble);邀备狐筝print新f("\n炉可策真的要删除赖该设备吗?纹(y/N)昏");眠鹅矩击gets(壮str);喇if(st移r[0]=推='Y'|吃|str[腾0]=='勿y'){感辨numSt毫us--;胀袄for(引j=1;j赛<numS巡tus;j莫++){助透裳copyR贞ecord娘(&rec忙ords[孤j+1],鞭&reco葛rds[j午]);}}歼焰络烂哲康i=fin帮dReco谈rd(ta奉rget,中type,代i+1);羞备岸}愁耽烈}石净saved慢Tag=与1;//强删除一条记蛋录后,保存震标志变为阶1牲,表示未保撞存}骑/****舱*****挎*****洞*****慰*****叠*****赚*****臭*****未**段*沸将狸src属指向的一条参记录复制给纲dest话指向的记录访****暂*****缺*****港*****妻*****肤*****通*****吃*****银**/宴void手copyR猎ecord纯(SBIn守fo*h英um,S忧BInfo宜*orc艰){马飘strcp善y(orc邻->num赚ber,h症um->n嫁umber勉);突蚕strcp粉y(orc迹->nam逝e,hum伐->nam曾e);村脚strcp亡y(orc佛->yea蒜r,hum在->yea你r);莫尼strcp捉y(orc穷->man回ufact对ory,h恨um->m梨anufa存ctory亡);殖鹊orc->俊price考=hu并m->pr狗ice;抄革orc->于usabl招e=h终um->u粥sable蜂;耐带orc->户getnu古mbers深=hu骗m->ge棵tnumb娘ers;}运/****盾*****新*****状*****辣*****扎*喘*银修改指定设猜备的信息砖****共*****颤*****月*****何*****脚*/雕void码modif炕yfaci长lity(挑void){杜育char莫str[5视];役逮char气targe酷t[20]统;奖志intt炊ype;知发inti害,j;垦坟float闹getn剪umber晓s,use脑numbe有rs_1,帆usenu恭mbers具_2,us铃able,谦unusa员ble;袖距float浅pric拍e;挑凶intc盼ount铲=0;格i茂f(num从Stus=派=0){婶罪胁print清f("\n盾净按没有可供修融改的记录创\n");氏练鸭retur找n;}汪善while琴(1){嗽去汤print赌f("\n盈检蒙请输入想要经修改的设备看记录的方式票:(直接输仰入回车键则拜结束移除操蛛作)增\n");杏掏冲print沿f("博亩1.跑按设备编号移\n");冻铸必print雁f("画丸2.霸按设备名称乐\n");杀怒廊print段f("\n绪部聪选择借:");样恒堵gets(鼠str);慌稀妈if(s演tr[0]趟=='堂1'){矩晨笼鸭print消f("\n昆应朱请输入该设喂备的编号:保");视计幸辅gets(易targe岂t);陕鸡冠摆type慢=0;冬病脱}els锦eif记(str[助0]==辩'2'){松圾寸氧print樱f("炼剩以请输入该设屿备的名称:烂");击车朝件gets(燥targe烈t);洁技磨炸type也=1;盾涨央}els口ebre闷ak;泉之爱i=fin剂dReco斤rd(ta柔rget,度type,波0);佣哭补if(i文==-1)第prin悼tf("\阔n画艰没有符合条姻件的设备!州\n");亦蔬拳while吊(i!=姥-1){吨匪降情showT肾able(仔);违赌池胡print泽f("\t演%s\t%腐s\t%s速\t%s\蜂t%.2f反\t%.f橡\t%.f径\t%.f匪\n",r款ecord昌s[i].半numbe禽r,rec炕ords[繁i].na虹me,re重cords芦[i].m盛anufa预ctory浆,reco昨rds[i轿].yea悔r,rec默ords[膛i].pr慢ice,r目ecord指s[i].白getnu举mbers木,reco朱rds[i默].usa尖ble);涉学穿映print乌f("\n钥挨初确定要修改宰该设备的信坝息吗?钻(Y/N)舱");率兵代敲gets(疯str);股叹意朽if(s未tr[0]差=='y'揉||s冤tr[0]丹=='Y'网){首粒搁督雾print马f("\n塑拜衣下面请重新刊输入该设备流的信息:欲\n");掩裙浪忠狗print洲f("\n愤瓜梨请输入设备碌编号:美");趁四突市ge贯ts(re页cords灰[i].n张umber陵);书俭谜锻pr帖intf(波"庙绵请输入设备安名称:戒");练以蜓叛ge舱ts(re籍cords炭[i].n均ame);贤蛾鱼醒prin锤tf("馆脸盾请输入设备础购进年代:芬");穴林担醒掠gets(披recor超ds[i]桃.year绳);娘阳徒殊prin蓬tf("席乘冒请输入设备捷生产厂家:拔");骂伴竿青gets剥(reco侧rds[i茎].man造ufact桑ory);腾证慕翻prin捎tf("哪王隶请输入设备错单价:柳");兽梅军妨gets扎(str)跌;移联兵成p碗rice碰=(fl辩oat)a宿tof(s惜tr);愤唱字么r犯ecord抚s[i].姐price清=pric妈e;委递净减pr层intf(慧"部购进设备数长量是否大于糠100宵台粮?(Y/N把)\n")跨;弯骆裳狼ge疾ts(st诞r);晨泰阔闲if妖(str粉[0]==射'y'|拖|str秩[0]==府'Y'){寨绵失疏省pr青intf(战"青铃请输入购进嗓设备数量:孙");尊未质叛惰ge蜻ts(st声r);员蚊娇扭奉娱getnu巷mbers壮=(f耻loat)裂atof(抵str);杀汉滚杯雄填recor汁ds[i]坚.getn旧umber抚s=get啄numbe果rs;荒旱妥匆哈pri菌ntf("朵逝遗可用设备的湿数量有:棚");亏瘦始乡场ge期ts(st叙r);屑廊掩团猪use订numbe麻rs_1=虑(flo雷at)at颈of(st旷r);浇贞务浙卖re赏cords倦[i].u抢sable貌=usen猪umber哥s_1;搞弦史孕忌pri眯ntf("我皮糖不可用设备很的数量有:厉");淹包忙层奇get浸s(str茎);英先泛阁狱us描enumb承ers_2情=(fl勺oat)a艺tof(s屡tr);}扎蜓俱债el帜seif据(str[铲0]=='蓬n'||渴str[葛0]=='桑N'){时圆顶暖狂prin庙tf("馆困涛请输入购进素设备数量:谣");尿叶拘施矛get钉s(str嫌);涨凳显开粉ge泄tnumb森ers=吸(flo诚at)at馅of(st蚊r);吧对鞋冲犯re括cords产[i].g御etnum熊bers=咽getnu盐mbers精;岭讲淋莫督贯unusa脚ble=0焰;usab性le=0;唱晕园椅检fo钳r(j=1世;j<=g也etnum规bers;闲j++)薯户规大蚂贴{pr肯intf(誉"劫第归%d精台设备的可驻用性为僻:“0”骑设备不可用日,肺“1”赤设备可用择:",嗽j);砌告浩灾寄猫gets赴(str)欺;蜡寻来逝摸家if(s峡tr[0]批=='暖0')团障陶萄挣孙{词落毫蜘捡许坐unusa然ble=u条nusab脖le+1;爬恩配洁膛爬死辽锅民抬侄衫草投}代蝇补零译岭督else锈if(st盈r[0]=究='1')灶遮沈条乔资{国箩傅佩誓铲角usabl轰e=usa工ble+1薪;惜恭遮穴牺互否摆丹琴营}怎柱趋竭谷颠}reco踏rds[i默].usa帜ble=u胞sable量;邪莲暑峡态unusa缺ble=0链;usab败le=0;}撑盏乖文i=f嗽indRe茧cord(休targe派t,typ运e,i+1忧);别梦绍}e志lseb忽reak;}恩载}save桌dTag答=1;}泽facil廊ity_s霸ave_l紫oad.c及#incl及ude"建facil针ity.h很"撤/****笨*****省*****额*****戒*****凡*****拢*****肯*伶文件存储操释作函数螺*雪结果:数组唤recor塞ds方被保存至指摧定文件院*谈返回:成功心0豆,失败依-1喊****怒*****迈*****厨*****军*****慕*****渗*****晴/嘉ints车aveRe誉cords友(){盈匀FILE化*fp;液偿char寇fname录[30];望屋悟if(n呀umStu姥s==驾0){查事凯print飞f("\n朴弦止

温馨提示

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

评论

0/150

提交评论