c语言课程设计 图书管理系统 高校教师人事管理系统.docx
《c语言课程设计 图书管理系统 高校教师人事管理系统.docx》由会员分享,可在线阅读,更多相关《c语言课程设计 图书管理系统 高校教师人事管理系统.docx(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图书借阅阅管理系系统图书借阅阅管理是是图书馆馆一个最最基本的的工作,这这里用CC语言的的知识设设计开发发一个简简单的图图书借阅阅管理系系统,系系统主要要实现图图书信息息和学生生信息的的管理,图图书查询询及图书书借阅管管理。系统设计计要求系统主要要实现以以下六个个功能:用户登登录。系系统用户户分为管管理员和和学生。管理员员登录时时必须输输入密码码,密码码正确才才能进入入系统;学生登登录时无无需密码码,输入入学号即即可。图书信信息管理理。图书书信息包包括:书书号、书书名、作作者、图图书分类类、出版版社、出出版时间间、单价价、总量量和库存存量。图图书信息息管理包包括:输输入图书书信息(从从键盘或或从
2、文件件)、保保存图书书信息、修改图图书信息息、增加加图书信信息、删删除图书书信息和和输出图图书信息息。学生信信息管理理。学生生信息包包括:学学号、姓姓名、借借书卡(借借阅标记记、书号号、借阅阅时间)。学生信信息管理理包括:输入学学生信息息(从键键盘或从从文件)、保存学学生信息息、修改改学生信信息、增增加学生生信息、删除学学生信息息和输出出学生信信息。图书查查询功能能。图书书查询分分为:按按书名查查询、按按作者查查询、按按图书分分类查询询、按出出版社查查询和按按出版时时间查询询。借书功功能。借借书时,先先判断学学生是否否有空闲闲的借书书卡,若若没有则则应输出出提示信信息;若若有空闲闲的借书书卡,
3、则则要求学学生输入入所借图图书的书书号,若若该书库库存量不不为0,则将将该书借借出,同同时在借借书卡上上记录该该书的书书号和借借阅时间间,并修修改该书书的库存存量。还书功功能。还还书时,先先检查学学生的借借书卡,若若借书卡卡都为空空,则不不能进行行还书操操作,若若有借书书卡不为为空,则则可以还还书,此此时要求求学生输输入所还还图书的的书号,将将对应借借书卡上上的记录录清零,并并修改该该书的库库存量。系统总体体设计1. 功功能模块块图用户登录管理模块图书借阅管理系统图书信息管理模块学生信息管理模块图书信息查询模块图书借阅管理模块系统功能模块图管理员登录学生登录输入图书信息保存图书信息修改图书信息
4、增加图书信息删除图书信息输出图书信息输入学生信息保存学生信息修改学生信息增加学生信息删除学生信息输出学生信息按书名查询按作者查询按图书分类查询按出版社查询按出版时间查询借书管理还书管理2. 数数据结构构设计系统共定定义了四四个结构构体类型型,包括括日期类类型、借借书卡类类型、图图书类型型和学生生类型,其其中在图图书类型型中要使使用日期期类型,而而在学生生类型中中要使用用日期和和借书卡卡类型,定定义如下下:typeedeff sttrucct ddatee /日日期类型型 shoort yeear; /年 shoort moonthh; /月 shoort daay; /日SDAATE;type
5、edeff sttrucct llibrraryy_caard /借书卡卡类型 Shoort fllag; /是否否借阅标标记 Chaar ISBBN220; /所所借图书书的书号号 SDAATE boor_ttimee; /借阅阅时间SLCCARDD;typeedeff sttrucct sstuddentt /学学生类型型 chaar numm155; /学号号 chaar namme220; /姓名名 SLCCARDD ccardd5; /借书卡卡(规定定每人最最多有55张)SSTTUD;typeedeff sttrucct bbookk /图书书类型 chaar ISBBN220; /
6、书号号 chaar boooknaame40; /书名名 chaar autthorr200; /作作者 chaar pubblissherr300; /出版社社 chaar boookcllasss200; /图书分分类 shoort tootall_nuum, stoock_numm; /总量量,库存存量 flooat prricee; /单价 SDAATE puubliish_timme; /出版版时间SBOOOK;系统定义义了两个个全局变变量数组组,分别别存放图图书信息息和学生生信息,因因数组大大小是固固定的,为为使用方方便在系系统中定定义两个个符号常常量,具具体定义义如下:#deff
7、inee BOOOKNNUM 10000 / BBOOKKNUMM为系统统允许的的最大图图书数量量#deffinee STTUDNNUM 1000 / SSTUDDNUMM为系统统允许的的最多学学生人数数SSTUUD stuudenntSSTUDDNUMM=0; /学生数数组,初初始化为为0SBOOOK boookBBOOKKNUMM=0; /图书书数组,初初始化为为03. 功功能模块块设计(1) maiin函数数的设计计:由于于图书信信息和学学生信息息都保存存在文件件中,系系统运行行的第一一个工作作是从文文件中将将图书信信息和学学生信息息读入到到内存数数组boook和和数组sstuddent
8、t中,在在读入信信息的过过程中同同时统计计出目前前图书的的数量和和学生的的人数,并并将数据据分别存存放在整整型变量量bn和sn中,bnn为图书书数量,sn为学生人数。如果bn=0或sn=0,系统会输出提示信息,让管理员输入图书信息和学生信息。然后系统会显示主菜单,用户必须登录后才能使用系统提供的各种服务。(2) 用户登登录管理理模块包包括2个函数数:MaanaggerLLogiin()和StuudenntLooginn(),该该模块由由maiin函数数调用。函数MaanaggerLLogiin()用来完完成管理理员登录录工作,首首先要求求管理员员用户输输入密码码,若密密码错误误,则直直接返回回
9、主菜单单界面;密码正正确时将将显示管管理员用用户的功功能菜单单,输入入数字可可执行相相应的功功能。函数SttudeentLLogiin()用来完完成学生生登录工工作,要要求学生生输入学学号,若若学号错错误则要要求学生生重新输输入学号号;输入入学号正正确则显显示学生生用户的的功能菜菜单,输输入数字字可执行行相应的的功能。(3) 图书信信息管理理模块包包括111个函数数:InnputtOneeboook()、LoaadBoookss()、SavveOnneboook()、SavveAlllboookss()、OriiginnalBBookk()、ModdifyyBoook()、AdddBoook(
10、)、DellBoook()、OuttputtOneeboook()、OuttputtAlllboooks()和OuttputtBriief ()。只有管管理员用用户可以以调用图图书信息息管理模模块。函数InnputtOneeboook()用来实实现从键键盘输入入一本图图书的全全部信息息。函数LooadBBookks()用来实实现从文文件“bbookk.daat”中中输入全全部图书书的信息息,并将将这些数数据存放放到内存存数组bbookk中。函数SaaveOOnebbookk()用用来实现现将一本本图书的的信息保保存到文文件“bbookk.daat”中中。函数SaaveAAllbbookks()
11、用来实实现将全全部图书书的信息息保存到到文件“bbookk.daat”中中。函数OrrigiinallBoook()用来实实现图书书信息的的初始化化,在程程序第11次运行行时必须须调用该该函数,输输入若干干本图书书的信息息,并将将这些信信息保存存在文件件中。该该函数是是通过循循环多次次调用IInpuutOnneboook()函数数实现多多本图书书信息的的输入,然然后调用用SavveAlllboookss()函函数将已已输入的的所有图图书的信信息保存存在文件件“boook.datt”中。函数MoodiffyBoook()用来来实现对对图书信信息的修修改,用用户首先先输入书书号,书书号错误误则输出
12、出提示信信息,要要求用户户重新输输入;书书号正确确则用户户可以选选择要修修改的数数据项对对图书信信息进行行修改(用用swiitchh结构实实现),一一本图书书的信息息修改完完毕后,调调用SaaveOOnebbookk()函函数,将将修改后后的信息息保存到到文件中中。然后后询问用用户是否否继续修修改其他他图书的的信息,用用户选择择y,则重重复上述述的修改改过程;用户选选择nn,则则结束函函数,返返回到管管理员菜菜单界面面。函数AdddBoook()用来来实现添添加图书书信息,通通过调用用InpputOOnebbookk()函函数,从从键盘输输入一本本图书的的信息,然然后将该该信息写写入文件件。然
13、后后询问用用户是否否继续添添加其他他图书的的信息,用用户选择择y,则重重复上述述过程;用户选选择nn,则则结束函函数,返返回到管管理员菜菜单界面面。函数DeelBoook()用来来实现删删除图书书信息,用用户首先先输入书书号,书书号错误误则输出出提示信信息,要要求用户户重新输输入;书书号正确确则会先先输出该该书号对对应图书书的信息息,然后后询问用用户是否否确定要要删除该该书的信信息,用用户选择择y才能真真正删除除该书信信息。最最后询问问用户是是否继续续删除其其他图书书的信息息,用户户选择y,则则重复上上述过程程;用户户选择n,则则结束函函数,返返回到管管理员菜菜单界面面。函数OuutpuutO
14、nneboook()用来来实现输输出一本本图书的的全部信信息。函数OuutpuutAlllboookss()通通过多次次调用OOutpputOOnebbookk()函函数来实实现输出出全部图图书的信信息。函数OuutpuutBrrieff()用用来实现现以列表表方式输输出全部部图书的的简要信信息,简简要信息息包括:书号、书名、作者和和总量。(4) 学生信信息管理理模块包包括100个函数数:InnputtOneestuud()、LoaadSttudss()、SavveOnnesttud()、SavveAlllsttudss()、OriiginnalSStudd()、ModdifyyStuud()
15、、AdddStuud()、DellStuud()、OuttputtOneestuud()和OuttputtAlllstuuds()。管理员员用户可可以使用用学生信信息管理理模块的的全部功功能,学学生用户户只能使使用该模模块中的的一个功功能,即即OuttputtOneestuud()函数(输输出一个个学生的的信息)。学生信息息管理模模块中函函数的实实现方法法与图书书信息管管理中的的类似,以以下仅作作简单说说明。函数InnputtOneestuud()用来实实现从键键盘输入入一个学学生的信信息。函数LooadSStudds()用来实实现从文文件“sstudd.daat”中中输入全全部学生生的信息息
16、,并将将这些数数据存放放到内存存数组sstuddentt中。函数SaaveOOnesstudd()用用来实现现将一各各学生的的信息保保存到文文件“sstudd.daat”中中。函数SaaveAAllsstudds()用来实实现将全全部学生生的信息息保存到到文件“sstudd.daat”中中。函数OrrigiinallStuud()用来实实现学生生信息的的初始化化,在程程序第11次运行行时必须须调用该该函数。该函数数是通过过循环多多次调用用InpputOOnesstudd()函函数实现现多个学学生信息息的输入入,然后后调用SSaveeAlllstuuds()函数数将已输输入的所所有学生生的信息息
17、保存在在文件“sstudd.daat”中中。函数MoodiffySttud()用来来实现学学生信息息的修改改。函数AdddSttud()用来来实现添添加学生生信息。函数DeelSttud()用来来实现删删除学生生信息。函数OuutpuutOnnesttud()用来来实现输输出一个个学生的的全部信信息。函数OuutpuutAlllsttudss()用用来实现现输出全全部学生生的基本本信息(即即学号和和姓名)。(5) 图书信信息查询询模块包包括6个函数数:SeearcchMeenu()、SearrcBnnamee()、SeaarchhAutthorr()、SeaarchhBcllasss()、Se
18、aarchhPubblissherr()、SeaarchhPubbtimme()。管理理员和学学生都可可以使用用图书信信息查询询模块。函数SeearcchMeenu()用来来显示图图书查询询服务菜菜单,用用户输入入数字可可执行相相应的查查询服务务。函数SeearccBnaame()用来来实现按按书名进进行图书书信息的的查询。用户可可以输入入完整的的书名进进行精确确查询(如如输入“CC语言程程序设计计”),精精确查询询是使用用字符串串比较函函数sttrcmmp(),将输输入的书书名与已已有图书书的书名名逐一进进行比较较,当该该函数的的返回值值等于00,表示示这两个个书名完完全相同同,即找找到要查
19、查询的图图书。另另外,用用户也可可以输入入书名中中的几个个字进行行模糊查查询(如如输入“CC语言”,或输输入“程序设设计”),模模糊查询询是使用用求子串串函数sstrsstr(),在在已有图图书的书书名中寻寻找输入入的字符符串,如如果该函函数的返返回值不不为空,则则说明该该书名中中包含这这个字符符串,那那么就应应该输出出这本图图书的信信息。通通常,模模糊查询询会列出出多个查查询结果果。函数SeearcchAuuthoor()用来实实现按作作者姓名名进行图图书信息息的查询询。用户户可以输输入完整整的姓名名进行精精确查询询(如输输入“谭浩强强”),也也可以只只输入姓姓氏进行行模糊查查询(如如只输入
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言课程设计 图书管理系统 高校教师人事管理系统 语言 课程设计 图书 管理 系统 高校教师 人事管理系统
限制150内