版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、南京航空航天大学C+福序设计课程设计报告图书馆管理系统姓名:学号:院系:信息科学与技术学院日期:2009.4.8谢谢观赏目录目录2一、需求分析2二、系统主要功能2三、系统总框图2四、定义的函数及说明3五、特色算法4六、源程序4谢谢观赏一、需求分析在信息技术日益普及的今天,很多事物都在信息技术的帮助下成倍的提高了效率,同样,如果一个图书馆能有一套有效的人事管理系统,这对于图书馆的日常管理是大有益处的。二、系统主要功能本系统提供了一个图书馆管理的平台可,所提供的功能如下:1.借书2还书3显示书库4添加书籍5删除书籍6编辑书籍7用户登陆8用户注册9显示用户信息三、系统总框图主控模块四、定义的函数及说
2、明界面管理classlib_sys:图书管理的功能部分intinput_data();从文件读入数据intoutput_data();向文件输出数据intuser_login();用户登陆intcheck_user_right();检查用户权限intcheck_admin_right();检查管理员权限bookedit_book_inner(bookk);编辑一本书(程序内部使用)bookadd_book_inner();添加一本书(程序内部使用)intshow_book_inner(bookk);显示一本书(程序内部使用)intfind_book_inner(char*isbn);查找一本书
3、(程序内部使用)intfind_student_inner(char*username);查找一个学生(程序内部使用)intadd_book();添加书籍intedit_book(char*isbn);编辑书籍intdel_book(char*isbn,intmuch);删除书籍intshow_book();显示书籍intborrow_book();借书intreturn_book();还书intregister_user();用户注册char*get_username();返回当前用户的用户名intshow_user_detail();显示用户信息classManager:界面实现部分int
4、work();显示和实现界面五、特色算法本程序把借书和用户关联在一起,而且出现的权限的概念,普通游客只能观看书籍列表,普通用户只能借书和还书,只有管理员才有权限对书籍信息和数量进行修改。注:当前默认管理员的帐户和密码都是admin六、源程序(见后页)Main.cpp#includeManager.hmain()Managerk;k.work();return0;Book.h#ifndefBOOK_H#defineBOOK_Hclassbookprivate:charisbn50;charbookTitle50;charauthor50;charpublisher50;chardatepubli
5、shed50;intleft;friendclasslib_sys;#endifStudent.h#ifndefSTUDENT_H#defineSTUDENT_Hclassstudentprivate:charusername50;charpassword50;intnum;charisbn5050;friendclasslib_sys;#endifLib_sys.h#ifndefLIB_SYS_H#defineLIB_SYS_H#includebook.h#includestudent.hclasslib_sysprivate:intbook_tot;intstudent_tot;bookl
6、book100;studentlstudent100;charusername50;charpassword50;intuser_state;0isnouser,1isloginpublic:lib_sys()username0=0;password0=0;user_state=0;book_tot=0;student_tot=0;intinput_data();intoutput_data();intuser_login();intcheck_user_right();intcheck_admin_right();bookedit_book_inner(bookk);bookadd_book
7、_inner();intshow_book_inner(bookk);intfind_book_inner(char*isbn);intfind_student_inner(char*username);intadd_book();intedit_book(char*isbn);intdel_book(char*isbn,intmuch);intshow_book();intborrow_book();intreturn_book();intregister_user();char*get_username()returnusername;intshow_user_detail();;#end
8、ifLib_sys.cpp#includelib_sys.h#include#include#include#include#includeintlib_sys:input_data()inti,j;fstreamfbook,fstudent;fbook.open(book.dat,ios:in);fstudent.open(student.dat,ios:in);if(!fbook)return0;if(!fstudent)return0;fbookbook_tot;fbook.ignore();for(i=1;ilbooki.left;fbook.ignore();fbook.close(
9、);fstudentstudent_tot;fstudent.ignore();for(i=1;ilstudenti.num;fstudent.ignore();for(j=1;j=lstudenti.num;j+)fstudent.getline(lstudenti.isbnj,50);fstudent.close();return1;intlib_sys:output_data()inti,j;fstreamfbook,fstudent;fbook.open(book.dat,ios二out);fstudent.open(student.dat,ios:out);if(!fbook)ret
10、urn0;if(!fstudent)return0;fbookbook_totendl;for(i=1;i=book_tot;i+)fbooklbooki.isbnendl;fbooklbooki.bookTitleendl;fbooklbooki.authorendl;fbooklbooki.publisherendl;fbooklbooki.datepublishedendl;fbooklbooki.leftendl;fbook.close();fstudentstudent_totendl;for(i=1;i=student_tot;i+)fstudentlstudenti.userna
11、meendl;fstudentlstudenti.passwordendl;fstudentlstudenti.numendl;for(j=1;j=lstudenti.num;j+)fstudentlstudenti.isbnjendl;fstudent.close();return1;intlib_sys:user_login()charua50,pw50;inti;coutusername:;cin.getline(ua,50);coutpassword:;cin.getline(pw,50);for(i=1;i=student_tot;i+)/coutlstudenti.username
12、endllstudenti.password&endl;if(strcmp(lstudenti.username,ua)=0strcmp(lstudenti.password,pw)=0)user_state=1;strcpy(username,ua);strcpy(password,pw);/coutusernameendl;/coutpasswordendl;break;if(user_state)coutLoginsuccessfully.n;elsecoutUsernotexistorwrongpassword.n;returnuser_state;intlib_sys:check_u
13、ser_right()returnuser_state;intlib_sys:check_admin_right()if(!user_state)return0;if(strcmp(username,admin)=0&strcmp(password,admin)=0)return1;return0;booklib_sys:edit_book_inner(bookk)charch;charst50;if(!check_admin_right()returnk;ch=0;while(!(ch=6)system(cls);cout请输入要修改的项目,在新数据输入状态下直接回车表示取消彳改n;cout
14、1.isbnn;cout2.书名n;cout3.作者n”;cout4.出版社n;cout5.出版时间n;cout6.确定n”;cout.flush();ch=getch();switch(ch)case1:cout当前的isbn是:k.isbnendl;cout请输入新数据:;cin.getline(st,50);if(!strlen(st)=0)strcpy(k.isbn,st);break;case2:cout当前的书名是:k.bookTitleendl;cout请输入新数据:;cin.getline(st,50);if(!strlen(st)=0)strcpy(k.bookTitle,s
15、t);break;case3:cout当前的作者是:k.authorendl;cout请输入新数据:;cin.getline(st,50);if(!strlen(st)=0)strcpy(k.author,st);break;case4:cout当前的出版社是:k.publisherendl;cout请输入新数据:;cin.getline(st,50);if(!strlen(st)=0)strcpy(k.publisher,st);break; endl;case5:cout”当前的出版时间是:k.datepublishedcout请输入新数据:;cin.getline(st,50);if(!
16、strlen(st)=0)strcpy(k.datepublished,st);break;case6:returnk;break;default:cout输入错误n;cout.flush();returnk;booklib_sys:add_book_inner()bookk;charst50;intw;if(!check_admin_right()returnk;cout请输入书籍信息,isbn为必填项n;cout请输入isbn:;cin.getline(st,50);strcpy(k.isbn,st);cout请输入书名:;cin.getline(st,50);strcpy(k.bookT
17、itle,st);cout请输入作者:;cin.getline(st,50);strcpy(k.author,st);cout请输入出版社:;cin.getline(st,50);strcpy(k.publisher,st);cout请输入出版时间:cin.getline(st,50);strcpy(k.datepublished,st);coutw;k.left=w;returnk;intlib_sys:show_book_inner(bookk)coutendl;coutisbn:k.isbnendl;cout书名:k.bookTitleendl;cout作者:k.authorendl;c
18、out出版社:k.publisherendl;cout出版时间:k.datepublishedendl;cout数量:k.leftendl;return1;intlib_sys:find_book_inner(char*isbn)inti;for(i=1;i=book_tot;i+)if(strcmp(lbooki.isbn,isbn)=0)break;if(i=book_tot&strcmp(lbooki.isbn,isbn)=0)returni;elsereturn0;intlib_sys:find_student_inner(char*username)inti;for(i=1;i=st
19、udent_tot;i+)if(strcmp(lstudenti.username,username)=0)break;if(i=student_tot&strcmp(lstudenti.username,username)=0)returni;elsereturn0;intlib_sys:add_book()inti;bookk;if(!check_admin_right()return0;k=add_book_inner();for(i=1;i=book_tot;i+)if(strcmp(lbooki.isbn,k.isbn)=0)break;if(i=book_tot&strcmp(lb
20、ooki.isbn,k.isbn)=0)lbooki.left+=k.left;elseif(strlen(k.isbn)=0)return0;elsebook_tot+;lbookbook_tot=k;return1;intlib_sys:edit_book(char*isbn)inti;bookk;if(!check_admin_right()return0;for(i=1;i=book_tot;i+)if(strcmp(lbooki.isbn,isbn)=0)break;if(i=book_tot&strcmp(lbooki.isbn,isbn)=0)k=lbooki;k=edit_bo
21、ok_inner(k);lbooki=k;return1;return0;intlib_sys:del_book(char*isbn,intmuch)inti,j;if(!check_admin_right()return0;for(i=1;i=book_tot;i+)if(strcmp(lbooki.isbn,isbn)=0)break;if(imuch)lbooki.left-=much;elsefor(j=i;j=book_tot-1;j+)lbookj=lbookj+1;return1;return0;intlib_sys:show_book()inti;cout总数:book_tot
22、endl;for(i=1;i=book_tot;i+)show_book_inner(lbooki);return1;intlib_sys:borrow_book()charisbn50;intp,s,much,i;if(!check_user_right()return0;cout请输入数的isbn:;cin.getline(isbn,50);if(!(p=find_book_inner(isbn)return0;if(!(s=find_student_inner(username)return0;coutmuch;if(lbookp.leftmuch)cout剩余量不足n”;return0
23、;elseif(10-lstudents.nummuch)cout您目前不能借这么多书n;return0;elselbookp.left-=much;for(i=1;i=much;i+)strcpy(lstudents.isbni+lstudents.num,isbn);lstudents.num+=much;return1;intlib_sys:return_book()charisbn50;intp,s,much,r,w,i,j;if(!check_user_right()return0;cout请输入数的isbn:;cin.getline(isbn,50);if(!(p=find_boo
24、k_inner(isbn)return0;if(!(s=find_student_inner(username)return0;coutmuch;for(w=1;w=much;w+)r=0;for(i=1;i=lstudents.num;i+)if(strcmp(lstudents.isbni,isbn)=0)for(j=i;j=lstudents.num-1;j+)strcpy(lstudents.isbnj,lstudents.isbnj+1);lstudents.num-;lbookp.left+;r=1;break;if(!r)cout您没有借这么多书n;if(w=1)return0;
25、break;return1;intlib_sys:register_user()charst50;inti;cout用户名:;cin.getline(st,50);for(i=1;i=student_tot;i+)if(strcmp(lstudenti.username,st)=0)cout用户已存在n;return0;student_tot+;strcpy(lstudentstudent_tot.username,st);cout密码:;cin.getline(st,50);strcpy(lstudentstudent_tot.password,st);lstudentstudent_tot
26、.num=0;return1;intlib_sys:show_user_detail()ints,i;if(!check_user_right()return0;if(!(s=find_student_inner(username)return0;cout当前用户:usernameendl;cout已借书籍总数:lstudents.num0)cout所借书籍isbn如下:n;for(i=1;i=lstudents.num;i+)coutlstudents.isbniendl;return1;Manager.h#ifndefMANAGER#defineMANAGER#includelib_sys
27、.hclassManagerprivate:lib_sysmsys;public:Manager()msys.input_data();intwork();#endifManager.cpp#includeManager.h#include#include#includeintManager:work()charch;charst50;intw;dosystem(cls);cout图书馆管理系统nn;cout当前用户:;if(msys.check_user_right()coutmsys.get_username()endl;elsecout游客n;coutendl;cout1.借书n”;cout2.还书n”;cout3.显示书库n;if(msys.check_admin_right()cout4.添加书籍n;cout5.删除书籍n;cout6.编辑书籍n;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 44760-2024锆及锆合金管材超声检测方法
- 股东代持股协议书
- 2024年度虚拟化服务器租赁与桌面云服务协议2篇
- 化工设计-ASPEN软件:ASPEN PLUS模拟软件简介
- 人教版九年级化学第七单元过关训练课件
- 2024年度居间人工程保险合同3篇
- 二零二四年度建筑智能化弱电工程合同2篇
- 智能控制系统集成与灯具安装(2024年度)合同
- 人教版九年级化学第八单元金属和金属材料2金属的化学性质课时1金属与氧气、酸的反应教学课件
- 企业员工培训现状分析
- 国开(浙江)2024年秋《中国建筑史(本)》形考作业1-4答案
- 医院检验科实验室生物安全程序文件SOP
- 第9课-隋唐时期的经济、科技与文化-【中职专用】《中国历史》课件(高教版2023基础模块)
- 个人嘉奖登记(报告)表(无水印)
- 大队委竞选课件
- 基于PLC的燃油锅炉控制系统设计毕设设计说明书论文
- 小学生垃圾分类(全)(课堂PPT)
- 保险公司绩效考核办法
- 电度表检验报告格式(共4页)
- 鄂尔多斯市东胜区煤矿信息表
- 智慧城市-西安市城市运行大数据平台可研报告
评论
0/150
提交评论