人人范文网 教学工作总结

图书管理与教育教学工作总结(精选多篇)

发布时间:2020-09-21 08:35:13 来源:教学工作总结 收藏本文 下载本文 手机版

推荐第1篇:图书阅览室管理工作总结

图书阅览室管理工作总结

2016年度

本学期来,在工作中自始自终强调读者第

一、服务育人、文明规范、科学现代化的服务理念。在图书室工作实践中,作为图书室的管理员,努力为师生营造一个文明、整洁、清新的图书室面貌,学生阅览室为学生开拓视野、增长知识、培养学生个性和创造性造就良好的阅读场所。

一、做好图书室的日常管理工作。

1、在学校领导和全体班主任的帮助下,顺利完成了图书进班级的活动。班级图书角的建立大大提高了图书室的借阅量。

2、及时印制图书登记表,完善图书借阅登记工作;为学校师生的书报、刊物借阅工作提供最大的方便。认真分析了学校图书的藏书结构,完成了图书分类工作,还完成了新书的编目上架等大量工作。

3、向广大师生推荐介绍好书、新书。为节省师生的时间,一是勤整理,对师生归还的图书每天及时归类上架;二是勤检查,对师生在借阅时抽乱、插错的书籍勤查找;三是勤过目,到书架旁勤看一看,对图书的位置了如指掌。从而为师生查找资料时节省了时间,提高效率。

4、认真完成图书的剔旧换新任务。目前学校藏书量是5000多册图书,为了不误学生阅读、教师借阅的情况下,对流通率高容易坏的书本及时修补上架。由于图书书脊上的标贴大部分已经脱落,故本学期对全书库的图书标贴进行修理。

二、图书室活动

(1)图书管理工作是非常繁琐而又神圣的。管理的是图书,传播的是文化和思想。因此,图书室开展读书征文活动,参与面和稿件质量逐次扩大和提高,收到了一定效果。这个活动提高了图书室的阅读量,同时在这期间,学生读书热情高涨,所荐图书外借率明显上升。

(2)做好新书介绍,扩大宣传,提高借阅率。

这个学期以来,图书室的工作做到了有条不紊。不过这其中还是有不足之处,比如如何将图书室管理得更好,再上一个水平,还要不断地学习和研究摸索。今后争取不断改进,努力做得更好!

2016年12月

推荐第2篇:图书阅览室管理工作总结

图书阅览室管理工作总结

2016年度

时光匆匆,岁月如梭,一年已经结束了。在这一年中,经过大家的共同努力,学校图书室管理工作有了明显的提高。现将过去的工作情况作个简要的总结:

一、规范管理,提高管理水平

1、健全各种管理制度,正常开展借书、阅览活动,对新进的图书,采用科学的方法进行分类、编目与整理,为每本书登记建卡,为每位老师、学生办理借阅卡,做好图书和资料的出借工作。

2、认真学习《中小学图书馆规程》,增强了服务意识,使工作达到规范化、制度化,全心全意为全校师生服务。学校图书管理工作嬴得了全校师生的一致好评。

3、培养班级图书管理员,加强了爱护书籍的教育,指导学生合理地保管书籍:注意防潮、防折、不涂划、不污损,一学期来,图书室的图书完好无损。

二、开展活动,发挥育人功能

为了适应学生乐读这一目标,图书管理员能有目的地向学生推荐新书,这一年中,本学年中,开展了小学 生“学雷锋”演讲比赛、“爱国主义教育”等读书竞赛,“礼仪教育”知识竞赛,激发了学生的阅读兴趣,养成了良好的读书方法。

一学期来,活动的开展锻炼了学生的思维能力、口头能力、写作能力、鉴别能力和欣赏能力。在今后的工作中,我们将根据师生的需求,根据学校的实际情况,广泛地增添各种书籍,加强管理,更好地为师生服务,把图书室办得更好,使之在教育教学中发挥 更大的作用。

本学期,我校图书馆围绕为教学工作服务,为学生营造宽松的阅读氛围,引导更多的学生走进图书馆,爱上图书馆,用好图书馆的目标,具体开展了以下工作:

1、逐步完善图书馆图书的借阅管理工作。由学生图书管理员负责组织本班学生借阅,学生自行选取图书,然后由学生图书管理员配合管理老师在登记借书日期、书名、价格。大多数学生都能认真阅读所借图书,并且保管好。学期生均借书达到6册左右,图书的流通率比较理想。

2、积极开展阅读辅导,开展期刊推介服务,引导学生阅读,发挥现刊作用。

3、培养一支懂管理的图书小管理员队伍,提高素质。对各班的学生图书管理员进行上岗培训。

回顾本学期来图书馆的工作,有许多不足之处有待我们改进:

1、更新的图书在数量上和内容上还无法满足学生的需要,还不能有效的调动学生的阅读积极性。

2、重点书目推荐、新书推荐工作还不够及时、有效,很多时候只是将书目的名称告诉大家,而没有相关的内容介绍,没有起到应有的推荐作用。

3、部分书籍破损后没有及时修补,复本过多的书籍没有及时注销,书架上书籍的排放显得杂乱无章,空间的利用不合理。

4、学生的读书积极性不高,班与班之间借阅图书的次数差距较大。

我将在今后的工作中克服不足,进一步发挥图书馆的育人功能,把图书馆的工作做得更出色。

我想在大家的一起努力下,图书室的工作会更上一层楼的。

2016 年12月

推荐第3篇:图书阅览室管理工作总结

图书阅览室管理工作总结

2015年度

本学期我担任图书管理员工作,以前总以为图书室的工作只是简单的“借借还还”,其实它是一项学术性、技术性、创造性极强的工作,同时也是一项复杂、细致而繁琐的体脑结合的艰苦工作。需要耐心、细致、周到的服务态度。

一、日常工作完全按照管理标准进行运作。

我们图书室积极配合教育教学工作,宣传工作,向广大师生推荐介好书、新书,在提高工作效率上下功夫。

一是勤整理,对归还的图书每天及时归类上架;二是勤检查,对师生在借阅时抽乱、插错的书籍勤查找; 三是勤过目,勤到书架旁看一看,对图书的位置了如指掌。为师生查找资料节省了时间,提高效率,获得了师生们的好评和赞誉。

二、对全校师生全方位开放阅读,切实发挥教育教学第二课堂的作用。热心为师生服务,急读者所急,想读者所想,全心全意,全方位为师生服务,充分做好了他们教学中的助手和顾问。在师生借阅时,我们做到了\"百拿不厌,百问不烦。\"我们每天接待全校师生,尽管工作量大,任务重,由于我们充分做好了准备,管理到位,责任心强,学生都高兴地来,满意地走。

三、利用业余时间认真学习业务知识,端正服务态度。我们边工作,边学习,不断提高专业理论水平和工作实践能力。在图书管理中既注重\"管\",又不忘\"理\",认真探讨指导学生阅读的方法,在学生阅读过程中,我们积极对学生进行阅读指导。这些工作看似简单,做起来比较麻烦,但我们从没有怨言,图书馆真正成为广大师生最愿意来的地方。

图书管理工作是非常繁琐而又神圣的。我们管理的是图书,传播的是文化和思想。因此,在今后工作中,我们要以满腔的热情更加努力地工作,始终如一地遵循高效能、全方位、准确有效的为教育教学服务,为广大师生服务的宗旨,每项工作都做到\"严、细、实\",管理要有章有序,有始有终,使图书馆所有图书资料最大限度的得到利用,让图书馆成为我校的文明窗口单位做出我们应有的贡献。

鸣沙完小

2015年12月

推荐第4篇:学校工作总结:学校图书管理总结

一、重视学习,加强业务修养。

图书室的工作一部分是图书目录的编辑整理工作,随着现代化科学技术的发展,图书管理日趋规范化、合理化、科学化,越来越走向现代化。因此,图书管理不再是传统的简单的书籍分类,现代的图书管理形成了一套科学的、完整的体系。针对这种情况,自己在图书管理工作中非常重视理论知识的学习,自己经常加强图书科学管理的知识,科学分类的知识,潜心研究图书管理的方法,使自己掌握了一定的理论知识,并用于实际的图书管理工作中,使我校的图书管理工作逐渐得到完善。

图书管理工作是一项非常需要有耐心,非常细致的工作,自己在工作中注意加强业务修养,对待图书管理工作认真负责,一丝不苟,时时以图书管理员职责要求自己,耐心地对待每一位借阅者,并不厌其烦地为他们选取所需的书,使他们高高兴兴而来,满意而归。

二、加强图书管理,充分发挥作用。

由于全校师生人数多,借阅一次数量多,因而图书有出现借放、破损等情况,自己每天借阅工作结束后,都将当天所涉及的书进行仔细检查,将借放的图书重新归类,将破损、无标签的图书重新粘补,始终保持借出的图书整洁、美观、规范,杜绝了丢失现象,无损坏情况发生。在我们的细心管理,做到了图书室的图书无虫蛀,无受潮,无鼠耗,无溃烂的情况发生,使图书的完好率达100%。 图书的管理只是途径,图书借阅从中获取知识才是目的,为了充分发挥图书的作用,开学初,根据图书室的具体情况,进行了整理、清理,补发了各班的借书证,对上期末新购图书进行分类、整理,贴上书签,上好架,并对学生进行了爱护图书等方面的知识教育,完善了借阅图书制度,自己总是尽量延长图书借阅时间,尽量使全校师生能在各个时间借阅到图书,从周一到周五都坚持分上下午全天向师生开放三小时以上,甚至周六活动都为师生开放借阅,并尽量将好书、新书推荐给广大师生,这样不仅使他们获得了知识,提高了能力,还陶冶了情操,造就了品格修养和意志,充分发挥了图书的传知育人作用。

三、做好收集,提高宣传功效。

每学月完后,自己都把一月的借阅情况进行认真细致的清理,填入学月报表,并作好笔记。一年来,我校图书室开放450小时,图书借出15923人次,图书借出率为91.6%,达到重庆市教委和县教委的装备工作要求的目标。

自己在本期的图书管理工作中,作出较大努力,使本校图书室管理走向科学化、规范化、合理化轨道,充分发挥了图书室应有的作用,当然,在今后的工作中自己将会更加努力,使图书管理工作来断向前迈进。

图书管理工作总结为了迎接省“普图”检查,我校于xx年4月成立“普图”工作领导小组,7月起开始进行学校图书室建设,到今年10月底,基本完成,图书室初具规模,并接受了省有关部门的检查验收。

一、学校领导重视

一直以来,学校行政一直将“普图”做为一项重要的工作来抓,将此工作列入学校议程,由校长亲自负责,教导处、总务处进行监督和指导;学校会议上多次强调,要求全校老师都要积极支持此项工作,并在编目期间多次到藏书室询问图书室建设情况。

二、安排了专职人员

我校自从接到“普图”工作的通知后,就专门安排了一名教师来进行此工作的操作,停止了该教师的其他一切工作,处处为“普图”工作大开方便之门;两次安排该教师参加了专业培训,并拿到了合格的专业技术证书,能进行图书的分类、编目工作。

推荐第5篇:幼儿园图书管理个人工作总结

2016—2017下半学期工作总结

城关幼儿园 车军丽

个人工作总结

本学期,本人担任图书室管理工作,我一直严格要求自己,努力工作,兢兢业业,很好地完成了领导交给的工作任务,现将本学期的管理工作总结如下:

一、努力学习,不断提高自己的政治思想素质。

本人热爱党的教育事业,热爱本职工作,加强自我修养,热爱学生,真诚对待学生,受到学生的好评。特别是在此期间,我努力地学习政治理论,积极参加学校组织的各项活动,并将学到的理论知识切实运用到工作实践中。

二、严格执行各项规章制度,使图书部室的工作规范化。

1.制度是做好每一项工作的前提,是提高工作效率的可靠保证,开学初,结合我园实际情况制订了图书室管理制度。

2、严格按照制度执行每项工作,做到使用有记录。3.图书室、电子备课室能积极配合教育教学工作需要,

4、认真做好图书、报刊、各种资料的分类编目、流通、管理等工作。

三、加强财产安全管理 为保证我园的财产安全,每次教师们借完图书后,我都要亲自管好电源,锁好门窗,以防财务丢失。

五、加强卫生管理。

能积极的打扫部室卫生工作,保证了部室卫生整洁。

总之,本学期自己的工作是一个烦琐、零碎、要有责任心和事业心的工作。自己在认真完成分内工作的同时,能够配合领导完成领导下达的每项工作。

不足之处

图书室的书籍的规范管理有待提高,图书书籍应归电子档便于管理。多媒体室管理要规范有条理还需全园同志共同重视,认真对待。 在新的学期里,自己将继续努力,力争各项工作更上一个新台阶。

2017年6.23.

推荐第6篇:捐赠图书主持词与捐赠教育教学设备感谢稿

捐赠图书主持词

尊敬的各位来宾,各位朋友,同学们,大家下午好!由xx公益志愿者联盟协会捐赠的爱心图书室今天在xx洪庄小学举行揭牌仪式。首先,请允许我代表xx的父老乡亲们,向所有的爱心志愿者们表示热烈的欢迎!

下面捐赠活动分项进行

1:首先请xx中心学校校长 致欢迎词

2:朋友们,xx小学是一个教学设施、基础条件比较落后的学校,xx公益志愿者联盟协会为帮助贫困学生改善生活和学习条件,向社会进行爱心募捐,通过两次街头图书的募捐,还有一些爱心人士捐助,建立

女:各们来宾,亲爱的朋友们,由xx公益联盟组织的冬日暖阳之爱心图书室揭牌暨文艺演出到此就要结束了。祝愿为本次活动奉献爱心的各位人士身体健康,好人好报。祝愿今天得到资助的孩子们刻苦学习,早日成才。女:朋友们,再见!

捐赠教育教学设备感谢稿

首先,热烈欢迎您以及财大各位领导莅临麦市检查指导工作。 我镇地处幕阜山北麓,湘、鄂、赣三省交界处,东接江西修水县,南通湖南平江县,西连本县关刀镇,北达县城,是通城的南大门,湖北的最南端,有“一脚踏三省”之称。麦市镇是全国文明镇、湖北省重点“口子镇”和全省首批小城镇建设试点“窗口镇”,XX年被住建部评定为全国重点镇。全镇国土面积119平方公里,下辖18个村、1个社区,人口3.8万人,其中镇区建成面积2.32平方公里,人口1.2万人。近年来,在县委、县政府的坚强领导下和各级的大力帮助下,我镇依托区位和资源优势,抢抓“中三角”建设及幕阜山片区扶贫开发、幕阜山绿色产业带等战略机遇,明确建设“幕阜山扶贫开发先行镇、通城县县域副中心和边贸旅游新城”的目标定位,大力实施“工业强镇、商贸活镇、生态兴镇、产业富镇、城建亮镇”五大战略,实现了经济、社会事业快速推进、和谐发展。

XX年,中南财经政法大学就与麦市结下了不解之缘。历经7个寒暑,从最初的三万活动,到现在的精准扶贫,财大历届工作组扎根基层、甘于奉献,用自己扎实的作风,用自己才智与汗水,在麦市的山山水水留下了辛勤的足迹,为麦市的发展出谋划策。特别是XX年开展精准扶贫对口帮扶以来,面对复杂的精准扶贫脱贫攻坚任务,财大工作组入农户,访民情,送猪仔,捐蜂箱,栽油茶,建基地,开超市,出实招,取得了显著的成效。工作组的成绩有目共睹,作风值得我们学习,也得到了上级和群众的高度认可。我们坚信,在工作组的帮扶下,红石村今年脱贫整村出列也一定可以完成。

今天,财大还将向我镇两所学校捐赠教育教学设备,向红石村给与资金支持,这充分体现了财大对对农村教育事业的关心、支持,对麦市的深情厚谊,在这里,我代表麦市镇党委、政府和全镇38000人民,向栾书记以及财大的各位领导表示衷心的感谢和崇高的敬意。我们也将努力工作,以麦市新的发展业绩回报栾书记和财大各位领导的关心。

最后,希望栾书记和各位领导经常来麦市检查指导工作,祝各位身体健康,工作顺利!

谢谢大家!

推荐第7篇:教育教学科研管理工作总结

2010年度教育教学科研管理工作总结

本学期,我校科研工作通过课题研究,促进教师的专业成长,提高科研人员的整体素质,推动学校教育质量的不断提升。现将一年来的科研工作回顾如下:

一、学习为先,积淀底蕴。

在实施课程改革的今天,每一个教师都应该自觉地将学习视作自己职业生命的第一需求,让学习成为自己教学工作不可或缺的重要组成部分,通过学习不断提高教学研究能力。本学期我校继续利用业务学习的机会,开展教科研的校本培训活动,进一步营造科研学习的良好氛围,丰富教师的科研理论知识。继续外派教师参加各级教科研骨干培训班和各种教育研讨会,拓宽思路,放大眼界。

二、加强科研课题管理,课题研究渗透在校本教研中开展。

1、在学科组内营造教科研氛围

我校继续采取把科研融入教研中的形式,形成教科研一体化的模式。学校的教科研活动以学科组为单位开展,充分发挥老教师和骨干教师的传、帮、带的作用。学校要求各学科结合学校开展的科研课题研究的主题设计研究课,课后围绕研究主题开展沙龙式研讨活动。用这样的方式调动了骨干教师和年轻教师参加到课题中来积极性,也使老教师们畅所欲言,贡献宝贵的教学经验。

2、重视成果总结。

学校要求上教研课的老师们围绕教研课的研究主题对自己的课堂教学有针对性的进行总结,撰写成教育教学论文或案例评析的形式,这样就让老师们在总结中提高教育教学能力,还让老师提升了教科研能力,增强了教科研意识。我校认真开展优秀论文的选送活动,对于上级主管部门组织的论文评比,学校都尽早通知每位教师,加强对外推出的力度,本学期老师们的教育教学论文、案例等获奖的奖项和级别都较上学期有提高。

3、定期召开课题负责人会议。

我校定期召开课题负责人会议,开学初指导各课题组拟定课题研究计划,在课题研究进程中指导做好详实记录,及时了解课题在研究过程中遇到的一些困惑或共享一些成果。

4、继续开展“一课多练”的校本教研,营造了团队教科研氛围。我校现阶段教科研工作的重点仍为增强教师的教科研意识,培养科研能力,依托团队的力量,在整个学校营造出浓厚的教科研氛围。而实现这个目标。

(三)根据上级要求及本校实际,继续采取各种措施加大对教师的培养、培训力度。

狠抓青年教师的培养,继续做好“师徒结对”工作。学校制定了校本教研培训的方案,采取多种形式,对教师进行内容丰富的培训。学校特别注重青年教师的培养,制定了青年教师培养方案。继续为青年老师搭建成长平台,进行教研组内新老教师“师徒结对”的活动。学校给师徒提出了具体明确的要求,分管领导定期召开年轻教师会议了解跟学情况。学校在“师徒结对”工作取得好成效的基础上再不断完善“师徒结对”的实施方案,使此项工作能更好的落到实处,取得实效。

四、做好科研日常工作。

本学期,我校加大加强教学过程的管理与督查力度,规范教学过程的每一个环节,提高教学质量。

1、坚持不懈地抓好常规管理工作。开学初,我校重点抓好各项的制定;期中着重检查的落实和制定有关的措施;期末进行各项工作的安排,各类资料的整理归档,使学校的整个过程井井有条,有始有终。

2、优化集体备课。教研组集体备课是校本教研的重要形式,活动要求做到了有计划,有主题,有目的,对活动过程有详细的记录,期末有总结。我们利用每周教研活动时间,由中心发言人牵头对下一周要教学的内容进行全面分析和粗略地教学构想,然后本教研组所有老师共同商讨,解决教学的重点和难点;或者对正在实施的教学提出疑问,解决困惑;或者分享教学心得。

3、做好校本教研常规工作,即:每周分学科进行一次教研活动;每次教研活动提出一个教学上的问题,并有解决问题的相应办法;每一节常规课都要有自己的教学反思;各学科学选派一名45岁以下年轻教师上一节学科展示课;期末上交一篇成型的教学经验总结或课例评析。

一学期来,我校的教育科研确实有了长足的进步:科研意识不断增强,科研队伍日益扩大,科研管理日趋规范,研究水平有所提高。通过教育科研活动,提高了教师队伍素质,促进了教育教学质量的全面提高。

杨坪小学 2010年12月

推荐第8篇:教育教学科研管理工作总结

教育教学科研管理工作总结

李宏峰

自2008年调入中心校以来,坚持以“科研强师,科研兴校”为指导思想,以课堂教学为主阵地,以课题研究为载体,努力创造一个和谐的教科研氛围,开展多种形式、多个层面的教科研活动,精心打造教师队伍,带领全乡走入教科研前沿,现进行简单的回顾与总结。

一、教育科研制度化,促进学校可持续发展。

任教科研管理工作,我制定了详细的规章制度,以业务学习、教研活动、集体备课等作为新课程研究的主阵地,带头参加教研活动,并建立“基地校”,引领教研组,科学指导教研活动。同时,充分发挥教研组长的引领导航作用,扎扎实实地开展活动,使得教科研工作顺利地走向正规化、制度化的轨道。

1、在工作中,坚持按照各项规定,组织教学教研,认真制定教学教研工作计划,坚持业务学习制度,听评课制度,校本研修制度,加强了备、讲、批、辅等各教学环节的过程管理。本着理论和实践相结合的原则,在教研活动中,研究新课程,在课堂教学中,实践新理念。坚持执行每天下午放学后半小时学习,集中与分组学习为主,测评为辅”为原则,确保学习有计划、有内容、有讨论、有中心发言人、有记录、有实效、有检查,期期有重点,次次有主题,人人有见解。双周四下午的集体备课,共同钻研教材,充分发挥每位教师的才智,取长补短,提高课堂效益,促进了学校教学教研工作,扎实有效的进行。

2、认真抓好教研组建设。教研组长认真组织教研及集体备课活动,做到了时间、地点、人员、内容、主持人“五落实”。对于组内开设的、校内组织的常规课、汇报课、示范课、研讨课等公开课,人人参与听课、组内评课,并形成了良好的教研氛围,促进了教研活动质量的提高,每学期,教师听课人均在15节以上。

3、每学期,加大教学调研力度,采用听、看、测、问等形式,对部分年级、部分学科的课堂教学质量进行调研,我的听课不低于32节次,评课不低于20节次,准确把握了教学动态,了解到教育教学中的突出问题。

二、加强学习,促进教师成长。

1、教师专业成长,教育科研是先导,理论学习是基础。学校为教师订了相关的教学杂志供教师借阅,使教师有书可看,有感而发,为撰写理论笔记、论文、随笔打下基础。我们鼓励教师“多阅读、多反思、多执笔”。不断促进对课程改革的进一步领悟。我们提倡教师利用好学校的网络资源,经常上网浏览,查阅相关资料,及时了解课改动态,扩大自身的视野,多渠道多方位地提高自身的理论素养。采用“请进来,走出去”的办法,为教师提供学习的平台。

2、自我反思制度。随着新课程的逐步推进,人们越来越重视教师的自我反思与行动研究,建立一支具有教科研意识的师资队伍,自我反思是促进个体快速成长的一个有效途径。我非常重视这一环节,在学习的基础上,要求每位教师课课有针对性的反思。可记一节课的成败,教学过程中的得与失,学生学习中的独特见解等,在反思中提高,在反思中成长。

3、抓队伍建设促进教师成长。有步骤分层次开展,特别是加强青年教师的培养工作,继续开展 “师徒结对”活动。师傅的指导,加上徒弟的努力,青年教师在备、讲、说、评能力方面得到不同程度的提高。

三、开展常规科研活动,提高综合素质。

1、课堂教学是素质教育的主渠道,是新课改的主阵地。学校重视新课改的课堂教学的研究,强调教师的课堂教学的各个环节必须体现新课标的理念。教学管理人员经常深入课堂进行指导,通过听评课和与教师座谈,了解课堂教学出现的新情况、新问题,并与教师一起研究对策,实施有效教学。每次活动教师们非常重视,精心设计教学过程;各教研组也积极为参赛教师出谋划策。课堂上,教师们都能突出以学生为主体、教师为主导的原则。精美的课件、独具特色的设计让学生轻松愉快地学到了知识。

2、积极开展小学教师教育技术能力培训。鼓励大家积极搜索网络资源,校校安装了光纤,配备了多媒体,达到信息教育技术为教育教学服务的目的。

3、教学质量是学校永恒的主题,为了在教师中树立质量意识,每年召开教学质量分析会、教学管理汇报会。对期末检测进行详尽的分析,找出存在的问题,提出解决措施。校领导从总体评价、成绩与进步、问题与思考等方面做出系统、全面的分析,在肯定成绩的同时提出存在的问题,并就成绩与不足提出了建设性意见。这对于我乡教育教学质量的提高,起到了积极的推动作用,我乡一中也在中考中取得了喜人的成绩,去年综合评价全县第一,今年在过程性考试我乡一中取得第一,二中取得第五的骄人成绩。

四、课题引路,科研强师兴校。

我积极引领教师走研究之路,努力做研究型教师。以科研促教改,认真抓好教研工作,进行教法、学法研究,切实解决教学中存在的实际问题,人人有“小课题”,校校有“大课题”,积极推进校本专题研究。现我乡有三十多个课题业已结题,有效的推动了教学,现有五个省市级课题、三个县级课题正在研究中,在全县处于领先地位。

辛勤的付出终获汇报,我的文章《专注是金》发表在《中小学心理健康杂志》上,《教育孩子要用“心”》发表在《家长》上,并有数十篇随笔、小论文发表在《沧州晚报》上;自己多次执教公开课,08年09年连续两年代表沧州市参加河北省心理活动课评比并获一等奖好成绩;自任职以来连续多年杜林乡教育教学管理居于全县第一,自己也多次被评为心理语文县级兼职教研员、心理标兵,沧州市心理健康工作先进个人,县级教学管理先进个人、教学管理标兵。荣誉的取得离不开领导的支持,我将继续努力,搞好一方教育。

推荐第9篇:图书渠道管理

改革开放以来,我国图书发行渠道不断拓展。渠道内的竞争与冲突日益突出。不同于以往的渠道环境也将很多棘手的问题摆在了渠道管理者的面前。面对新环境中出现的新问题,我们只有不断地更新观念,调整管理方法,才能为渠道的健康发展保驾护航。下面就当前渠道管理中面临的一些问题及解决方法阐述一些个人认识。

一、当前图书发行渠道管理中存在的问题

1.客户管理混乱。现实中,很多出版企业普遍缺乏完备的客户管理体系,客户的开发与管理缺乏宏观控制,在客户的开发与管理上给予片区经理的权限过大。这种做法看似合理,但对一个出版企业来讲,实则是埋下了隐患。片区之间的竞争将加剧渠道的冲突,同时一旦某一地区业务员跳槽,整个渠道可能会陷入混乱。最后整个市场将是一盘散沙,毫无战斗力可言,何谈出版企业的整体竞争力。

2.渠道成员选择盲目。在分销商的选择上,有些出版企业没有明确的选取标准,只是业务员凭感觉选择,如果感觉错了往往会出现图书发出去而收不回书款的现象,损失惨重。

3.书款回收难。由于没有认真考核分销商的信誉,出版企业对渠道分销商的盲目开发并疏于管理,造成渠道间、渠道内恶性竞争不断,结果各分销商都频现财务危机,重伤下场,收款出现问题。还有一些业务员为广撒网,在发书方面毫无控制,造成图书在分销商处大量积压,书款回收艰难,每年都形成大笔的呆坏账。

4.渠道冲突严重。许多出版企业为了能让自己的图书更快地推向市场,在各地区选择尽可能多的批发商进行快速分销,这种做法常常会出现同一地区的批零商之间的激烈竞争,再加上出版企业对这些批零商实行优厚的销售返点政策,使得批零商在互相竞争的同时,竞相压价,恶性竞争严重。同时不同地区的相互串货现象也比较普遍,有的甚至引发激烈的矛盾冲突。这些冲突不仅浪费了大量的行业资源,也使有限的行业利润急剧下降。总的来看,渠道冲突产生的原因是复杂的、多样的,既有宏观方面的因素,也有微观方面的因素。销售返点或奖励是出版企业促进销售、提高市场占有率的常用措施,但使用不当却为渠道的管理带来了许多麻烦。书店为了扩大销量,获得更多的返点,而以进价或低于进价的价格销售出版企业的产品,这也给出版企业的品牌形象造成了一定的冲击。

5.渠道管理效率低、成本大。由于对渠道的选择与管理存在认识上的不足,加上图书营销渠道结构复杂,渠道内部冲突现象大量存在,内耗上升,使得渠道管理成本上升,销售队伍臃肿且效率低下。图书营销渠道管理的失控严重制约了出版企业的发展,削弱了其竞争力。

6.现行奖励办法缺乏全局观。为扩大销售,各出版企业几乎都制定了一定的销售奖励政策,而这些政策普遍缺乏全局观,这就可能致使大户会越来越大,而小户则会越来越小甚至被吞并或关门倒闭,有的出版企业可能会因此而受制于渠道,丧失主动权。目前各社的奖励办法多以量来作为重要的衡量指标,即量小就没有返点或是返点很少,量越大,能拿到的返点越多。一些大户返点后的折扣甚至要比一般的客户还要低几个折扣,就形成了不公平竞争,结果就是小户只能关门歇业或者直接卖盗版。从一定程度上说,出版企业用不当的奖励政策帮助了少数分销商完成对市场的垄断,然而当出版市场上发行商形成垄断时,出版企业

的好日子也就算到了尽头。

二、解决方案

针对以上问题,特从以下6 个方面提出了解决方案。

1.制定并规范渠道成员选择的原则及标准

(1) 渠道成员选择的原则。对每一位渠道成员的选择都应该从服务出版企业战略目标角度出发,选择最能满足出版企业要求的成员。因此出版企业必须在众多的分销商选择中,保持清醒的头脑,掌握好选择的原则。

①经济性原则。出版企业发展要在实现社会效益的基础上有效降低成本,实现经济效益的最大化。对于出版企业来讲,与一个拥有成熟市场网络的分销商合作无疑可以使自己的产品迅速占领市场,但如若需要巨额的成本来维系的话,就会得不偿失,所以在选择渠道成员时,一定要衡量收益率,慎重选择。

②适合性原则。任何一个出版企业在选择渠道成员时,都要考虑渠道成员的经营方向、业态、模式、管理能力、销售能力等是否符合本出版企业的发展需要。

③发展性原则。选择成员时,不仅要结合自身和渠道成员的现状是否相适合,我们更要从长远考虑渠道是不是适合出版企业的渠道战略,会不会背离出版企业的长远规划等。所以对成员的选择不要仅仅看到眼前,更要从战略的高度选择那些和本出版企业战略规划相一致或基本一致的分销商。

④可控性原则。出版企业所选择的渠道成员一定要对出版企业有强烈的品牌认同感,理解并遵守出版企业的相关政策。渠道成员作为独立的经济实体,他们往往只关注自己的利益最大化,即使是以牺牲整个渠道的利益也在所不惜,这是传统分销渠道的通病。如果我们无法在一定程度上把控分销商的行为,最终损害的将是出版企业的利益。所以在选择渠道成员时,一定要遵循可控性的原则,可以从品牌、全局、服务、利益、客户关系等方面来进行控制。

(2) 渠道成员选择的标准。图书分销渠道的形式多种多样,分销商的类别也多种多样,不同的分销渠道,不同的分销商,各自的性能和特征也大相径庭。因此,对出版企业而言,如何选择分销渠道,如何选择中间商等必须明确所选渠道成员应符合什么样的标准。一般来讲,在选择渠道成员时除综合考虑出版企业自身的因素、图书产品因素以及所处市场环境外,还应对选择对象的以下几个方面进行重点考察。

①理念。作为渠道成员,他能否认同出版企业的经营理念,和出版企业有没有共同的利益,对出版企业的产品的了解程度,对销售前景的信心如何,有没有主动服务的意识等。②实力。理念契合后还要考察作为渠道的分销商是否具备相应的实力。如资金实力、市场覆盖能力等。

③管理。先看看他对自己书店或公司的管理情况,对发展中可能遇到的问题有无解决能力等。

④声誉,也称为商誉,是一个企业立足商场经营之本、发展之本。

2.着力解决渠道冲突,协调渠道发展

由于渠道成员利益的不一致而产生恶性竞争、串货现象等,如果任由其发展,对出版企业的长短期发展都是极为不利的。因此出版企业应设法解决渠道间的矛盾冲突,协调渠道关系,促进其健康发展。那么出版企业作为渠道的管理者如何解决渠道成员间的冲突呢?可以从以下几方面着手:(1) 出版企业要认真做好选题开发,力争为发行中间商提供源源不断的适销对路的图书产品。(2) 合理分配产销利润,保证渠道成员都有合理水平的赢利。(3) 通过合同或协议等形式,对渠道行为提供保障与制约。(4) 加强领导,发挥领袖作用。作为出版企业应该发挥领袖的作用,制定奖惩办法,震慑一切破坏渠道行为,减少冲突的可能性。同时如果渠道中出了问题,不能逃避,要快速表态并及时解决冲突,展现渠道管理者的领袖风范。(5) 大力促进渠道成员间的合作,让各渠道成员都能建立集体意识共同抵御外部威胁。

(6) 定期举办渠道成员大会表彰先进,交流学习,协调矛盾,减少冲突。(7) 建立调解与仲裁机制。

3.通过制度完善和加强对分销商的管理

(1) 从全局角度严密制定激励机制。在维护市场有序发展的基础上,透过各种方式鼓励、扶持重点客户发展。充分认识到在一定程度上给予渠道成员的激励与扶持对于提高成员对渠道的忠诚度的作用,藉此让他们更加积极分销本社图书产品,共创双赢。

①返点激励。对于那些销量较大、回款及时、信用度较高的分销商给予适当的销售返点,加大对分销商的利润刺激。但要本着有利于市场健康发展的原则,绝不能破坏出版企业的整体销售政策。在激励的过程中要把握激励的程度,必须避免出现激励过分与激励不足两种情况。这样做既有利于激励分销商的销售热情也可以在一定程度上避免一味为追求返点而对出版企业的长远发展造成不利影响。

②促销支持。对于主动进行促销活动的分销商,应该在智力、财力、物力、人力上给予大力的支持。

③培训。可以定期或不定期地为分销商开展专业培训,提高其专业知识,增强分销商的销售欲望。

④肯定成绩,赋予荣誉。定期举办全国范围的发行工作会议并对各方面工作都完成比较好的分销商进行公开表彰,同时在媒体上积极宣传他们。通过每年一次的集会可以加强渠道成员的集体感、归属感。这么做不但可以鼓励获奖者更上一层楼,还可以激励、鼓舞渠道内的其他成员斗志,推动渠道共同进步。

(2) 对分销商的发货控制及管理。为了防止部分分销商恶意破坏市场、减少囤积和串货行为,每遇到超乎寻常的订量时,都要从分销商销售能力、地区销售潜量、竞争情况、信誉情况等方面认真审核,综合考虑。

(3) 对客户进行分类管理。此前要先加强对分销商的评价工作,增加对分销商的认识,注重考察他们的发展潜力。对客户进行分类管理有利于明确重点,把更多的精力放在创造绝大部分效益的重点客户身上。明确了客户的类别后,我们就可在销售政策、激励措施的制定与日常关系的处理上有的放矢。

(4) 及时收回到期书款,加强在途书款的监控,最大限度地避免回款风险。要做到这一点的关键是在选择分销商前充分了解该分销商的实力、信誉等状况。

4.建立垂直分销渠道

所谓垂直分销渠道是指以所有权、契约或其他方式为纽带紧密联系在一起的出版企业、批发商和零售商构成的一种渠道形式。它是一种实行专业化管理和集中计划的组织网络,它是一个企业联合体,或者是一个渠道成员拥有其他成员的产权,或者是一种契约关系,或者一个成员拥有相当实力,其他成员愿意与之合作。一般有3 种形式,分别为产权式垂直分销渠道,支配式垂直分销渠道,契约式垂直分销渠道。传统的分销渠道因为各渠道中间商都是有着各自利益追求的相对独立的经济体,在供过于求、竞争激烈的市场营销环境下,渠道间的竞争与冲突是无法避免的。但是通过建立垂直分销渠道就可以有效解决这一问题。垂直分销渠道可以最大限度统一渠道利益,消除渠道矛盾,避免传统分销渠道之间的内耗,以达到共同发展,共享发展成果的目的。

5.实现全渠道的信息对接,实现联网办公

通过信息的有效集成为客户提供全方位的高效服务,提升服务质量。这样不但有利于出版企业以顾客为中心的市场营销理念的实现,还有利于渠道管理者加强销售终端控制,实时监控渠道行为,适时调整渠道管理策略。

6.渠道管理者要高瞻远瞩

出版企业是渠道的管理者,同时也是渠道的一员,这种特殊的身份要求出版企业要最大限度地照顾到渠道整体的和谐发展,不能一味地追求企业自身利益。

推荐第10篇:图书管理总结

2014-2015学年图书管理员工作总结

车步学区小学

练素娟

图书馆管理员工作是一项具有以服务读者为最高宗旨的职业,要求馆员不仅应具备一定的知识水平、业务技能和信息能力,而且要具备良好的职业道德。为此,图书馆员必须具备以下6种职业道德:

1.忠于职守的敬业意识。作为馆员,首先要充分认识图书馆在整个社会中的重要地位和作用,明确在社会主义国家任何一项职业都是社会分工的不同,真正树立献身于图书馆事业的思想,把远大理想落实于具体工作,在平凡的岗位上勇于探索、奉献。

2.助人为乐的爱业情感。图书馆工作本身就是一种后台职业,管理人员长年累月地忙碌于为读者服务的岗位上,其劳动价值往往凝聚在别人的成果中。这样,在社会上容易产生轻视图书馆工作的偏见,同时也易使馆员产生无所追求的消极情绪。为此,馆员必须树立做好本职工作的强烈责任感和使命感,安心和热爱本职工作,干一行,爱一行,踏踏实实,兢兢业业,当好“螺丝钉‘,全心全意为读者服务。

3.全心全意的献业精神。作为馆员,必须树立“读者第一”的思想。在服务内容上,要从不同的领域、不同的层次、不同的方位为读者提供多样化、多层次、高质量、多类型、快速度的文献情报服务。在服务方式上,要积极主动开放,变静态服务为动态服务,变封闭服务为开放服务,变被动服务为主动服务。

4.认真负责的勤业作风。图书馆既是科学性、技术性、创造性和连续性很强的学术工作,又是复杂繁琐而细致的服务工作。目前,不少图书馆还是以手工操作为主,程序繁多而劳动强度大。这就要求馆员更要发扬艰苦奋斗的作风;要树立职业责任感,严格按照图书馆各项规章制度办事;要坚守工作岗位,不玩忽职守;要互相支持,团结协作;要发挥主观能动性,创造性地开展工作。

5.熟悉博深的精业能力。当前,不少馆员现有的文化科学知识和专业技术知识显得过于贫乏,不能适应科技发展的客观要求。为此,迫切要求图书馆员必须迅速更新观念,增强吸取新知识的敏感性和自觉性,努力学习现代科学文化知识、网络知识、外语知识及专业技术,培育广阔的知识视野、过硬的业务本领。

6.文明礼貌的乐业行为。图书馆作为公共文化场所,是精神文明建设的重要窗口,应首倡文明礼貌风尚。首先,馆员要有庄重的仪表。其次,要有文明礼貌的语言。第三,要有热诚的态度。第四,要有良好的卫生习惯。第五,要有爱书惜时的优良品质。

时光匆匆,岁月如梭,一个学期已经结束了。在本学期中我校图书室在校领导的支持和关怀下,经过本人的努力工作,发展得井井有条,顺利完成了学期初始所定之计划。现总结如下:

1、健全各种管理制度,正常开展借书、阅览活动,对图书室图书及时进行分类、编目与整理,为每位老师、学生办理借阅登记,做好图书和资料的出借工作。

2、认真学习,深刻认识总结了新时期新阶段教育信息化工作的重要性,增强了服务意识,使工作达到规范化、制度化,全心全意为全体师生服务。使图书管理工作嬴得了全体师生的一致好评。

3、及时为教师整理各种图书和资料,一有新书及时提供新信息,以便师生查找、查阅,充分利用图书室的图书资源,加大了图书的借阅和流畅,全面提高了图书室图书、资料的流通率,利用率,充分发挥了图书室的作用,真正使图书室成为了中心教学科研与学生课外阅读的重要基地。

4、借阅图书做到了认真细心,加强了爱护书籍的教育,指导学生合理地保管书籍。

到不涂划、不污损,及时修补破损图书。一学期来,图书室的图书基本保持原样。

5、及时整理图书室内务,保持整洁清爽。

2015.2.2

第11篇:图书管理总结

图书管理员工作总结

黄骅市羊二庄镇杨庄中学

以前总以为图书室的工作只是简单的“借借还还”, 我担任图书管理员工作以后才发现其实它是一种学术性、技术性、创造性极强的工作,同时也是一种复杂、细致而繁琐的体脑结合的艰苦工作。需要耐心、细致、周到的服务态度。

一、工作情况

1、由于我校图书的不断增多,原来的图书室已不能容纳,而且将要面临国家均衡发展督导评估检查,图书室搬迁工作已迫在眉睫。如何在最短的时间内,在保证正常教学工作按时完成的前提下,以最快的速度、最好的质量、最少的费用圆满地完成图书馆的搬迁任务,是我面临的最大难题。我立足全局,周密细致地做好新图书室规划和搬迁准备工作,并要求每一位工作者倾力合作,经过一个多月的共同努力,终于完成了图书室的搬迁工作,并在迎接国家均衡发展督导评估检查准备工作中得到了领导的一致好评。搬迁工作主要分为:

(1)藏书清还工作。藏书清还是对馆藏图书管理的一项常规性工作,在搬迁之前做好此项工作更有其重要意义。它既有利于准确地掌握藏书种类总数,为使清还藏书加快速度,首先要向读者做好宣传,以得到支持、理解和配合。其次,下发通知单,公布赔偿制度,建立读者还书登记记账,设置“特殊情况”备忘录等,这些工作都是十分必要的。

(2)藏书清点工作。藏书清点是要对馆内各书库藏书进行全面的整序、归类、排架、剔除、核销等工作。严格按索书号排列,错架、错类、错号藏书进行校正。同时要对清还书上架、归类,对污损、破旧书进行修补,要认真进行核账、注销、统计工作。将图书室的账目按照专业标准格式进行修改、更正和填写。

(3)图书架搬运工作。现将旧图书室的所有图书按顺序分类下架,将图书架搬运到新图书室,调整好架位、架距、阅览桌的桌距,工作台的摆放等。

(4)图书搬运。图书搬运是图书馆搬迁工作中劳动强度最大、节奏最紧张的阶段。它主要包括藏书出库、装车、运输、卸车、藏书入库这5 个环节。负责藏书出库登记的人员要认真记录藏书出库情况,记录出库的是何类图书,以及该车共装了多少书。藏书装车时,要注意按藏书区域顺序装车,保持装车过程有条不紊。运输图书时图书馆要配备专门的押车人员,防止车上的图书在运输过程中掉下来。卸车时要明确所运载图书的入库位置,并且清点数目,与装车时所登记的数目进行印证,确保准确无误,然后组织搬运人员把各类图书直接搬运到它们所对应的书架附近。 (5)图书上架。安排专职人员直接将图书按顺序“对号入座”,及时上架。

(6)图书整理。由于打包时保留了原有的图书排列顺序,图书上架之后,基本没有乱架的情况发生,只需对新馆图书稍加整理即可;需要特别注意的是,前一架图书的后面部分和后一架图书的前面部分是否衔接正确。在整理的同时,要针对新馆图书的排架情况着手调整每类图书的架标,以方便读者查找。 (7)健全各种管理制度,更新导引标识。

(8)对新进的图书和新到的杂志及报纸,采用科学的方法进行分类、编目与整理,为每本书登记建卡,贴上书签,上好架,为每位老师、学生办理借书证,做好图书和资料的出借登记工作。

2、认真学习《中小学图书馆规程》,增强了服务意识,使工作达到规范化、制度化,全心全意为全校师生服务。学校图书管理工作嬴得了全校师生的一致好评。

3、正常开展借书、阅览活动,及时为教师编写好各种图书和资料索引,一有新书及时提供新信息,以便教师查找、查阅,全面提高学校图书室资料的流通率,利用率,充分发挥学校图书室的作用。

4、定期开展读书活动。读书活动是全面提高学生素质的一个极其重要的载体,养成读好书的习惯将对一个人的发展产生终身影响。由于学生认知水平、个性特点、兴趣爱好的不一样,我们在日常读书活动中,从实际出发,贴近学生的实际,根据其不一样年龄层次、心理特点和理解潜力进行分层指导,由浅入深,循序渐进,逐步深化。我们配合语文组给各个年级推荐一些读书书目,推荐的书籍既满足学生求知的需要,又能起到用心配合学校教育教学活动的作用。以读书启迪智慧,用智慧滋养心灵。读书活动的开展及步步深化推动了我校的素质教育,同学们透过读书、爱书、知书、用书,把知书、达理联系在一齐,陶冶了情操,开扩了眼界,增长了知识,提高了素养。

5、培养班级图书管理员,加强了爱护书籍的教育,指导学生合理地保管书籍:注意防潮、防折、不涂划、不污损,一学期来,图书室的图书基本完好无损。

二、经验和体会

图书馆管理员工作是一项具有以服务读者为最高宗旨的职业,要求馆员不仅仅应具备必须的知识水平、业务技能和信息潜力,而且要具备良好的职业道德。为此,图书馆员务必具备以下6种职业道德:

1、忠于职守的敬业意识。作为馆员,首先要充分认识图书馆在整个社会中的重要地位和作用,明确在社会主义国家任何一项职业都是社会分工的不一样,真正树立献身于图书馆事业的思想,把远大理想落实于具体工作,在平凡的岗位上勇于探索、奉献。

2、助人为乐的爱业情感。图书馆工作本身就是一种后台职业,管理人员长年累月地忙碌于为读者服务的岗位上,其劳动价值往往凝聚在别人的成果中。这样,在社会上容易产生轻视图书馆工作的偏见,同时也易使馆员产生无所追求的消极情绪。为此,馆员务必树立做好本职工作的强烈职责感和使命感,安心和热爱本职工作,干一行,爱一行,踏踏实实,兢兢业业,当好“螺丝钉‘,全心全意为读者服务。

3、全心全意的献业精神。作为馆员,务必树立“读者第一”的思想。在服务资料上,要从不一样的领域、不一样的层次、不一样的方位为读者带给多样化、多层次、高质量、多类型、快速度的文献情报服务。在服务方式上,要用心主动开放,变静态服务为动态服务,变封闭服务为开放服务,变被动服务为主动服务。

4、认真负责的勤业作风。图书馆既是科学性、技术性、创造性和连续性很强的学术工作,又是复杂繁琐而细致的服务工作。目前,不少图书馆还是以手工操作为主,程序繁多而劳动强度大。这就要求馆员更要发扬艰苦奋斗的作风;要树立职业职责感,严格按照图书馆各项规章制度办事;要坚守工作岗位,不玩忽职守;要互相支持,团结协作;要发挥主观能动性,创造性地开展工作。

5、熟悉博深的精业潜力。当前,不少馆员现有的文化科学知识和专业技术知识显得过于贫乏,不能适应科技发展的客观要求。为此,迫切要求图书馆员务必迅速更新观念,增强吸取新知识的敏感性和自觉性,努力学习现代科学文化知识、网络知识、外语知识及专业技术,培育广阔的知识视野、过硬的业务本领。

6、礼貌礼貌的乐业行为。图书馆作为公共文化场所,是精神礼貌建设的重要窗口,应首倡礼貌礼貌风尚。首先,馆员要有庄重的仪表。其次,要有礼貌礼貌的语言。第三,要有热诚的态度。第四,要有良好的卫生习惯。第五,要有爱书惜时的优良品质。

三、问题和教训

学校图书室虽然发挥了它应用的功能,但同时也存在不足:

1、班级阅读量参差不齐,有班级班主任不够重视,学生借书不够积极,还有学生不借书。有的学生不能够及时还书,希望今后班主任能够重视学生借、还书工作,我们一起把工作做得更好。少数学生不够爱惜图书,图书破损现象时有发生,我将在今后的工作中克服不足,进一步发挥图书室的育人功能,把图书馆的工作做得更出色。

2、班级图书管理员培训得还不够,集体借阅出了一些问题:如不及时归还,遗失或污损图书无人负责等情况。

四、今后的打算和努力方向

在今后的工作中,我们将根据师生的需求,根据学校的实际情况,广泛地增添各种书籍,加强管理,更好地为师生服务,把图书室办得更好,使之在教育教学中发挥更大的作用。

第12篇:图书管理系统

目录

第一章 绪论 .....................................................................................................................................1 第二章 需求分析 ..............................................................................................................................2

2.1任务概述 ............................................................................................................................2

2.1.1 图书管理系统完成的主要目标 ...........................................................................2 2.1.2用户的特点 ............................................................................................................3 2.2需求规定 ............................................................................................................................3

2.2.1对功能的规定 ........................................................................................................3 2.2.2读者管理功能 ........................................................................................................4 2.2.3系统管理功能 ........................................................................................................4

第三章 概要设计 .............................................................................................................................4

3.1总体设计 ............................................................................................................................4

3.1.1系统目标设计 ........................................................................................................4 3.1.2系统功能分析 ........................................................................................................5 3.2系统设计思想 .....................................................................................................................5 3.3 系统模块功能解析 ............................................................................................................5 第四章 详细设计 .............................................................................................................................6

4.1程序设计说明 ....................................................................................................................6

4.1.1用户登录模块 ........................................................................................................6 4.1.2用户添加模块 ........................................................................................................7 4.1.3书籍查询模块 ........................................................................................................8 4.1.4图书借阅模块 ........................................................................................................9 4.1.5图书归还模块 ......................................................................................................10 4.1.6新书入库模块 ......................................................................................................11 第五章 编码与测试 .......................................................................................................................13 5.1各功能模块的实现 ...........................................................................................................13 5.2 测试 .................................................................................................................................19 5.2.1借阅卡管理测试 ..................................................................................................19 5.2.2书籍管理测试 ......................................................................................................19 5.2.3系统管理测试 ......................................................................................................19 结束语.............................................................................................................................................20 致

谢 ...........................................................................................................................................21 参考文献 .........................................................................................................................................21

图书管理系统

摘要:本文介绍了在VB6.0环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。 关键字:图书管理系统,VB6.0,sqlserver2000,信息系统

Library Management System Abstract:This article introduces the detailed proce of exploring a management information system under the environment of VB6.0, utilizing “Top-Bottom” overall plan and a strategy according to “Bottom-Top” application and exploitation.That is to establish a set of effective scheme for library management by computer, through analyzing disadvantages of traditional library management by human resources.This article emphasizes on three sections.The system analysis section of library management information includes feasible analysis, organizing organs analysis, management function analysis, technological proce of busine analysis, technological proce of data analysis, data dictionary, disposal description and the like.The system design section mainly focuses on system function design and data base design.And the system realization section has provided several major program charts, together with the main windows and programs.Key words: library management system, VB6.0,information system

第一章 绪论

随着人类社会的发展,人类对知识的需求也不断地增长。在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就必不可

少了。

图书馆管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端的应用程序的开发两个方面。对于前者要求建立数据的一致性和完整性,对于后者则要求应用程序功能的完备,易用等的特点。基于上述考虑本系统主要利用VB6.0作前端的应用开发工具 ,利用sqlsever 作为后台的数据库,利用WINDOWS作为系统平台开发的图书管理系统。另外本图书馆管理系统利用软件工程化思想和方法,总体上是采用结构化生命法进行系统分析和设计的,而系统实现等步骤则采用了原型法和面对对象的方法

系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。能够对图书进行注册登记,也就是将图书的基本信息(如:书名、作者、价格等)预先存入数据库中,供以后检索。能够对借阅人进行注册登记,包括记录借阅人的姓名、地址、电话等信息。提供方便的查询方法。如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。提供统计分析功能。可以展现出图书类型比例、库存与借出比例。提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。提供较为完善的差错控制与友好的用户界面,尽量避免误操作。图书馆的基本功能就是为读者提供借阅服务,读者通过借阅这一过程,可以把图书带出图书馆,从而使读者能够更方便的浏览图书。借书过程中,图书管理员要对读者的借书资格进行审查,对符合借书条件的读者,允许其借书,对其借书记录进行登记;对没有借书资格的读者,禁止其借书。

在VB6.0环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。

第二章 需求分析

2.1任务概述

2.1.1 图书管理系统完成的主要目标

进入系统前需要身份认证、用户名、密码、输入正确方可进入。用户可以根据需要进行书库管理。用户可以进行借书证的办理、查询、挂失等操作。用户可

以添加账户和修改密码。 2.1.2用户的特点

最终用户包括读者(具有借阅卡的人)、图书管理员,鉴于此软件应用于大学图书管理,读者基本都是在校大学生即校职工和领导,图书管理员都是接受过高等教育的职工,因此他们都懂得运用基本的计算机知识。大学图书管理系统的使用频度很高,假如一个一万人的大学来讲,每天图书馆的平均日流量为1.5万。因此,该软件的可靠性、可用性、可维护性显得尤为重要。

2.2需求规定

2.2.1对功能的规定

1、图书信息查询/借书信息查询:图书馆主要向读者提供图书借阅的服务。读者为了借阅图书,一般情况下,需要在借书之前查询所要借阅的图书情况,所以图书馆需要为读者提供图书查询功能。例如,读者可能想借阅某方面的书,但不知道图书馆在该方面有哪些图书可供借阅,所以需要对图书馆的图书进行查询;或者,读者知道想借阅的图书信息,但不知道该图书馆是否有该书或不知道图书在图书馆的位置、是否被借出、是否可以借阅等信息,这也需要使用图书查询功能。一般的图书查询中,读者是通过图书登记卡、浏览图书登记卡中的信息得到图书信息的。经过图书查询,读者获得图书馆是否有自己想要的图书,该图书的简单信息以及图书在图书馆的借阅位置等信息。

2、新书入库:为了能正常运行,图书馆要及时更新馆藏图书。对于新书,要购进,供读者借阅;所以要设计到图书的批量入库。对于批量入库,图书管理员要批量登记图书的信息,包括书名ID、ISBN、图书名称、作者、出版社、单价、入库时间、图书总量、现存总量等。

3、借阅图书/归还图书:图书馆的基本功能之一就是为读者提供借阅服务,读者通过借阅这一过程,可以把图书带出图书馆,从而使读者能够更方便的浏览图书。借书过程中,图书管理员要对读者的借书资格进行审查,对符合借书条件的读者,允许其借书,对其借书记录进行登记;对没有借书资格的读者,禁止其借书。具体的步骤如下:读者向图书管理员提交请求和图书借阅卡,图书管理员检查读者提供的借阅卡,如果该借阅证真实准确,读者已经借阅的图书并没有超过允许借书量,而且读者没有逾期未还的图书,则允许读者借书,否则,读者不能从图书馆借书。读者拿到要借阅的图书,同时拿到自己的借阅卡,借书过程完毕。当借阅图书的数量超过5本或者出现未按期归还图书的情况,则不好进行借阅处理。图书馆的另一基本功能就是为读者提供还书服务,读者在一本图书借阅期满之前把该图书还给图书馆,一般的还书步骤如下:读者把所借的图书和自己的借阅卡交给图书管理员。图书管理员对图书进行检查,看有无损坏,如果出现图书的损坏情况,读者应进行相应的赔偿。图书管理员查看是否超过规定借阅期限,如果已经过期,则读者要按规定交纳罚金。图书管理员进行登记,同时把还书信息记入借阅卡。读者拿回自己的借阅卡,还书过程借书。读者逾期未归还图书超过三天,将按照每本每天进行一定的罚款。

4、书籍挂失:对图书由于丢失而不能即时还书的情况,读者要即时到图书管理员进行登记,确保图书信息的更新。进行书籍挂失的步骤一般如下:读者将所丢图书信息告诉图书管理员并将借阅卡交给图书管理员。图书管理员对该图书信息进行登记,并按图书的价格,要求读者进行相应赔偿。图书管理员将信息记入借阅卡。读者拿回自己的借阅卡,挂失功能结束。

2.2.2读者管理功能

1、办理借阅卡:图书馆向读者提供借阅服务,读者必须具有有效凭证方可借阅。因此,读者必须办理借阅卡获取有效凭证。读者在办理借阅卡时,必须输入个人有关注册信息,包括读者姓名、性别、出生日期、家庭住址、身份证号码、电话号码等信息。系统根据读者提供的信息,办理借阅卡并生成个人帐号、读者可自行修改密码。

2、借阅卡信息查询;图书馆在正常运营中要面对大量的读者信息,需要掌握每个读者的信息,即时准确的掌握读者的基本情况,这些是图书馆运营的保证。读者要进行信息查询,可以通过系统将自己的借阅卡账户、密码输入系统,系统通过核对找到读者的信息。如果读者的信息正确,系统将读者的信息包括读者姓名、性别、出生日期、家庭住址、身份证号码、电话号码等信息。如果读者的信息不正确,系统将提示错误,并且系统设定,当错误次数超过5次时,系统将不予查询。

3、借阅卡挂失:对借阅卡的丢失要即时进行挂失处理,以防止其他人盗用自己的有效信息并出现私自借书等行为。借阅卡挂失的一般步骤可分为:读者将挂失情况即时到图书管理员处进行登记,并填写登记单。图书管理员将读者情况进行登记挂失,注销借阅卡的信息,并咨询读者是否重新办理。若读者需重新办理,则重新填写相关信息,系统自动生成心的借阅卡信息记录,读者重新设置帐号即密码,并交纳相应的费用。若读者不需办理,则系统将信息注销。读者获得新的图书借阅卡。

2.2.3系统管理功能

1、注册管理员:为了对图书馆管理系统进行管理,图书馆需要若干名图书管理员进行管理,在图书管理员对系统进行管理之前必须进行注册功能,以确定管理员身份。对管理员进行注册,系统生成相应信息。其中管理员的基本信息包括:成员ID、密码等。系统管理员每次登陆前输入自己的ID与密码,系统对其信息进行核实,如基本信息正确,则系统管理员可进行系统管理功能,若系统检查不正确,则系统管理员不可以进行相应的操作。

2、修改密码:服务图书馆管理员可能由于某些原因,如电脑中毒导致管理员密码的泄露,为避免图书管理信息遭到破坏,系统具有修改密码的功能,确保图书管理功能的安全性。

3、退出功能:系统管理员每次离开必须进行退出功能,确保管理功能不被他人所用,这样更方便图书管理系统出现问题时,找到责任人。

第三章 概要设计

3.1总体设计

3.1.1系统目标设计

系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。能够对图书进行注册登记,也就是将图书的基本信息(如:书名、作者、价格等)

预先存入数据库中,供以后检索。能够对借阅人进行注册登记,包括记录借阅人的姓名、地址、电话等信息。提供方便的查询方法。如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。提供统计分析功能。可以展现出图书类型比例、库存与借出比例。提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。提供较为完善的差错控制与友好的用户界面,尽量避免误操作。 3.1.2系统功能分析

根据以上功能,将图书管理系统的数据分为:数据输入部分:主要包括图书基本信息的录入、借阅人基本信息的录入、用户基本信息的录入。数据输出部分:主要是各种统计查询,包括:根据图书信息(如书名、作者、出版社等)查阅图书及其借阅信息、统计输出图书类型比例等。数据处理部分:主要涉及借阅和归还的处理,如一本书借出后,必须在数据

库中将该书标记为已借出,以防出现数据库中有书但图书馆无书的情况;一本书归还后,同样必须在数据库中将其标记为已经归还,以便再次借出。

概念设计阶段主要任务和目标是根据需求分析的结果,包括一般联系实体,画出对应的ER图。对于复杂的系统,通常首先要对它的各功能模进行分析,然后再把它的功能结构图画出来,便是设计和优化。功能分析之后,再根据各个岗位、各个用户对数据和使用权限的不同要求作出局部ER图,然后再把各个局部ER图综合起来形成统一的整体ER图。

3.2系统设计思想

1、图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。图书管理系统使用的是SQL Server2000的数据管理系统和以Visual Basic6.0为开发工具。

2、首先进行系统设计分析,系统设计主要包括系统功能分析、系统模块设计以及运行环境的选择、系统实现过程。

3、然后根据系统功能分析设计出需要的数据库,绘制系统数据流图与总结数据字典、设计数据库结构。

4、最后在实现各个功能模块时,采用先模块后系统集成的方式,即各系统功能模块分别独立设计和调试,在创建系统主窗体时才将各个功能模块通过主窗体菜单系统集成到一起,最后进行系统整体的设计和调试。

3.3 系统模块功能解析

(1)系统设计分析

本图书管理系统主要有以下功能: 图书征订:包括图书征订数据的录入、修改、删除与审校等功能。 图书编目:包括图书数目信息的录入、修改、删除功能。 图书典藏:包括新书分配、库室调配等功能。

图书流通:包括图书借阅、续借、图书返还,图书书目的查询的功能。 系统用户管理:包括系统用户数据的录入、修改与删除等功能。

读者数据管理:包括读者类别管理,读者个人数据的录入、修改和删除功能。 (2)系统功能分析

权限功能:权限功能设置的对象为高级管理员、普通管理员、读者。高级管 删除所有信息;普通管理员只能对授权范围内进行相应修改及删除;读者 只能查询借阅记录和图书书目不能修改。

录入功能:为普通管理员提供相应的录入功能,为高级管理员提供对所有信息的录入功能。

查询功能:为所有用户提供查询的功能,可查询允许范围内的所有信息。 维护功能:为普通管理员提供查询及相应的修改,删除功能,为高级管理提 供对所有信息的修改删除功能。

打印功能:可打印图书征订计划。

退出功能:各个功能模块和主窗体都设有关闭命令按钮,可方便地退出各模 块或系统。

第四章 详细设计

4.1程序设计说明

4.1.1用户登录模块

1.程序描述:此程序用于用户登陆的至用户界面,程序通过输入用户的ID,用户密码的正确性来实现对验证用户的真实性。2.功能:实现用户的登录功能

3.性能:用户通过输入用户ID,用户名和密码进行用户登陆,通过认证后,用户

即可进入用户界面。

4.输入项:输入用户ID,用户名,密码5.输出项:用户主页面。流程逻辑如图所示:

输入用户名和密码N数据库是否打开Y连接失败返回N用户名和密码是否正确Y输入次数是否超过5次YN重新输入密码关闭数据库返回登陆成功进入主界面

图4-1用户登录流程逻辑

4.1.2用户添加模块

1.程序描述:此程序用于添加新的用户,用户通过向数据库内输入必要的信息来注册成为新的用户,才通过一系列的验证之后,即注册成为真正的用户。

2.功能:实现对用户的添加功能。

3.性能:查询新用户的用户名是否存在,若存在则停止添加返还数据库;若用户不存在,则进行添加,并进行注册,注册成功后返回。

4.输入项:输入用户的详细信息,包括姓名,出生日期,性别,地址,身份证号码,电话号码等信息。

5.输出项:若添加成功,则输出提示用户注册成功界面;若未成功,则提示输出未成功原因界面。

6.流程逻辑如下图所示:

输入用户信息N判断数据库是否打开提示连接失败返回Y查询数据库中是否有该用户Y提示已经存在该用户关闭数据库并返回N向数据库中添加新用户提示注册成功返回

图4-2用户添加模块流程逻辑

4.1.3书籍查询模块

1.程序描述:此程序用于实现用户对想要借阅的查询功能。用户通过输入相应的图书信息来查询,数据库根据用户提供的信息来搜索,最后给出客户相应的图书信息。

2.功能:实现图书查询功能。

3.性能:对进行想要查询的书籍进行搜索,若存在此书则显示该书的详细信息;若不存在此书,则提示没有此书并返回。

4.输入项:输入图书的详细信息,包括图书名称,书籍ID,图书作者,出版社,单价等信息。

5.输出项:若输入的图书存在即输出图书详细信息界面;若输入的图书不存在则显示图书不存在界面。

6.流程逻辑如下图所示:

输入图书信息判断数据库是否打开Y查询是否有该书YN连接失败返回N关闭数据库返回显示该书的信息关闭数据库返回 图4-3图书查询模块流程

4.1.4图书借阅模块

1.程序描述:此程序用于图书的借阅,用户通过登录自己的借阅ID后,对需要借阅的图书进行借阅操作,如果符合借阅的要求,则可进行借阅。 2.功能:实现对图书的书籍借阅功能。

3.性能:首先验证借阅者输入的借阅ID是否存在,若存在进行下一步;若不存在则返回。

4.若借阅ID存在,则检查此借阅ID是否借阅书籍超出4本,若超出则提示超出借阅数目,返回;若没有超出,则进行下一操作。

5.对想要借阅的图书ID进行搜索,若此书不存在,则提示此书不存在;若此书存在则进行下一步操作。

将借阅者借阅的数量増一,将数据库中此书数量减一,同时提醒借阅成功,然后返回。

6.输入项:输入借阅证的ID,图书ID 7.输出项:若借阅证ID正确且图书ID正确且符合借阅要求,则输出提示借阅成功界面;若存在借阅ID或图书ID或不符合借阅要求等问题,则输出提示没有借阅成功原因的界面。 8.流程逻辑如下图

输入书籍ID和借阅IDN数据库是否打开YN借阅卡ID是否存在YY判断借阅ID是否借书超出4本提示超出最大借书数量关闭数据库返回提示不存在该借阅者关闭数据库返回数据库连接失败返回NN数据库中是否存在书籍IDY将借阅者的借书数量加1提示不存在该书籍关闭数据库返回将书籍的数量减1提示借书成功关闭数据库返回 图4-4图书借阅模块

4.1.5图书归还模块

1.程序描述:此程序用于图书的归还,用户在登录自己的ID之后,用户可以对需要归还的图书进行操作,如果符合归还要求,则可以将图书归还。 2.功能:实现对图书的书籍归还功能。

3.性能:首先验证借阅者输入的借阅ID是否存在,若存在进行下一步;若不存在则返回。

对想要归还的图书ID进行搜索,若此书不存在,则提示此书不存在;若此书存在则进行下一步操作。将借阅者借阅的数量减一,将数据库中此书数量加一,同时提醒借阅归还,然后返回。

4.输入项:输入借阅证ID和图书ID 5.输出项:若借阅证ID和图书ID正确,则输出提示图书归还成功界面;若借阅证ID或图书ID不正确,则输出提示没有成功原因的界面。

6.流程逻辑如下图:

输入书籍ID和借阅IDN数据库是否打开YN借阅卡ID是否存在YN提示不存在该书籍关闭数据库返回提示不存在该借阅者关闭数据库返回数据库连接失败返回数据库中是否存在书籍IDY将借阅者的借书数量减1将书籍的数量加1提示还书成功关闭数据库返回 图4-5图书归还模块

4.1.6新书入库模块

1.程序描述:此程序用户对新进图书的入口登记处理。用户可以将新书的详细信息进行输入,保存在数据库中后,新书即登记成功。

2.功能;实现新进图书入库功能。

3.性能:对数据库查询是否已存在此书,若存在则将此书数量加一,提示添加成功;若没有此书,则将此书的基本信息存入数据库,并提示添加书籍成功。

4.输入项:输入新书的书籍ID,书名,作者,出版社,单价等信息。

5.输出项:若添加成功,则输出提示新书添加成功界面;若没有添加成功, 输出提示未成功原因界面。

6.流程逻辑如下图

输入书籍信息N数据库是否打开关闭数据库返回Y是否已经存在Y该书将该书的数量加1提示添加书籍成功关闭数据库N将该书信息存入数据库是否是第一条N记录提示添加书籍成功关闭数据库返回Y提示添加第一本书籍关闭数据库返回图4-6新书入库模块

返回

第五章 编码与测试

5.1各功能模块的实现

(1)用户登录窗体

图5-1 用户登录窗体

用户登录代码:

Const MaxLogTimes As Integer = 3 Private Sub cmdcancel_Click()

If MsgBox(\"是否真的退出系统登录?\", vbYesNo, \"登录验证\") = vbYes Then

Unload Me

End If End Sub Private Sub cmdok_Click()

Static intLogTimes As Integer

intLogTimes = intLogTimes + 1

If intLogTimes >MaxLogTimes Then

MsgBox \"超过登录次数!\", vbCritical, \"登录验证\"

Else

With Library_Manage.rsSysUsers

.Open

If .RecordCount >0 Then

.MoveFirst

.Find \"编号=\" & Trim(txtLog(0)) & \"\"

If .EOF Then

MsgBox Trim(txtLog(0)) & \"不是系统用户,请检查输入!\", vbCritical, \"登录验证\"

txtLog(0).SetFocus

txtLog(0).SelStart = 0

txtLog(0).SelLength = Len(txtLog(0))

ElseIf .Fields(\"口令\") Trim(txtLog(1)) Then

MsgBox \"口令错误,请检查输入口令!\", vbCritical, \"登录验证\"

txtLog(1).SetFocus: txtLog(1) = \"\"

Else

CurrentUserNum = .Fields(编号)

CurrentUserPaword = .Fields(\"口令\")

CurrentUserStatus = .Fields(\"权限\")

MsgBox \"欢迎使用常州信息学院管理系统!\", vbInformation, \"登陆成功!\"

Unload Me

End If

End If

.Close

End With

End If End Sub Private Sub Form_Load()

SysLogon.BackColor = RGB(192, 210, 270) End Sub (2)用户管理窗体界面

图5-2 用户管理窗体

用户管理窗体代码 \'保存

Private Sub cmdSave_Click()

Dim objcopy As New Recordset

If Trim(txtNum) = \"\" Then

MsgBox \"不能为空!\", vbCritical, \"系统用户管理\"

txtNum.SetFocus

txtNum.SelStart = 0

txtNum.SelLength = Len(txtNum)

ElseIf Len(Trim(txtPwd)) 6 Then

MsgBox \"用户口令须为6位字符串!\", vbCritical, \"系统用户管理\"

txtPwd.SetFocus

txtPwd.SelStart = 0

txtPwd.SelLength = Len(txtPwd) ElseIf Not txtAuth Like \"[0,1]\" Then

MsgBox \"用户权限必须为0或1\", vbCritical, \"系统用户管理\"

txtAuth = \"\"

txtAuth.SetFocus Else

Set objcopy = Library_Manage.rsSysUsers.Clone \'对错?

With objcopy

If .RecordCount >0 Then

.MoveFirst

.Find \"编号\" & Trim(txtNum) & \"\"

If Not .EOF And .AbsolutePosition Library_Manage.rsSysUsers.AbsolutePosition Then

MsgBox \"编号:\" & Trim(txtNum) & \"已被使用,请选择其他编号!\", vbCritical, \"系统用户管理\"

txtNum.SetFocus

txtNum.SelStart = 0

txtNum.SelLength = Len(txtNum)

Exit Sub

Else

\'保存记录

Library_Manage.rsSysUsers.Update

MsgBox \"数据保存成功!\", vbInformation, \"系统用户管理\"

cmdAdd.Enabled = True

cmdDel.Enabled = True

isAdding = False: picNavigation.Enabled = True

End If

End With End If End Sub Private Sub Form_Load()

cmdMove(0).Value = True End Sub (3)读者数据管理窗体界面

图5-3 读者数据管理窗体

读者数据管理窗体代码

Library_Manage.Library_Manage_Con.Execute \"TRUNCATE TABLE 读者类别\"

With Library_Manage.ReaderType

If .State = adStateClosed Then .Open

.AddNew

.Fields(\"编号\") = \"0\"

.Fields(\"名称\") = \"特殊\"

.Fields(\"借书量\") = Val(txtSp(1))

.Fields(\"借书期\") = Val(txtSp(2))

.Fields(\"有效期\") = Val(txtSp(3))

.Update

.AddNew

.Fields(\"编号\") = \"1\"

.Fields(\"名称\") = \"馆员\"

.Fields(\"借书量\") = Val(txtL(1))

.Fields(\"借书期\") = Val(txtL(2))

.Fields(\"有效期\") = Val(txtL(3))

.Update

.AddNew

.Update

.AddNew

.Fields(\"编号\") = \"2\"

.Fields(\"名称\") = \"教师\"

.Fields(\"借书量\") = Val(txtT(1))

.Fields(\"借书期\") = Val(txtT(2))

.Fields(\"有效期\") = Val(txtT(3))

.Update

.AddNew

.Fields(\"编号\") = \"3\"

.Fields(\"名称\") = \"学生\"

.Fields(\"借书量\") = Val(txtS(1))

.Fields(\"借书期\") = Val(txtS(2))

.Fields(\"有效期\") = Val(txtS(3))

.Update

End With End Sub Private Sub Form_Load() cmdMove(0).Value = True End Sub Private Sub SSTab1_DblClick() End Sub (4)图书征订管理窗体

图5-4 图书征订管理窗体

图书征订管理代码

txtPubDate.SelLength = Len(txtPubDate)

ElseIf Trim(txtAuthor) = \"\" Then

MsgBox \"作者不能为空!\", vbCritical, \"图书征订管理\"

txtAuthor.SetFocus

txtAuthor.SelStart = 0

txtAuthor.SelLength = Len(txtAuthor)

ElseIf Val(txtNum) = \"\" Then

MsgBox \"正的数量无效!\", vbCritical, \"图书征订管理\"

txtNum.SetFocus

txtNum.SelStart = 0

txtNum.SelLength = Len(txtNum)

ElseIf Not IsDate(txtDate) = \"\" Then

MsgBox \"作者不能为空!\", vbCritical, \"图书征订管理\"

txtDate.SetFocus

txtDate.SelStart = 0

txtDate.SelLength = Len(txtDate)

Else

\'保存记录

Library_Manage.rsBooksOrder .Update

MsgBox \"数据保存成功!\", vbInformation, \"图书征订管理\"

cmdAdd.Enabled = True: cmdDel.Enabled = True

cmdExam.Enabled = True: cmdRefresh.Enabled = True

isAdding = False: picNavigation.Enabled = True

End If End Sub Dim objcopy As Recordset Private Sub cmbOut_Click()

AddListOut

End Sub Private Sub cmdAddAll_Click(Index As Integer) \'选择全部条码

ListItem_Add lstPre(Index), LstIn(Index), Index, True End Sub Private Sub cmdAddOne_Click(Index As Integer)\'选择当前条码

ListItem_Add lstPre(Index), LstIn(Index), Index, False End Sub Private Sub cmdExit_Click()

If LstIn(0).ListCount >0 Then

If MsgBox(\"你选定了部分新书准备入库,但没执行保存操作\" & vbCr & \"是否要执行保存操作?\", vbCritical + vbYesNo, \"图书典藏管理\") = vbYes Then

SSTab1.Tab = 0

cmdSave.Value = True

End If

ElseIf LstIn(1).ListCount >0 Then

If MsgBox(\"你选定了部分新书准备入库,但没执行保存操作\" & vbCr & \"是否要执行保存操作?\", vbCritical + vbYesNo, \"图书典藏管理\") = vbYes Then

SSTab1.Tab = 1

cmdSave.Value = True

End If

End If

Unload Me End Sub \'刷新新书或调出库室条码列表

Private Sub cmdRefresh_Click(Index As Integer)

Select Case Index

Case 0 \'刷新新书列表

With Library_Manage.rsBooksBibli

If .State = adStateClosed Then .Open

.Requery

End With

AddListNew

Case 1 \'刷新库室条码列表

With Library_Manage.rsBooksStore

If .State = adStateClosed Then .Open

.Requery

End With

AddListOut

End Select End Sub Public Sub AddListNew()

lstPre(0).Clear

With Library_Manage.rsBooksBibli

If .State = adStateClosed Then .Open

If .RecordCount >0 Then

.MoveFirst

While Not .EOF

lstPre(0).AddItem .Fields(\"条码\")

.MoveNext

Wend

Else

lstPre(0).AddItem \"当前无待分配新书\"

End If End With End Sub 5.2 测试

5.2.1 借阅卡管理测试

进度安排测试办理借阅证信息,检查个人账号、读者可自行修改密码。测试查询借阅卡信息的正确性,包括输入的读者信息等。测试借阅卡挂失功能,包括读者信息等。

5.2.2 书籍管理测试

进度安排:测试新书入库信息的正确性。测试借书、还书功能信息正确性。测试书籍挂失信息的正确性。测试图书信息查询的正确性。测试借书信息查询的正确性。

5.2.3 系统管理测试

进度安排测试注册管理员信息的正确性。测试修改密码信息的正确性。

结束语

对于这篇论文我有不少心得体会。这次是对我们掌握所学知识的一次考核。它可以让我们了解自己一学期里的学习情况,有助于在今后的学习中加以改进。通过这次上机实验,我发现了自己对数据库和vb语言掌握的并不牢,有的知识点根本就不懂。这都要怪自己在平时的学习过程中不够用心,不懂的地方也没有及时的去搞懂,课后也没怎么花时间去研究。这次实验我觉得自己不仅学到了很多软件设计方面的知识,也让我巩固了以前所学的知识以及看到了自己以前学习中的不足之处。

在今后的学习过程中,我一定会认真学习专业课程,再也不能像以前那样迷迷糊糊的,课后要多花时间去研究一些有关编程方面的题目,不懂的地方及时把它弄懂。以后自己还要多动手编写一些程序。在这里我要感谢学校能提供这么一个宝贵的机会,我们可以把课堂上所学的理论知识运用到实践中去,把书上的东西变成我们自己的。这个机会既让我们学习巩固了知识,也让我们发现了自己的不足之处。特别要感谢我们的指导老师,正因为有了您的帮助我们才可以完成实验。我也希望今后还会有更多的机会让我们去实践,去充实自己。

致 谢

在本次设计的过程中,老师们给了我们很大的帮助。不仅使我们在规定时间内完成了系统的设计,同时还使我们学到了很多有益的知识和宝贵的经验在此, 我谨向他们表示最衷心的感谢。感谢老师的指导,使我们充分利用软件工程,VB,数据库原理开发出自己的项目.在开发的过程中使我体会到了工程化开发方法和瀑布模型利用的重要性,在此还要感谢所有合作参与项目开发的同学们这次毕业设计的成功离不开所有参与的同学们的帮助和支持,是他们让我知道了团队工作的重要.

参考文献

1、陶宏才.数据库原理及设计[M].北京:清华大学出版社.2004.

2、陆丽娜.软件工程 [M].北京:经济科学出版社.1999

3、郝志恒、刘舫.Visual Basic 6.0 编程篇[M] 北京:电子工业出版社 2004

4、刘世峰.数据库基础与应用[M] 北京: 中央电大出版社 2003

5、吴斌、鲁大林.Visual Basic+SQL Sever数据库应用系统开发[M] 北京:机械工程出版社 2008

6、邱李华 .SQL Server 2000 数据库应用教程[M] 北京:人民邮电出版社 2007

7、钟军 .Visual Basic数据库高级实例导航[M] 北京:清华大学出版社 2003

8、赵松涛.Visual Basic+SQL Server 2000 系统开发实录[M] 北京: 机械工业出版社 2007

第13篇:图书管理总结

XX乡图书管理总结

时光匆匆,在这寒气袭人的隆冬季节,新的一年来到了,面对新的开端,回顾过去,感慨颇多。一年来,管理图书实在特别辛苦。我乡的图书管理系统由两部分组成,一个是XX村图书室,另一个是七XX村图书室。这一年中,我认真履行着一名图书管理员的职责。为了让图书馆的工作有条不紊地进行,我决心理顺图书馆的各项工作,为我乡早日步入合格的行列而努力,现将一年尤其是近期的图书馆工作作一个总结。

一、做好图书清理、清洁、分类工作,使电子化管理前的图书能够流通。

清理—把全部图书架清空,为图书合理排架做好准备,使藏书合理,更容易查找到需要的图书。

清洁—把所有能阅读以前的图书,用毛巾全部擦干净,使村民便于查阅。

分类—分为四类:适合各年龄层阅读课使用的图书;适合学生借阅的图书;适合中青年查阅的图书;适合老年人阅读的图书。

二、建立乡图书管理员组织,设立乡图书箱,使图书能周转起来。

为了能让村民看到自己喜爱的图书,在xxxx年底我乡成立了小小图书管理员组织,并建立了每周一开会制度。在每次开会时,我都要了解来年给各村的图书借阅情况。另外,小图书管理员值周制度,也为我增添了助手。

三、人文化管理,让师生体会到诚心、热心、爱心“三心服务”。

诚心 —在图书馆工作中,我力争为村民做到全心全意地服务。平时注意关心村民,推荐书籍时做到心中有数,各有偏重。

热心 — 村民们借书,我从不嫌麻烦,先了解村民的需求,在尽可能的情况下,协助找到需要的书。

爱心 — 在村民需要的书实在找不到时,我采用:或牢记在心;或登记在册,日后购买;或推荐同类书籍,在力所能及的情况下,不让村民空手而归。

四、把图书馆工作物化,更好地服务师生和教学。

图书馆的工作千头万绪,为了建立井井有条的工作环境,我把图书馆主要工作进行物化,设计了登记簿,借此加强管理。

在乡政府、村两委领导的重视下,在图书馆人员的齐心协力、分工合作下,我乡图书管理工作取得了一定成效。在新的一年里,我要更加努力,使我乡的图书馆工作更上一层楼。

XX乡文化站

XXXX年XX月XX日

第14篇:图书管理2

浅谈如何做好学校图书管理工作

浅谈如何做好学校图书管理工作 姜堰市运粮中心小学 宋数林

一、充分认识图书管理工作的性质和任务

学校图书馆是学校的一个重要组成部分,是为学校教育、教学服务的一个重要辅助设施。学校图书馆的任务是根据国家教育方针和学校教育的需要搜集、整理和提供各种书刊资料,为教学服务,为学校师生服务。通过书刊资料的流通使用让广大师生了解党的方针政策、时事政治,传播科学文化知识,努力为提高教育教学质量服务。

二、建立健全图书管理的各项规章制度

要发挥学校图书馆的最佳效益,除了不断充实和丰富馆藏外,还必须建立健全图书管理的各种规章制度,规范学校图书馆的管理行为,提高工作效率。学校图书管理的规章制度主要有《图书馆馆长的职责》、《图书管理员的岗位职责》、《教师(学生)阅览室规则》、《借书证办理制度》、《图书借还规则》、《图书采购管理方法》、《图书注销管理方法》、《电子阅览室管理规则》等。在添置新书,登记排架,借阅流通、整理装订、日常维护等各个环节都应有规章制度,加强管理,确保图书管理各项工作的顺利进行。

三、抓好常规管理,满足正常教学需要

学校图书馆的常规管理是一项最基本的工作,做好这项工作才能最大限度发挥学校图书馆的功能,满足学校教育、教学和科研的需要。

1、添置新书。在资金有限的条件下,学校图书馆应根据学校教育、教学和教研工作的迫切需要,采购国内外具有先进理念的相关图书和报刊资料,并注意图书、报刊的思想性、科学性、实用性、时代性,又要做到不赶时髦,不追热点,不采应景之作,更要避免“文字垃圾”和华而不实的“大部头”侵占学校书架。配备应以学生需求为重,兼顾教师,特别要多购一些新教材、新知识方面的参考资料。要为不同层次、不同需求、不同兴趣爱好

的师生提供健康丰富的课外读物。

2、登记排架。学校图书馆作为学校资产之一必须进行财产登记,同时要严格按照《中国图书馆分类法》进行分类编码入册。图书上架应分门别类,明码标签,科学规范。新书上架应辟有专柜,分类排架放置,便于师生查找借阅。

3、借阅流通。藏书的目的是为了流通,让师生借阅,因为这样才能真正发挥图书馆的作用。学校应制定并严格执行借阅制度,规范借阅行为。借阅应有一定的数量和期限,目的是为了保证图书的正常流通,有效地满足师生需求。在借阅中,如损坏,丢失图书或超

期归还,都应按规定作赔偿或处理。

4、整理装订和修补。图书馆征订了各类有参考价值的报刊资料。为保证各种资料的完整性、系统性,方便存放和借阅,要采用集中装订,归类存放的方法,把各种报刊按月、季、年装订成册,再在牛皮纸上注册刊物名称、年份、贴在合订本的书脊上,藏入书库。对磨损、撕页、脱线的图书要及时发现、及时修补,使其恢复或接近原状。对流通量大的书,要采用加固封面、增添书套等办法,增加抗磨强度,延长使用时间。

5、日常护理。主要是做好防火、防盗、防潮、防虫、防鼠、等工作。

四、充分利用资源,做好服务工作

1、创设良好氛围,以环境育人。图书馆对学生的审美素质的影响主要靠环境和图书管理人员的语言来实现,因此,图书室、阅览室的环境布置要有利于培养学生的审美意识和良好的行为习惯。房屋要保持整洁安静,书架、书籍排列要整齐。各项管理制度悬挂在恰当位置,并张贴一些名人名言,创设一个简朴、宁静、高雅又催人奋进的良好文化氛围。图书管理人员要以轻柔、和蔼可亲的语言与师生交流,经常督促和教育学生爱护图书报刊,强调阅读氛围,在潜移默化中让学生受到感染和熏陶。

2、恰当安排工作时间,尽量满足师生的需求。学校图书馆如果按正常行政上班时间或上课时间开馆,必然与师生的借阅时间形成一个错位。因此,图书馆必须在满足学校阅读课的前提下,尽量多安排课余时间和节假日开馆,以满足师生的借阅需求,提高书刊的流

通率和利用率。

3、抓住时机,找准位置,提供专业服务。学校图书馆除了向师生提供“对口”的专业书刊外,还应及时向师生提供新书简介,并根据学校教育教学需要和国内外发生的重大时事,适时向师生推介一些阅读书目。如配合学校安全教育月、卫生宣传周,“三观”(世界观、人生观、价值观)教育推荐相应的阅读书目;在抗日胜利纪念日,“五一”“五四”、“国庆”、“中秋”等纪念节日推荐关于这个节日的历史由来等相关书籍,在“非典”肆虐、“禽流感”爆发时向师生推介相关的报刊文章等等。让学校图书馆充分发挥其教育功

能和社会效益。

五、加强学习,不断提高学校图书管理人员的素质

学校图书管理人员是图书馆的直接服务者,图书管理工作是一种学术性、服务性、技术性很强的工作。他们的文化程度、价值取向、工作作风、业务水平和工作能力等都直接影响到图书馆服务功能的发挥。目前我省中小学校图书管理员从高等院校相应专业毕业的不多,特别是山区中小学校的图书管理员,大多是“半路出家”,有的还是兼职,人员素质普遍不高。因此,要加强学校图书管理人员的培训,不断提高他们的政治素质和业务水平。一方面要加强政治理论学习,帮助他们树立正确的世界观、人生观和价值观,热爱和忠诚于图书馆事业,爱岗敬业,忠于职守,文明礼貌,举止端庄,服务育人;另一方面要加强专业学习,使图书管理人员了解图书馆各学科的理论方法,掌握图书馆基础理论知识和必要的外语知识。随着计算机和网络技术在图书管理的应用和发展,学校图书管理员还应掌握计算机和网络等现代信息技术,以适应时间发展的要求,为广大师生提供优质的服

务。

收藏 分享

第15篇:图书管理系统

课程设计任务书

一、题目:

二、课程设计班级及小组成员:

三、课程设计起止时间:

四、原始数据及主要任务:

1、系统分析与设计:对系统进行调研,详细分析系统,设计出图书管理系统网络版实现的技术方案;

2、设计实现系统的关键技术:建立数据库并连接,实现各项信息的自动更新;系统动态管理功能;系统登陆、维护。

3、系统实现:实现系统功能;实现系统连接及测试等工作;

4、课设报告:按照书写格式要求,完成报告书写。

五、技术要求:设计一个实用的图书管理系统,完成读者登记、购入新书、读者借还书、图书注销、咨询等功能。读者登记:制定读者卡片,包括读者的具体信息(读者编号,姓名,学院,专业,年纪等),写入读者文件中。购入新书:制定图书卡片,包括分类目录号、流水号(唯一)书名、作者、内容摘要、价格和购书日期等信息,写入图书目录文件中。读者借还书:检查出无效的读者拒绝借书,否则检查该读者所借图书是否超过最大限制数以及有未归还的过期图书,有拒绝借书。查找该图书还有则借出,登记图书分类号、读者号和借阅日期等。读者还书时,根据流水号,从借书文件中读出有关记录,表明还书日期,如果图书过期,则处以罚款,并打印罚款单。图书注销:对无价值的和过时的图书要注销。咨询功能:查询某位读者、某种图书和全局图书。打印功能:打印读者和图书情况统计表。

学生(签字):指导教师(签字):系 主 任(签字):院 长 (签字):

第16篇:图书管理心得体会

图书管理心得体会

时间过得真快,不知不觉已经在文学部图书管理员的位置上工作一个多月了,总体感觉还是不错的。

刚开始觉得做图书馆工作只要整整书就行了,但后来才发现并没有自己想的那么简单,馆内的藏书数量很大,同一类书又有很多不同的版本,需要在书架上耐心的查找。听工作人员说她们刚来时需要一个月的训练才能迅速的找到书的位置。而且由于一些读者在翻阅书籍后没有放回原位,或者在借阅时随便找个位置插进去,导致部分书籍位置错误,造成图书馆管理的困难。图书馆内还时常有些不和谐的现象,例如有的同学没有使用代书板,有的大声说话,这些都需要我们去注意,关键是促成同学们养成良好的借阅习惯。

我更加了解到图书馆对于培养读书人的重要性,同时也认识到读书对于培养我们自身文化素养的重要意义。正如歌德所说:“读一本好书,就是和许多高尚的人谈话。”在工作之余我最开心的就是可以饱读藏书,很高兴可以在这里学习实践,但要真正成为一名合格的图书馆人我要学的还有很多。

我在图书馆作了为期一个半月的实践,在“图书馆的普通读者”和“图书馆实习生”两角色的交叉和转换中,对这座朝夕相处的精神食堂有了更深的认识。 在这次实践中,我更加了解到图书馆对于培养读书人的重要性。在现代社会,图书馆无疑是最能提升我们大学生人文素质的地方。我们除了接受学校推广加强人文素质教育以外,也要学会与人相处,增强团队精神以及对自然的亲和力等,因此,我们更要充分利用图书馆资源来提高自身的人文素质。

在现今社会,招聘会上的大字板都总写着“有经验者优先”,可是还在校园里的我们这班学子社会经验又会拥有多少呢?为了拓展自身的知识面,增加个人在社会竞争中的经验,锻炼和提高自己的能力,以便在以后毕业后能真正的走向社会,并且能够在生活和工作中很好地处理各方面的问题。学校是一个小社会,但我总觉得校园里总少不了那份纯真。而这个暑假的社会实践是丰富而又有意义,一些心得和体会让人感到兴奋,但却决不仅用兴奋就能描述的,因为这是一种实实在在的收获,是对有经验者优先的感悟

实习中,更让我明白了文明图书馆的建设不只是馆员努力的过程,更是与读者作为不断互动的过程。平日书厅工作人员对咨询的耐心回答,令我心愉神悦;当我作为实习生在台上为同学办理借书手续时,同学对我劳动的一声轻轻的谢谢,或是一缕浅浅的微笑,都让我如沫春风;可见,文明是我们彼此尊重彼此理解行为的点点滴滴,当这些点点滴滴都成为我们自然而然的习惯的时候,一个春风伴书香的环境就在我们身边。

第17篇:图书管理自查报告

图书管理自查报告

图书室是学校的重要组成机构,是学校的信息中心和知识传播的媒体中心,是课堂教育的延伸和课堂教育的基地,是全校师生吸取知识的海洋。作为一名图书管理员,必须树立为教学、为师生服务的思想,按时开放图书室,努力做好图书报刊管理工作,现将图书管理工作汇报如下:

一、基本情况

根据学校领导的安排,由我担任学校图书管理工作。我校图书室藏书量20000多册,人均拥有图数量十多册。学校为教师订阅了多种报刊杂志,教师自行订阅杂志每人不少于1种。丰富的图书、报刊、杂志为教师的教育教学工作、教师自身专业发展提供了优质的保障,更为丰富学生的课外生活,滋养学生的精神世界创设了良好的条件。

二、管理工作

1、听从学校安排,积极健全各种管理制度,扎扎实实为师生阅读提供良好的服务,按时开放图书室,努力做好图书、报刊管理工作,营造较好的书香氛围。

2、学习管理学,逐步建立科学的管理制度,认真细致并及时做好图书登记造册工作,教育学生自觉爱护书刊,取放有序,不准在图书上标点、画线、撕剪或污损,妥善保管,以防遗失,如有违反,按有关规定给予处罚。

3、密切配合学校的教育教学工作,注意了解图书出版信息,根

据各科教和学的需要,不断充实图书,及时做好新书登记造册和分类编目工作。

4、严格执行借书规格,使之流通迅速,充分发挥图书作用。

5、加强工作责任心。及时修补损坏的书报、杂志,做好图书保藏工作,图书室保持清洁,经常通风,防止霉蛀,并做好安全防火工作。

三、书刊利用

为营造良好的读书氛围,组织全体师生开展捐书活动,通过捐书活动,教育学生爱护图书。分享图书。组织学生举办课外阅读知识竞赛,促进了学生的阅读能力,提高了学生的写作水平,开拓了学生的视野。此外,还定期开展一些课外知识竞赛,古诗词背诵活动。丰富多彩的读书活动激活了学生的求知欲;并让学生在读书中获得了知识的体验和愉悦。平时组织学生积极参加县精神文明建设活动,扎实落实上级有关读书征文活动。

四、存在问题及改进措施

图书室为学生的阅览营造了良好的读书氛围,在激发学生的阅读兴趣方面起到了较好的促进作用,加上规范自主、有序的管理,相关活动的推波助澜,保证了我校图书室的利用率,使图书室起到了应有的资源共享作用。

1、加强硬件设施的配备,学校积极扩建图书角和图书室的面积,增加图书量以及订阅的杂志量。

2、推进电子管理网络化。目前,我校的电子管理模式几乎为零,

如果能将管理模式做得更开放一些,让图书室现有存书和借阅状态在校园网公开,使全体师生能及时获取信息,那么必将促进图书的借阅,提高图书的利用率。

3、加强对师生的导读研究。为了提升我校图书室管理品味,必须在规范管理的过程中发现问题,树立问题意识,用课题研究的态度来革新图书管理理念,在开展课外阅读的研究中,在激发学生的阅读兴趣,提高学生的阅读水平等方面积累经验,并加强对学生看什么书、怎样看书、看书后该做什么等方面加以指导与研究。

图书管理员: 2015年12月2日

第18篇:图书管理系统

七个文件

1. book.txt存放书籍

2.borrower.txt存放借阅信息

3.chenwen.txt 存放开始信息

4. mima.txt存放密码 5.qianyan.txt前言

6.student.txt存放学生信息

7.yuyue.txt 存放预约信息

#include #include #include void guanliyuan(); void youke(); typedef struct borrower{ struct borrower *next; struct borrower *front; int book; int stu;

int times;

int sum; }Borr; typedef struct stus{ int numbers; char mark[40];

char name[40];

char xueyuan[40];

int sum;

struct stus *next;

struct stus *front; }Stus; typedef struct books{ struct books *front; int numbers; char name[40]; char author[40]; char type[40]; char publisher[40]; int sum; int cun; struct books *next; }Books; void chenwenxie4(); void chenwen(); void time(); void time1(); void fangkuang(); void printstudent1(Stus *head); Borr* buildborrowerlist(); Books* buildbookslist(); Stus* buildstudentlist(); Books* insertbook(Books *head1,Books *pa); Stus* insertstudent(Stus *head2,Stus *pb); Borr* insertborrower(Borr *head3,Borr *pc); Books* chenwensousou11(Books* head11,int num11); Books* chenwensousou12(Books* head12,char name12[]); Books* chenwensousou13(Books* head13,int num13); Books* chenwensousou15(Books* head22,char name22[]); Stus* chenwensousou21(Stus* head21,int num21); Stus* chenwensousou22(Stus* head22,char name22[]); Stus* chenwensousou23(Stus* head23,int num23); Borr* chenwensousou31(Borr* head31,int num31); Borr* chenwensousou32(Borr* head32,int num32); Borr* chenwensousou33(Borr* head33,int num33); Borr* chenwensousou34(Borr* head34,int num34); Books* deletebook1(Books *head,int num); Stus* deletestudent1(Stus *head,int num); Borr* deleteborrower1(Borr *head,int num); Borr* deleteborrower2(Borr *head,int num); Books* booksorting11(Books *head); Books* booksorting12(Books *head); Stus* studentsorting21(Stus *head); Stus* studentsorting22(Stus *head); Borr* borrowersorting31(Borr *head); Borr* borrowersorting32(Borr *head); Borr* borrowersorting33(Borr *head); Books* chenwensousou14(Books* head12,char type[]); void printbook(Books *head); void printborrower(Borr *head); void chenwendu1(Books *head); void chenwendu2(Stus *head); void chenwendu3(Borr *head); Books* chenwenxie1(); Stus* chenwenxie2(); Stus* chenwenxie22(); Borr* chenwenxie3(); Borr* yuyuexie(); void yuyuedu(Borr *head); Books bookcreat(); Stus studentcreat(); Borr borrowercreat(); void time2(); void qingkong(); void qingkong1(); void qingkong2(); void qingkong3(); int yanzheng(Books* head,int num); int yanzheng1(Stus* head,int num); int yanzheng2(Borr* head,int num); int yanzheng3(int num); void bianli(Books *head1,Stus *head2,Borr *head3); void sousuo(Books *head1,Stus *head2,Borr *head3); void paixu(Books *head1,Stus *head2,Borr *head3); void mimadu(char a[]); void sousuo1(Borr *headborrower); char* mimaxie(); void qingkong4(); void tishi1(); void tishi2(); int main() { int n=0,i; char choice=3,ch[40],ch1[3]=\"是\",cw; printf(\"████████████▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉█▉\\n\"); time();

printf(\"█┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓█\\n\"); time();

printf(\"█┃******************欢迎进入河南工业大学图书管理系统********************* ┃▉\\n\"); time();

printf(\"█┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛█\\n\"); time();

printf(\"████████████▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉██\\n\");

for(i=0;i

time(); system(\"cls\"); chenwen(); chenwenxie4(); while(1){

scanf(\"%s\",ch);

if(strcmp(ch,ch1)==0)

break;

else{

system(\"cls\");

printf(\"████████████▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉█▉\\n\");

printf(\"█┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓█\\n\");

printf(\"■┃〓〓〓〓〓〓〓对不起,你尚未同意该协议,不能使用该系统〓〓〓〓〓〓〓〓〓┃█\\n\");

printf(\"█┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛█\\n\");

printf(\"█ ▓▓▓▓▓▓▓▓▓▓我已阅读并同意该协议?(是/否)▓▓▓▓▓▓▓▓▓▓▓▓ ▉\\n\");

printf(\"████████████▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉█▉\\n\");

} } getchar(); system(\"cls\"); while(n==0){ printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\"); printf(\" ┃ ▼▲▼▲▼▲▼▲▼欢迎进入河南工业大学图书管理系统 ▼▲▼▲▼▲▼▲▼

┃\\n\"); printf(\" ┣━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━┫\\n\"); printf(\" ┃

★(0)退出

★(1)管理员登录

★(2)学生登录

┃\\n\"); printf(\" ┣━━━━━━━━━━━┻━━━━━━━━━━━━━┻━━━━━━━━━━┫\\n\"); printf(\" ┃

▂▃▄▅▆▇█▉▊▋▌●●● 请输入选择●●●▌▋▊█▉▇▆▅▄▃▂

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice)&&choice>=\'0\'&&choice

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice){

case \'0\':system(\"cls\");

chenwen();

return 0;

case \'1\':guanliyuan();

break;

case \'2\':youke();

break;

}

}

else{

tishi2();

while(choice!=\'\\n\'){

scanf(\"%c\",&choice);

}

} } printf(\"████████████▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉█▉\\n\"); time();

printf(\"█┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓█\\n\"); time();

printf(\"█┃******************谢谢使用河南工业大学图书管理系统********************* ┃▉\\n\"); time();

printf(\"█┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛█\\n\"); time();

printf(\"████████████▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉██\\n\");

for(i=0;i

time(); system(\"cls\"); return 0; } void guanliyuan() {

char choice,choice1,choice2,cw;

int f=1; int n=0,j=3,l=0,a=0,g=0;

char *ppp=(char *)malloc(40*sizeof(char)); Books *headbook=chenwenxie1(),*pa=NULL,*book; Stus *headstudent=chenwenxie2(),*pb=NULL,*stu; Borr *headborrower=chenwenxie3(),*pc=NULL,*headyuyue=yuyuexie(),*yu; char p[40]; p[0]=\'4\',p[1]=\'3\',p[2]=\'1\',p[3]=\'5\',p[4]=\'c\',p[5]=\'w\';

ppp=mimaxie(); system(\"cls\"); printf(\"

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\"); printf(\"

┃◆◆◆◆◆◆◆◆◆◆◆◆欢迎管理员登陆◆◆◆◆◆◆◆◆◆◆◆◆┃\\n\"); printf(\"

┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\"); printf(\"

┃▁▂▃▄▅▆▇█▉▊▋▌▌请输入密码▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\"); printf(\"

┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\"); printf(\"

┃ ▓▓▓▓▓▓▓▓▓▓★你一共有3次机会★▓▓▓▓▓▓▓▓▓▓▓┃\\n\"); printf(\"

┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

g=0;

while(n==0){

scanf(\"%s\",p+6);

if(strcmp(ppp,p)==0){

getchar();

l=0;

system(\"cls\");

while(1){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃ ★(0)返回上级 ★(1)创建列表 ★(2)插入(借还) ★(3)删除(借还) ★(4)遍历

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(5)排序

★(6)搜索

★(7)修改密码

★(8)保存

★(9)清空文件

┃\\n\" );

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▉▉▉▉▉▉▉▉▉▉▉▉▉●●●请输入选择●●●▉▉▉▉▉▉▉▉▉▉▉▉┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice)&&choice>=\'0\'&&choice

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice){

case \'0\':

system(\"cls\");

break;

case \'1\':{

system(\"cls\");

while(n==0){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(0)返回上级

★(1)创建图书链表 ★(2)创建学生链表 ★(3)创建借阅链表

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▉▉▉▉▉▉▉▉▉▉▉▉▉●●●请输入选择●●●▉▉▉▉▉▉▉▉▉▉▉▉┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice1)&&choice1>=\'0\'&&choice1

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice1){

case \'0\':

system(\"cls\");

break;

case \'1\':headbook=buildbookslist();

g=1;

break;

case \'2\':headstudent=buildstudentlist();

g=1;

break;

case \'3\':headborrower=buildborrowerlist();

g=1;

break;

}

}

else{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓对不起,您的输入有误▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

while(choice1!=\'\\n\'){

scanf(\"%c\",&choice1);

}

}

if(choice1==\'0\'){

break;

}

}

}

break;

case \'2\': {

system(\"cls\");

while(n==0){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(0)返回上级

★(1)插入图书信息 ★(2)插入学生信息

★(3)插入借阅信息 ┃\\n\");

printf(\" ┃________________________________________________________________________┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▉▉▉▉▉▉▉▉▉▉▉▉▉●●●请输入选择●●●▉▉▉▉▉▉▉▉▉▉▉▉┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice1)&&choice1>=\'0\'&&choice1

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice1){

case \'0\':

system(\"cls\");

break;

case \'1\':{

system(\"cls\");

if(headbook==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓图书链表为空,请先创建图书链表〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

else{

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃████████████请输入你要插入的图书信息████████████┃|\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★1.编号

★2.书名

★3.作者

★4.类型

★5.出版社

★(6)库存

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((pa=(Books *)malloc(sizeof(Books)))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

while(scanf(\"%d\",&pa->numbers)&&scanf(\"%s\",pa->name)&&scanf(\"%s\",pa->author)&&scanf(\"%s\",pa->type)&&scanf(\"%s\",pa->publisher)&&scanf(\"%d\",&pa->cun)){

getchar();

system(\"cls\");

headbook=insertbook(headbook,pa);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓恭喜你,插入成功▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

l=1;

break;

}

if(l==0){

tishi2();

getchar();

}

}

l=0;

break;

}

case \'2\':{

if(headstudent==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

██████████学生链表为空,请先创建学生链表██████████ ┃\\n\");

}

else{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃████████████请输入你要插入的学生信息████████████┃|\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★1.学号★

★2.姓名★

★3.学院★

★4.身份证★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((pb=(Stus *)malloc(sizeof(Stus)))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

while(scanf(\"%d\",&pb->numbers)&&scanf(\"%s\",pb->name)&&scanf(\"%s\",pb->xueyuan)&&scanf(\"%s\",pb->mark)){

getchar();

stu=chenwensousou21(chenwenxie2(),pb->numbers);

if(stu!=NULL){

free(pb);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓对不起,该学号已存在▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

l=1;

system(\"pause\");

system(\"cls\");

break;

}

headstudent=insertstudent(headstudent,pb);

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓恭喜你,插入成功▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

l=1;

break;

}

if(l==0){

tishi2();

getchar();

}

}

l=0;

break;

}

case \'3\':{

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

██████████借阅链表为空,请先创建借阅链表██████████ ┃n\");

}

else{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃████████████请输入你要插入的借阅信息████████████┃|\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★★1.学号★★

★★2.书编★★

★★3.时间★★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃***********请注意:(时间格式 年月日 比如1992年08月13日为920813)**********┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((pc=(Borr *)malloc(sizeof(Borr)))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

while(scanf(\"%d\",&pc->stu)&&scanf(\"%d\",&pc->book)&&scanf(\"%d\",&pc->times)){

if(yanzheng2(chenwenxie3(),pc->book)==0){

free(pc);

break;

}

stu=chenwensousou21(chenwenxie2(),pc->stu);

if(stu==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓对不起,该学号不存在▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

free(pc);

system(\"pause\");

system(\"cls\");

break;

}

if(chenwensousou11(chenwenxie1(),pc->book)==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓对不起,该书编不存在▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

free(pc);

system(\"pause\");

system(\"cls\");

break;

}

book=chenwensousou11(chenwenxie1(),pc->book);

book->cun--;

getchar();

if(headyuyue!=NULL)

yu=chenwensousou32(headyuyue,pc->book);

if(yu!=NULL&&headyuyue!=NULL){

headyuyue=deleteborrower1(yuyuexie(),pc->book);

if(headyuyue!=NULL)

yuyuedu(headyuyue);

else{

qingkong4();

}

}

headborrower=insertborrower(headborrower,pc);

if(headbook!=NULL)

chenwendu1(headbook);

if(headborrower!=NULL)

chenwendu3(headborrower);

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓恭喜你,插入成功▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

l=1;

break;

}

if(l==0){

tishi2();

getchar();

}

}

l=0;

break;

}

}

}

else{

tishi2();

while(choice1!=\'\\n\'){

scanf(\"%c\",&choice1);

}

}

if(choice1==\'0\'){

break;

}

}

}

break;

case \'3\':

system(\"cls\");

{

while(n==0)

{

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃████████████请输入你要删除的借阅信息████████████┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃ ★(0)返回上级

★(1)删除图书信息

★(2)删除学生信息

★(3)删除借阅信息 ┃\\n \");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▉▉▉▉▉▉▉▉▉▉▉▉▉●●●请输入选择●●●▉▉▉▉▉▉▉▉▉▉▉▉┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice2)&&choice2>=\'0\'&&choice2

{

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice2)

{

case \'0\':

system(\"cls\");

break;

case \'1\':

{

if(headbook==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓图书链表为空,请先创建图书链表〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

else

{

system(\"cls\");

while(n==0)

{

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃━━━━━━━━━━━请输入你要删除的图书信息的━━━━━━━━━━━━┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★0.返回上级

★1.编号

★2.书名

★3.位置

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▉▉▉▉▉▉▉▉▉▉▉▉▉●●●请输入选择●●●▉▉▉▉▉▉▉▉▉▉▉▉┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((pa=(Books *)malloc(sizeof(Books)))==NULL)

{

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

if(scanf(\"%c\",&choice1)&&choice1>=\'0\'&&choice1

{

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice1)

{

case \'0\':

system(\"cls\");

break;

case \'1\':

if(headbook==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入编号●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pa->numbers))

{

getchar();

pa=chenwensousou11(headbook,pa->numbers);

}

else

{

getchar();

pa=NULL;

}

break;

case \'2\':

if(headbook==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入书名●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%s\",pa->name))

{

getchar();

pa=chenwensousou15(headbook,pa->name);

}

else

{

getchar();

pa=NULL;

}

break;

case \'3\':

if(headbook==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入位置●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pa->sum))

{

getchar();

pa=chenwensousou13(headbook,pa->sum);

}

else

{

getchar();

pa=NULL;

}

break;

}

if(choice1==\'0\')

{

break;

}

if(pa==NULL)

{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓没有找到你想删除的信息〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

else

{

if(headbook==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃◆◆◆◆◆◆◆◆◆◆◆◆你要删除的信息是这些嘛?◆◆◆◆◆◆◆◆◆◆◆◆┃\\n\");

printf(\" ┣━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━┫\\n\");

printf(\" ┃

①编号┃

②书名┃

③作者 ┃\\n\");

printf(\" ┣━━━━━━━━━━━━╋━━━━━━━━━━━╋━━━━━━━━━━━┫\\n\");

printf(\" ┃ %21d ┃ %21s┃ %20s ┃\\n\",pa->numbers,pa->name,pa->author);

printf(\" ┣━━━━━━━━━━━━╋━━━━━━━━━━━╋━━━━━┳━━━━━┫\\n\");

printf(\" ┃

④类型┃

⑤出版社┃

⑥位置┃

⑦库存量┃\\n\");

printf(\" ┣━━━━━━━━━━━━╋━━━━━━━━━━━╋━━━━━╋━━━━━┫\\n\");

printf(\" ┃ %23s┃ %21s┃%10d┃%10d┃\\n\",pa->type,pa->publisher,pa->sum,pa->cun);

printf(\" ┣━━━━━━━━━━━━┻━━━━━━━━━━━┻━━━━━┻━━━━━┫\\n\");

printf(\" ┃

★(0)不删除,返回上级

★(1)删除

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice2)&&choice2==\'0\'){

system(\"cls\");

break;

}

if(choice2!=\'1\'){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓你的输入有误,此信息未删除〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

system(\"pause\");

system(\"cls\");

break;

}

headbook=deletebook1(headbook,pa->numbers);

if(headbook!=NULL)

chenwendu1(headbook);

if(headborrower!=NULL)

headborrower=deleteborrower1(headborrower,pa->numbers);

if(headborrower!=NULL)

chenwendu3(headborrower);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓恭喜你,删除成功〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

}

else

{

tishi2();

while(choice1!=\'\\n\')

scanf(\"%c\",&choice1);

}

}

}

break;

}

case \'2\':

{

if(headstudent==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

else

{

system(\"cls\");

while(n==0)

{

tishi1();

printf(\" ┃━━━━━━━━━━━━请输入你要删的学生信息的━━━━━━━━━━━┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★0.返回上级

★1.学号

★2.名字

★3.位置

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入选择●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((pb=(Stus *)malloc(sizeof(Stus)))==NULL)

{

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

if(scanf(\"%c\",&choice1)&&choice1>=\'0\'&&choice1

{

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice1)

{

case \'0\':

system(\"cls\");

break;

case \'1\':

if(headstudent==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入学号●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pb->numbers))

{

getchar();

pb=chenwensousou21(headstudent,pb->numbers);

}

else

{

getchar();

pb=NULL;

}

break;

case \'2\':

if(headstudent==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入名字●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%s\",pb->name))

{

getchar();

pb=chenwensousou22(headstudent,pb->name);

}

else

{

getchar();

pb=NULL;

}

break;

case \'3\':

if(headstudent==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入位置●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pb->sum))

{

getchar();

pb=chenwensousou23(headstudent,pb->sum);

}

else

{

getchar();

pb=NULL;

}

break;

}

if(choice1==\'0\')

{

break;

}

if(pb==NULL)

{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓对不起,没有找到你想删除的信息▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

}

else

{

if(headstudent==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃◆◆◆◆◆◆◆◆◆◆◆◆你要删除的信息是这些嘛?◆◆◆◆◆◆◆◆◆◆◆◆┃\\n\");

printf(\" ┣━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━┫\\n\");

printf(\" ┃

学号

姓名

学院

位置 ┃\\n\");

printf(\" ┣━━━━━━━━━╋━━━━━━━━━╋━━━━━━━━━━╋━━━━━┫\\n\");

printf(\" ┃%18d┃ %17s┃ %19s┃ %8d ┃\\n\",pb->numbers,pb->name,pb->xueyuan,pb->sum);

printf(\" ┣━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━━━┻━━━━━┫\\n\");

printf(\" ┃

★(0)不删除,返回上级

★(1)删除

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice2)&&choice2==\'0\'){

system(\"cls\");

break;

}

if(choice2!=\'1\'){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\"

┃▓▓▓▓▓▓▓▓▓▓▓你的输入有误,此信息未删除▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

system(\"pause\");

system(\"cls\");

break;

}

headstudent=deletestudent1(headstudent,pb->numbers);

if(headstudent!=NULL)

chenwendu2(headstudent);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓〓〓恭喜你,删除成功〓〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

}

else

{

tishi2();

while(choice1!=\'\\n\')

scanf(\"%c\",&choice1);

}

}

}

break;

}

case \'3\':

{

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

else

{

system(\"cls\");

while(n==0)

{

tishi1();

printf(\" ┃━━━━━━━━━━━━请输入你要删的借阅信息的━━━━━━━━━━━┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★0.返回上级

★1.学号

★2.书编

★3.位置

★4.时间

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃*******请注意:(时间格式 年月日 比如1992年08月13日 为 920813)*********┃ \\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入选择●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((pc=(Borr *)malloc(sizeof(Borr)))==NULL)

{

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

if(scanf(\"%c\",&choice1)&&choice1>=\'0\'&&choice1

{

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice1)

{

case \'0\':

system(\"cls\");

break;

case \'1\':

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入学号●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pc->stu))

{

getchar();

pc=chenwensousou31(headborrower,pc->stu);

}

else

{

getchar();

pc=NULL;

}

break;

case \'2\':

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入编号●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pc->book))

{

getchar();

pc=chenwensousou32(headborrower,pc->book);

}

else

{

getchar();

pc=NULL;

}

break;

case \'3\':

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入位置●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pc->sum))

{

getchar();

pc=chenwensousou33(headborrower,pc->sum);

}

else

{

getchar();

pc=NULL;

}

break;

case \'4\':

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

system(\"cls\");

tishi1();

printf(\" ┃

输入时间●●●●●●

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃********请注意:(时间格式 年月日 比如1992年08月13日 为 920813)********┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&pc->times))

{

getchar();

pc=chenwensousou34(headborrower,pc->times);

}

else

{

getchar();

pc=NULL;

}

break;

}

if(choice1==\'0\')

{

break;

}

if(pc==NULL)

{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓对不起,没有找到你想删除的信息▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

}

else

{

if(headborrower==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ 〓〓〓〓〓〓〓〓〓〓〓〓〓链表为空,请先创建链表〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

break;

}

if(choice1==\'2\'||choice1==\'3\'){

system(\"cls\");

pb=chenwensousou21(headstudent,pc->stu);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃◆◆◆◆◆◆◆◆◆◆◆◆你要删除的信息是这些嘛?◆◆◆◆◆◆◆◆◆◆◆◆┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

姓名:\");

printf(\"

%20s

┃\\n\",pb->name);

printf(\" ┣━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┳━━━━━━━┫\\n\");

printf(\" ┃

学号

书编

时间

位置

┃\\n\");

printf(\" ┣━━━━━━━━━╋━━━━━━━━━╋━━━━━━━━╋━━━━━━━┫\\n\");

printf(\" ┃ %16d ┃ %16d ┃ %14d ┃%13d ┃\\n\",pc->stu,pc->book,pc->times,pc->sum);

printf(\" ┣━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━┻━━━━━━━┫\\n\");

pa=chenwensousou11(headbook,pc->book);

printf(\" ┃

%20s

┃\\n\",pa->name);

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(0)不删除,返回上级

★(1)删除

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice2)&&choice2==\'0\'){

getchar();

system(\"cls\");

break;

}

if(choice2!=\'1\'){

getchar();

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓你的输入有误,此信息未删除〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

system(\"pause\");

system(\"cls\");

break;

}

getchar();

book=chenwensousou11(chenwenxie1(),pc->book);

book->cun++;

headborrower=deleteborrower2(headborrower,pc->stu);

if(headborrower!=NULL)

chenwendu3(headborrower);

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓〓〓恭喜你,删除成功〓〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

else{

pc=pc->next;

while(pc!=NULL){

headbook=chenwenxie1();

book=chenwensousou11(headbook,pc->book);

book->cun++;

system(\"cls\");

pb=chenwensousou21(headstudent,pc->stu);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃◆◆◆◆◆◆◆◆◆◆◆◆你要删除的信息是这些嘛?◆◆◆◆◆◆◆◆◆◆◆◆┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

姓名:\");

printf(\"

%20s

┃\\n\",pb->name);

printf(\" ┣━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┳━━━━━━━┫\\n\");

printf(\" ┃

学号

书编

时间

位置

┃\\n\");

printf(\" ┣━━━━━━━━━╋━━━━━━━━━╋━━━━━━━━╋━━━━━━━┫\\n\");

printf(\" ┃ %16d ┃ %16d ┃ %14d ┃%13d ┃\\n\",pc->stu,pc->book,pc->times,pc->sum);

printf(\" ┣━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━┻━━━━━━━┫\\n\");

pa=chenwensousou11(headbook,pc->book);

printf(\" ┃

%20s

┃\\n\",pa->name);

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(0)不删除,返回上级

★(1)删除

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%c\",&choice2)&&choice2==\'0\'){

getchar();

system(\"cls\");

pc=pc->next;

continue;

}

if(choice2!=\'1\'){

getchar();

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓你的输入有误,此信息未删除〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

pc=pc->next;

system(\"pause\");

system(\"cls\");

continue;

}

getchar();

headborrower=deleteborrower2(headborrower,pc->stu);

if(headborrower!=NULL)

chenwendu3(headborrower);

if(headbook!=NULL)

chenwendu1(headbook);

pc=pc->next;

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓〓〓恭喜你,删除成功〓〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

}

}

}

}

else

{

tishi2();

while(choice1!=\'\\n\')

scanf(\"%c\",&choice1);

}

}

}

break;

}

}

if(choice2==\'0\')

{

break;

}

}

else

{

tishi2();

while(choice2!=\'\\n\')

scanf(\"%c\",&choice2);

}

}

break;

}

case \'4\':

bianli(headbook,headstudent,headborrower);

break;

case \'5\':

paixu(headbook,headstudent,headborrower);

break;

case \'6\':

sousuo(headbook,headstudent,headborrower);

break;

case \'7\':

system(\"cls\");

while(1){

tishi1();

printf(\" ┃

请输入新密码●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

scanf(\"%s\",ppp);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

请再次输入密码●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

scanf(\"%s\",p);

if(strcmp(ppp,p)==0){

mimadu(p);

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓密码修改成功〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

getchar();

break;

}

else{

system(\"cls\");

tishi1();

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓两次密码不同,修改失败▓▓▓▓▓▓▓▓▓▓▓▓ ┃\\n\");

getchar();

while(1){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

★(0)返回上级

★(1)继续修改

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入选择●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

if(scanf(\"%c\",&choice2)&&choice2>=\'0\'&&choice2

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice2){

case \'0\':

system(\"cls\");

break;

case \'1\':

system(\"cls\");

break;

}

}

else{

tishi2();

while(choice2!=\'\\n\'){

scanf(\"%c\",&choice2);

}

}

if(choice2==\'0\'||choice2==\'1\'){

break;

}

}

if(choice2==\'0\'){

break;

}

}

}

break;

case \'8\':

system(\"cls\");

while(1)

{

tishi1();

printf(\" ┃

★(0).返回上级

★(1).保存图书信息

★(2).保存学生信息

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(3).保存借阅信息

★(4).保存所有信息

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入选择●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

if(scanf(\"%c\",&choice1)&&choice1>=\'0\'&&choice1

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice1){

case \'0\':

system(\"cls\");

break;

case \'1\':

system(\"cls\");

if(headbook==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓图书链表为空,请先创建图书链表〓〓〓〓〓〓〓〓〓〓〓 ┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

break;

}

chenwendu1(headbook);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓保存图书链表完成▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

system(\"pause\");

system(\"cls\");

break;

case \'2\':

system(\"cls\");

if(headstudent==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓学生链表为空,请先创建学生链表〓〓〓〓〓〓〓〓〓〓〓 ┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

break;

}

chenwendu2(headstudent);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓保存学生链表完成▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

system(\"pause\");

system(\"cls\");

break;

case \'3\':

system(\"cls\");

if(headborrower==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓借阅链表为空,请先创建借阅链表〓〓〓〓〓〓〓〓〓〓〓 ┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

break;

}

chenwendu3(headborrower);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓保存借阅链表完成▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

system(\"pause\");

system(\"cls\");

break;

case \'4\':

system(\"cls\");

if(headbook==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓图书链表为空,请先创建图书链表〓〓〓〓〓〓〓〓〓〓〓 ┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

}

else{

chenwendu1(headbook);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓保存图书链表完成▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

}

if(headstudent==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓学生链表为空,请先创建学生链表〓〓〓〓〓〓〓〓〓〓〓 ┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

}

else{

chenwendu2(headstudent);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓保存学生链表完成▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

}

if(headborrower==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓借阅链表为空,请先创建借阅链表〓〓〓〓〓〓〓〓〓〓〓 ┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

}

else{

chenwendu3(headborrower);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓保存借阅链表完成▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

}

system(\"pause\");

system(\"cls\");

break;

}

}

else{

tishi2();

while(choice1!=\'\\n\'){

scanf(\"%c\",&choice1);

}

}

if(choice1==\'0\')

break;

}

break;

case \'9\':

system(\"cls\");

qingkong();

break;

}

}

else{

tishi2();

while(choice!=\'\\n\'){

scanf(\"%c\",&choice);

}

}

if(choice==\'0\'){

break;

}

}

}

else{

tishi2();

j--;

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃ ▓▓▓▓▓▓▓▓▓▓▓▓★你还有%3d次机会★▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃\",j);

printf(\"

┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入密码●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

while(choice!=\'\\n\'){

scanf(\"%c\",&choice);

}

if(j==0){

system(\"cls\");

getchar();

return;

}

}

if(choice==\'0\'){

break;

}

} } void youke() { int n=0,l=0,xue=1; char choice,ppp[40],ch,pp[40],p[40],choice2,cw; Books *headbook=chenwenxie1(),*pa=NULL; Stus *headstudent=chenwenxie2(),*pb=NULL,*p1; Borr *headborrower=chenwenxie3(),*pc=NULL,*yu; Borr *headyuyue=yuyuexie(); system(\"cls\"); if(chenwenxie2()==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓对不起,学生现在不能登录▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

return; } while(xue!=0){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

★★(0).返回上级★★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入学号●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if(scanf(\"%d\",&xue)){

getchar();

if(xue==0){

system(\"cls\");

return;

}

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

★ ★ ★请输入登录密码(初始密码为身份证号码)

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

scanf(\"%s\",ppp);

getchar();

p1=chenwensousou21(chenwenxie2(),xue);

if(p1==NULL){

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓对不起,该学号不存在▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

continue;

}

if(p1->numbers==xue&&strcmp(ppp,p1->mark)==0){

break;

}

else{

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓★★密码错误★★▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

continue;

}

}

else{

system(\"cls\");

system(\"cls\");

scanf(\"%c\",&ch);

while(ch!=\'\\n\'){

scanf(\"%c\",&ch);

}

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓★★对不起,学号不能为字符,请输入数字★★▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

} } system(\"cls\");

while(n==0){

tishi1();

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃████████████████欢迎学生进入██████████████┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(0)返回上级

★(1)遍历

★(2) 搜索

★(3)排序

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★(4)借书预约

★(5)修改密码

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入选择●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

l++;

if(scanf(\"%c\",&choice)&&choice>=\'0\'&&choice

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice)

{

case \'0\':

system(\"cls\");

break;

case \'1\':

bianli(headbook,chenwenxie22(),headborrower);

break;

case \'2\':

sousuo(headbook,headstudent,headborrower);

break;

case \'3\':

paixu(headbook,headstudent,headborrower);

break;

case \'4\':

if(headyuyue==NULL){

yu=(Borr *)malloc(sizeof(Borr));

headyuyue=yu,yu->sum=0,yu->front=NULL,yu->next=NULL;

}

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃*****************************您享有的操作*******************************┃\\n\");

printf(\" ┃************************************************************************┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃█████████████请输入你要预约的信息█████████████┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★★1.书编★★

★★2.时间★★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃***********请注意:(时间格式 年月日 比如1992年08月13日为920813)**********┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

if((yu=(Borr *)malloc(sizeof(Borr)))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

yu=(Borr *)malloc(sizeof(Borr));

yu->stu=xue,yu->sum=headyuyue->sum+1;

while(scanf(\"%d\",&yu->book)&&scanf(\"%d\",&yu->times)){

if(chenwensousou11(chenwenxie1(),yu->book)==NULL){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓对不起,该书编不存在▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

free(pc);

system(\"pause\");

system(\"cls\");

break;

}

getchar();

headyuyue=insertborrower(headyuyue,yu);

yuyuedu(headyuyue);

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓恭喜你,预约成功▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃\\n\");

l=1;

break;

}

if(l==0){

tishi2();

getchar();

}

l=0;

break;

case \'5\':

system(\"cls\");

while(1){

tishi1();

printf(\" ┃

请输入新密码●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

scanf(\"%s\",pp);

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

请再次输入密码●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

scanf(\"%s\",p);

if(strcmp(pp,p)==0){

pb=chenwensousou21(headstudent,xue);

strcpy(pb->mark,p);

chenwendu2(headstudent);

system(\"cls\");

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓密码修改成功〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓┃\\n\");

getchar();

break;

}

else{

system(\"cls\");

tishi1();

printf(\" ┃▓▓▓▓▓▓▓▓▓▓▓▓▓两次密码不同,修改失败▓▓▓▓▓▓▓▓▓▓▓▓ ┃\\n\");

getchar();

while(1){

printf(\" ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\");

printf(\" ┃

★(0)返回上级

★(1)继续修改

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

请输入选择●●●●●●

┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\\n\");

if(scanf(\"%c\",&choice2)&&choice2>=\'0\'&&choice2

}

break;

}

}

else{

scanf(\"%c\",&cw);

if(cw!=\'\\n\'){

tishi2();

while(cw!=\'\\n\'){

scanf(\"%c\",&cw);

}

continue;

}

switch(choice2){

case \'0\':

system(\"cls\");

break;

case \'1\':

system(\"cls\");

break;

}

}

else{

tishi2();

while(choice2!=\'\\n\'){

scanf(\"%c\",&choice2);

}

}

if(choice2==\'0\'||choice2==\'1\'){

break;

} } if(choice2==\'0\'){

break; } }

tishi2();

while(choice!=\'\\n\'){

scanf(\"%c\",&choice);

}

}

if(choice==\'0\'){

break;

} } } Books* buildbookslist() { Books *head=NULL,*p,*tail,*begin; int n=sizeof(Books),num; if((begin=(Books *)malloc(n))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1); } head=begin,begin->front=NULL,begin->sum=0; if((p=(Books *)malloc(n))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1); } begin->next=p,p->front=begin, p->next=NULL; head=begin; p->sum=1; while(1){

system(\"cls\");

tishi1();

printf(\" ┃

★0.返回上级

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★1.编号

★2.书名

★3.作者

★4.类型

★5.出版社

★(6)库存

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

while(scanf(\"%d\",&num)==0){

getchar();

system(\"cls\");

tishi2();

tishi1();

printf(\" ┃

★0.返回上级

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★1.编号

★2.书名

★3.作者

★4.类型

★5.出版社

★(6)库存

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

}

if(num==0){

p->front->next=NULL,tail=p->front;

system(\"cls\");

getchar();

free(p);

return head;

}

if(yanzheng(head,num)){

if(scanf(\"%s%s%s%s%d\",p->name,p->author,p->type,p->publisher,&p->cun)){

p->numbers=num;

begin->sum++;

getchar();

tail=p;

if((p=(Books *)malloc(n))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(0);

}

tail->next=p,p->front=tail,p->next=NULL,p->sum=p->front->sum+1;

}

else{

tishi2();

getchar();

}

} } getchar(); return head; } Stus* buildstudentlist() { Stus *head,*tail,*p,*begin; int num; int n=sizeof(Stus); if((begin=(Stus *)malloc(n))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1); } head=begin;

if((p=(Stus *)malloc(n))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1); } begin->sum=0,begin->front=NULL; begin->next=p,tail=p,p->next=NULL,p->front=begin; head=begin;

p->sum=1; while(1){

system(\"cls\");

tishi1();

printf(\" ┃

★0.返回上级★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★1.学号★

★2.姓名★

★3.学院★

★4.身份证 ★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

while(scanf(\"%d\",&num)==0){

getchar();

system(\"cls\");

tishi2();

tishi1();

printf(\" ┃

★0.返回上级★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃

★★1.学号★★

★★2.姓名★★

★★3.学院★★

┃\\n\");

printf(\" ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫\\n\");

printf(\" ┃▲▼●◆■★▼▲★■◆请依次输入(用空格隔开)▍▌▋▊▉█▇▆▅▄▃▂▁┃\\n\");

printf(\" ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\");

}

if(num==0){

p->front->next=NULL,tail=p->front;

free(p);

getchar();

system(\"cls\");

return head;

}

if(yanzheng1(head,num)){

if(scanf(\"%s%s%s\",p->name,p->xueyuan,p->mark)){

p->numbers=num;

begin->sum++;

getchar();

tail=p;

if((p=(Stus *)malloc(n))==NULL){

printf(\"Not able to allocate memory.\\n\");

exit(1);

}

tail->next=p,p->front=tail,tail=p,p->next=NULL,p->sum=p->front->sum+1;

}

else{

tishi2();

getchar();

}

} } getchar(); return head; } Borr* buildborrowerlist() { Borr *head,*tail,*p,*begin; Stus *stu; Books *book; int n=sizeof(Borr),num; if((begin=(Borr *)malloc(n))==NULL) {

printf(\"Not able to allocate memory.\\n\");

exit(1);

第19篇:图书管理计划

2011---2012第一学期图书管理计划

一、指导思想

本学年为了迎接省市图书管理的合格验收,根据学校工作实际,尽可能地开放学校图书室充分发挥学校的图书资源,丰富师生的学习、生活。

二、具体工作措施

1、本学期开学利用两周时间全面清理学校图书,并对图书室进行一次大扫除。

2、利用两周时间对学校图书进行归类清理并认真做好各项登记造册。

3、清理完毕每周

一、五按时开放图书室,面向师生服务,继续安排人员弥补前两年的登记造册,完善相关表册

4、开放期间每周

一、五各年段安排教师或班主任到图书室办理借还手续,因图书工作人员不专职故不向每个师生开放,造成图书借还管理混乱。

5、每周对图书实进行一次卫生打扫,图书清理,放置规范上架。

6、期末进行全面清理,要求如数归还所有图书,对破损图书进行修补,不能修补的报损。

茅坝九年制学校图书室

2011-9-2

第20篇:图书管理系统

经过大学四年理论课程的学习,以及校内校外的实践,极大的丰富了自身的理论基础,并且也具备了一些处理简单问题的能力,但即将踏上社会的我深知这还远远不够,因此我利用了毕业设计的机会,在老师的指导下去完成一个具有挑战性的,其具体应用及社会服务相结合的项目,深知通过对它的开发,将对我的能力有更高层次的突破。

开发软件的一个目的是针对目前普遍的图书管理系统存在的功能不全,操作复杂,系统要求高等一系列问题,而设想一个具有个性化的图书管理系统。该管理系统与MIS系统相联系,在图书馆内部建成可靠,方便,并且功能齐全的MIS系统。从而在图书馆对新旧书的反应;对书籍借阅的管理能力;对读者和图书馆工作人员的管理能力;对图书馆管理人员软件操作的适应时间和操作感觉这些方面都将大大的提高。当然对该软件的态度是渴望获得显著的社会效益。

开发软件的另一个目的是使其具有强大的实用价值,即它可以满足中小型图书馆的借阅与管理的需要。在一般的学校与科研机构,其下属的很多分支的研究中心,试验中心,各个学院,它们往往都有着自己的规模较大的图书资料室。而这些图书资料室由于本身规模不大因此其对书籍或资料的管理模式一般都比较旧,而且在没有能力也没有必要引进大型的图书馆管理软硬件的基础上,寻求一个针对中小型图书资料室的管理软件是必要的。

这种管理软件对硬件的要求很低,一般有一个比较简单的服务器与PC机组成的网络即可,再加上使用比较廉价、性能不错的软件,这样就可以以较低的成本来实现一个足够使用的功能,而这种模式也正满足了那种中小型资料室,图书馆的要求。但是目前对这种管理软件的开发还处于一种比较原始的阶段。开发者往往都是出于资金和时间的顾虑使用比较陈旧的技术,并且各为己见,并且很少涉及网络。可是当今是一个网络化的社会,像资料室,图书馆这样的信息机构不能与网络联系起来岂不可惜,再加上如今单机版的图书管理软件多如牛毛,去开发一个类似的软件无疑是一种在时间上、精神上和资源上的极大浪费。所以出于多方面的考虑觉得有必要为这种有需要的中小型图书馆,资料室开发一种基于网络的图书资料管理软件。

项目的具体目的:

1.实现图书馆对外借书,还书的简易操作,提高图书馆对最平凡工作的效率。

2.实现图书馆对所藏图书的按类别,书名等多方面的查询,最大的方便读者和图书馆工作人员对所需图书的查询。

3.建立图书馆外借读者数据库,方便工作人员对读者进行有效管理。

4.建立图书馆工作人员数据库,限定每个工作人员对软件操作的权限,最大限度的保护数据库。

5.实现图书馆对新书入库,旧书注销的简单处理,并且建立书籍档案,方便进货。

实现方法:

后台数据库支持:采用PowerBuild 8.0,主要是由于PowerBuild 8.0是美国Sybase公司PowerSoft的新一代数据库应用开发工具,它能够设计传统的高性能、基于客户/服务器体系结构的应用系统,也能够用于开发基于Internet的应用系统。它具有容易使用,便于维护的优点,使使用部门可以节省培训费用,加快磨合周期,同时有利于操作人员的培训,是对数据的安全性要求不是特别高,同时又有比较大的数据量的单位的较好选择。作为PowerBuild 7.0的后续版本,PowerBuild 8.0 扩展了 PowerBuild 7.0 版的性能、可靠性、质量和易用性。PowerBuild 8.0增加了几种新的功能,由此成为数据仓库和电子商务应用程序的优秀数据库平台。

数据的安全性:

由于该系统统计管理单位的各种书目,人员数据及出入库数据,因此需要保证数据的可靠性和安全性。对于软件方面,采用手动或定时对数据库采取备份,使由于数据破坏所产生的损失降到最低,同时便于恢复。 总体功能结构:

根据图书馆的基本要求和功能目标,总体框架是建立二个功能系统和二个支持系统。二个功能系统是:1.图书馆管理系统(下称1号系统);2.外部读者查询系统(下称2号系统)。二个支持系统是:1.网络支持系统(WAN和LAN);2.数据库支持系统。

需求分析:

A:图书馆管理系统即1号系统是该系统软件的重要内容之一,该子系统为图书馆的库存书籍的动态调整提供了决策依据,有利于及时对有大量需求的新书进行订货入库。它的主要功能包括:新书入库,旧书注销,借书,还书,馆内图书详细信息,图书查询,读者管理,馆内图书统计,读者信息管理,图书馆工作人员权限管理,名称设计,数据库备份等功能。

下面是2号系统的主要功能的简单描述:

1.图书管理(图—3系统流图):

这是图书馆最重要的模块之一,它将对图书馆中的书籍进行管理操作,所有的原始数据输入都是在这里实现的,有了这里的数据输入,才能开始以后的诸如借书、还书等操作。

。新书入库管理:

该功能允许用户输入图书单,在输入过程中,程序自动生成图书单编号以加以区分两次不同的入库书单,同时程序也检查输入的合法性,并自动记录当日入库的图书。

。当日入库图书查询

该功能允许用户对当日的入库书单针对不同条件进行查询,并且提供二次修改,避免出错。

。旧书注销:

该功能允许用户输入注销单,在输入过程中,程序自动生成注销单编号以加以区分两次不同的注销书单,并且自动记录当日注销的图书。

。当日注销图书查询:

该功能允许用户对当日的注销单针对不同条件进行查询,并且提供还原,避免出错。

2.业务管理:

这是图书馆使用频率最高的模块,因此他在功能上应该直观明确,在操作上应该简单易用。

。图书借阅:

该功能要求用户输入图书编号或者图书条码,并且检查输入合法性,然后程序动态生成该书的详细信息;再输入借书证号,并且检查输入合法性,然后程序动态生成该读者的详细信息;系统记录借书的经手人,最后由借书按钮实现操作。

。图书归还:

与图书借阅类似,追加图书超期罚款功能,自动根据预设值计算出罚款金额。

3.人员档案管理:

这是针对读者和图书馆工作人员而设计的一个人士管理模块,它将完整的记录读者的信息,以及图书馆工作人员的信息,并且他还具有限制图书馆工作人员操作权限的功能,最大限度的保证了数据的安全。 。读者管理:

记录读者的详细信息,并提供增加、撤除、查询等操作。

。图书馆工作人员管理:

在读者管理子模块的基础上增加权限管理功能,保证数据安全。

4.数据库备份:

这是一个涉及到安全问题的重要模块,它可以保证数据库的安全,防止因外界的突发事件所造成的损失,避免因数据流失而重复输入的困扰。该功能分为自动备份,和手动立即备份两部分,满足用户需要。

5.名称设计:

这是一个很具个性化的功能,实现很简单,但非常吸引人,你可以任意为你的管理系统命名,比如“杭州X中学图书管理系统”。

B:

外部读者查询系统,即2号系统,这是一个面向读者的综合查询系统,采用与管理系统相同的数据库,具有唯一的功能:查询。他可以按照读者的要求,用不同方法对所藏书籍进行查询,并能进行书名的模糊查询,还可以查询读者所借书的到期日,和观看读者本人的详细资料,力争最大的满足读者的需求。 性能要求:

对新书入库单,注销单的处理及查询;图书查询;借书还书速度应较快

登录仓库管理系统时应输入密码,以保证系统的安全性。

系统要有较强的兼容性,能在各种PC机上正常运行。在系统运行异常及数据文件损坏时能给出出错提示,保证系统的可靠性。

运行环境:

1.推荐配置:

cpu:Intel Pentium 以上

内存:64M

硬盘:100M空闲空间

2.支持软件:

操作系统:Windows98 , Windows2000 , WindowsMe.

本人开发进度计划:

2月-3月底:学习PowerBuilder8.0,SQL Sever2000技术,看文档和有关书籍。

4月-5月初:进行开发工具的选择与配置,准备开发环境,具体代码的编写。

图书管理与教育教学工作总结
《图书管理与教育教学工作总结.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
相关专题
点击下载本文文档