C图书管理系统源代码

上传人:沈*** 文档编号:101362674 上传时间:2022-06-05 格式:DOC 页数:32 大小:104.50KB
返回 下载 相关 举报
C图书管理系统源代码_第1页
第1页 / 共32页
C图书管理系统源代码_第2页
第2页 / 共32页
C图书管理系统源代码_第3页
第3页 / 共32页
点击查看更多>>
资源描述
word图书管理系统系统功能:1借书:根据借书人提出的图书编号id查询该图书,如果该图书现存量store不为0,如此提示输入借阅者的学号num,为借书人办理借书手续,提示用户该书已被借出。2归书:根据借书人的学号查询该读者的信息,假设有该读者,如此提示输入所借书籍的编号id,为该读者办理还书手续,提示该书已还。 3.书籍管理:弹出书籍管理界面,输入所要执行操作的: 1增加书籍:弹出注册新书的窗口,按照提示输入所增加书籍的信息,最后,提示用户该书已被注册。2删除书籍:弹出删除书籍的窗口,输入所要删除书籍的编号id,输出该书的信息,确认是否删除该书,1为删除,0为放弃。3修改书籍:弹出修改书籍的窗口,输入所要修改书籍的编号id,输出该书的信息,确认是否修改该书,1为修改,0为放弃。之后按照提示重新输入书籍的信息。4.读者管理:弹出读者管理界面,输入所要执行操作的: 1增加读者:弹出注册读者的窗口,按照提示输入所增加读者的信息,最后,提示用户该读者已被注册。2删除书籍:弹出删除读者的窗口,输入所要删除读者的学号num,输出该读者的信息,确认是否删除该读者,1为删除,0为放弃。3修改书籍:弹出修改读者的窗口,输入所要修改读者的学号num,输出该读者的信息,确认是否修改该读者,1为修改,0为放弃。之后按照提示重新输入读者的信息。5.搜索:此搜索包括两方面的搜索,书籍搜索以与读者搜索,弹出搜索的窗口,按照提示输入所要搜索的容,1为书籍搜索,2为读者搜索:1搜索书籍:弹出搜索书籍的窗口,按照提示输入所要搜索的方式,包括按书名搜索,书号搜索,作者搜索,搜索,出版时间搜索;根据所选方式输入相应的容,假设是该书籍存在,如此输出该书籍的信息,否如此,返回主界面。2搜索读者:弹出搜索读者的窗口,按照提示输入所要搜索的方式,包括按名字搜索,学号搜索;根据所选方式输入相应的容,假设是该读者存在,如此输出该读者的信息,否如此,返回主界面。6.退出:退出图书管理系统。图书类设计:私有成员:书名(name)、编号(id)、作者名(writer)、价格(price)、总存量(total)、现存量(store)、出版单位(publish)、出版时间(pub_time)。与该书的借阅情况借阅者名字(borrower)、借阅者学号(borr_num):假设无人借阅该书,如此borrower=0, borr_num=0;否如此borrower=借阅者名字,borr_num=借阅者学号。class bookprivate: char name50; /书名 char writer10; /作者 char borrower10; /借书人 int id; /书号 int borr_num; /借书人学号 int store; /现存量 int total; / 总存量 int pub_time; /出版时间 float price; /价格 char publish50; /public: book(); /book类构造函数 int book1();/书籍管理界面函数 int book_add();/增加书籍函数 int book_del();/删除书籍函数 int book_mod();/修改书籍函数 int book_out();/借书函数 int book_in();/还书函数 int book_name(); /按书名搜索书籍函数 int book_id();/按书号搜索书籍函数 int book_pub();/按搜索书籍函数 int book_time();/按出版时间搜索书籍函数 int book_writer();/按作者搜索书籍函数 int seach_book();/搜索书籍界面函数 int seach();/主搜索界面函数;读者类设计:私有成员:借书人的(name)、性别(sex)、年级grade、班级class、学号(num)。与所借图书名字(book_name)、借书日期(date)、可借天数(avai_days)。class readerprivate: char name10; /名字 int num; /学号 char grade10; /年级 char clas10; /班级 char sex10; /性别 char book_name50; /所借书的书名 char date10; /借书日期 int avai_days; /可借天数public: int reader_1();/读者管理界面函数 int reader_add();/增加读者函数 int reader_del();/删除读者函数 int reader_mod(); /修改读者函数 int reader_name(); /按读者名字搜索读者函数 int reader_num(); /按读者学号搜索读者函数 int seach_reader(); /搜索读者界面函数 char *getname(); /获取读者函数 int getnum(); /获取读者学号函数 char *getgrade();/获取读者年级函数 char *getclas();/获取读者班级函数 char *getsex();/获取读者性别函数 char *getbook_name();/获取所借书书名函数 char *getdate(); /获取借书日期函数 int getavaiday();/获取可借天数函数 int setname(char *);/设置读者函数 int setnum(int); /设置读者学号函数 int setgrade(char *); /设置读者年级函数 int setclas(char *); /设置读者班级函数 int setsex(char *); /设置读者性别函数 int setbook_name(char *); /设置所借书籍书名函数 int setdate(char *); /设置借书日期函数 int setavaiday(int); /设置可借天数函数;图书管理系统源代码:#includeusing namespace std;class reader;class bookprivate: char name50; /书名 char writer10; /作者 char borrower10; /借书人 int id; /书号 int borr_num; /借书人学号 int store; /现存量 int total; / 总存量 int pub_time; /出版时间 float price; /价格 char publish50; /public:book(); /book类构造函数 int book1();/书籍管理界面函数 int book_add();/增加书籍函数 int book_del();/删除书籍函数 int book_mod();/修改书籍函数 int book_out();/借书函数 int book_in();/还书函数 int book_name(); /按书名搜索书籍函数 int book_id();/按书号搜索书籍函数 int book_pub();/按搜索书籍函数 int book_time();/按出版时间搜索书籍函数 int book_writer();/按作者搜索书籍函数 int seach_book();/搜索书籍界面函数 int seach();/主搜索界面函数;class readerprivate: char name10; /名字 int num; /学号 char grade10; /年级 char clas10; /班级 char sex10; /性别 char book_name50; /所借书的书名 char date10; /借书日期 int avai_days; /可借天数public:int read1();/读者管理界面函数 int reader_add();/增加读者函数 int reader_del();/删除读者函数 int reader_mod(); /修改读者函数 int reader_name(); /按读者名字搜索读者函数 int reader_num(); /按读者学号搜索读者函数 int seach_reader(); /搜索读者界面函数 char *getname(); /获取读者函数 int getnum(); /获取读者学号函数 char *getgrade();/获取读者年级函数 char *getclas();/获取读者班级函数 char *getsex();/获取读者性别函数 char *getbook_name();/获取所借书书名函数 char *getdate(); /获取借书如期函数 int getavaiday();/获取可借天数函数 int setname(char *);/设置读者函数 int setnum(int); /设置读者学号函数 int setgrade(char *); /设置读者年级函数 int setclas(char *); /设置读者班级函数 int setsex(char *); /设置读者性别函数 int setbook_name(char *); /设置所借书籍书名函数 int setdate(char *); /设置借书日期函数 int setavaiday(int); /设置可借天数函数;#include#include#include#include#define SIZE 100#define AMOUNT 50book booksSIZE;reader studAMOUNT;int return_back() cout请按下任何键. ; getch(); return 0;char *reader:getname()return name;int reader:getnum()return num;char *reader:getgrade()return grade;char *reader:getclas()return clas;char *reader:getsex()return sex;char *reader:getbook_name()return book_name;char *reader:getdate()return date;int reader:getavaiday()return avai_days;int reader:setname(char *names)strcpy(name,names);return 0;int reader:setnum(int nums)num=nums;return 0;int reader:setgrade(char *grades)strcpy(grade,grades);return 0;int reader:setclas(char *classes)strcpy(clas,classes);return 0;int reader:setsex(char *sexs)strcpy(sex,sexs);return 0;int reader:setbook_name(char *book_names)strcpy(book_name,book_names);return 0;int reader:setdate(char *dates)strcpy(date,dates);return 0;int reader:setavaiday(int avaiday)avai_days=avaiday;return 0;int page_title() system(cls); cout * * * * * * * * * * * * * * * * * * * * * * * * * *n ; cout * 欢迎来到图书管理系统 *n ; cout * * * * * * * * * * * * * * * * * * * * * * * * * *n ; return 0;book:book() system(color 17); reader read; menu: page_title(); cout 主菜单 endlendlendl; cout * * * * * * * * * * * endl; cout * 1.借 书 * endlendl; cout * 2.还 书 * endlendl; cout * 3.书籍管理 * endlendl; cout * 4.读者管理 * endlendl; cout * 5.搜 索 * endlendl; cout * 0.退 出 * endl; cout * * * * * * * * * * *endlendl; cout 请输入你的选择: ; switch(getch() case1:book_out();break; case2:book_in();break; case3:book1();break; case4:read.read1();break; case5:seach();break; case0:exit(0);break; default:system(cls); page_title(); cout n错误,请再输入一遍! endl; goto menu; int book:book1() system(cls); page_title(); cout 管理 endl endl endl; cout * * * * * * * * * * * endl; cout * 1.增加书籍 * endl endl; cout * 2.注销书籍 * endl endl; cout * 3.修改书籍 * endl endl; cout * 0.返 回 *endl; cout * * * * * * * * * * * endl endl; cout 请输入你的选择: ; switch(getch()case1:book_add();break; case2:book_del();break; case3:book_mod();break; case0:return_back();break; default:system(cls); coutn错误,请再输入一遍!n; return 0;int book:book_add() /定义增加书籍的函数 FILE *bfp; int i,n; page_title(); cout 增加书籍 endl; cout请输入书的信息 endl; bfp=fopen(books,rb); for(n=0;nSIZE;n+) fread(&booksn,sizeof(booksn),1,bfp); if(booksn.id=0) break; fclose(bfp); do coutbooksn.id; for(i=0;iSIZE;i+) if(booksn.id=booksi.id&n!=i) coutn这个书号已经存在. endl; break; while(booksn.id=booksi.id); coutbooksn.name; coutbooksn.writer; coutbooksn.price; coutbooksn.total; coutbooksn.store; coutbooksn.publish; coutbooksn.pub_time; coutbooksn.borrower; coutbooksn.borr_num; bfp=fopen(books,wb); for(n=0;nSIZE;n+) fwrite(&booksn,sizeof(booksn),1,bfp); fclose(bfp); coutn该书已经添加.n endl; return 0; int book:book_del() /定义删除书籍的函数 FILE *bfp; int i,id,s; page_title(); cout 注销旧书 endl; if(bfp=fopen(books,rb)=0) cout无法打开文件. ; for(i=0;iSIZE;i+) fread(&booksi,sizeof(booksi),1,bfp); fclose(bfp); coutid; for(i=0,s=-1;iSIZE;i+) if(booksi.id=id) cout书名: booksi.name endl; cout书号: booksi.id endl; cout booksi.writer endl; cout价格: booksi.price endl; cout总存量: booksi.total endl; cout现存量: booksi.store endl; cout: booksi.publish endl; cout出版时间: booksi. pub_time endl; cout读者: booksi.borrower endl; cout读者学号: booksi.borr_num endl; cout* endl; couts; if(s=1) for(;iSIZE;i+) booksi=booksi+1; else if(s=0) return 0; if(s=-1) cout该书不存在. endl; if(bfp=fopen(books, wb)=0) cout无法打开文件. ; for(i=0;iSIZE;i+) fwrite(&booksi,sizeof(booksi),1,bfp); fclose(bfp); return 0;int book:book_mod() /定义修改书籍的函数 FILE *bfp; int i,id,s,n; page_title(); cout 修改书籍endl; if(bfp=fopen(books,rb)=0) cout无法打开文件. ; for(i=0;iSIZE;i+) fread(&booksi,sizeof(booksi),1,bfp); fclose(bfp); coutendlid; for(i=0,s=0;iSIZE;i+) if(booksi.id=id) cout书名:booksi.nameendl; cout书号: booksi.id endl; cout booksi.writer endl; cout价格: booksi.price endl; cout总存量: booksi.total endl; cout现存量: booksi.store endl; cout: booksi.publish endl; cout出版时间: booksi. pub_time endl; cout读者: booksi.borrower endl; cout读者学号: booksi.borr_num endl;cout* endl;couts;if(s=1) page_title();cout请重新输入书籍的信息:endl;docoutendlbooksi.id;for(n=0;nSIZE;n+)if(booksi.id=booksn.id&n!=i)cout该书号已存在. endl;break;while(booksi.id=booksn.id); coutbooksi.name; coutbooksi.writer; coutbooksi.price; coutbooksi.total; coutbooksi.store; coutbooksi.publish; coutbooksi.pub_time; coutbooksi.borrower; coutbooksi.borr_num; else if(s=0) return 0; if(s=-1) cout该书不存在。endl; if(bfp=fopen(books, wb)=0) cout无法打开文件. ; for(i=0;iSIZE;i+) fwrite(&booksi,sizeof(booksi),1,bfp); fclose(bfp); return 0;int reader:reader_1()system(cls); page_title(); cout 管理nendlendlendl; cout * * * * * * * * * * *endl; cout * 1.增加读者 *endlendl; cout * 2.注销读者 *endlendl; cout * 3.修改读者 *endl endl; cout * 0.返 回 *endl; cout * * * * * * * * * * *endlendl; cout 请输入你的选择: ;switch(getch()case1:reader_add();break; case2:reader_del();break; case3:reader_mod();break; case0:return_back();break; default:system(cls); coutn错误,请再输入一遍!n;return 0;int reader:reader_add() /定义增加读者函数 FILE *sfp; int i,n; page_title(); cout 增加读者endl; cout请输入读者的信息 endl; sfp=fopen(students,rb); for(n=0;nAMOUNT;n+) fread(&studn,sizeof(studn),1,sfp); if(studn.num=0) break; fclose(sfp); do coutstudn.num; for(i=0;iAMOUNT;i+) if(studn.num=studi.num&n!=i) coutendl 这个学号已经存在.endl; break; while(studn.num=studi.num); coutstudn.name; coutstudn.grade; coutstudn.clas; coutstudn.sex; coutstudn.book_name; coutstudn.date; coutstudn.avai_days; sfp=fopen(students,wb); for(n=0;nAMOUNT;n+) fwrite(&studn,sizeof(studn),1,sfp); fclose(sfp); coutendl 该读者已添加. endl; return 0;int reader:reader_del() /定义删除读者的函数 FILE *sfp; int i,num,s; page_title(); cout 注销读者endl; if(sfp=fopen(students, rb)=0) cout无法打开文件. ; for(i=0;iAMOUNT;i+) fread(&studi,sizeof(studi),1,sfp); fclose(sfp); coutendl num; for(i=0,s=-1;iAMOUNT;i+) if(studi.num=num) cout名字: studi.nameendl;cout学号: studi.numendl;cout年级: studi.gradeendl;cout班级: studi.clasendl;cout性别: studi.sexendl;cout书名: studi.book_nameendl;cout借书日期: studi.dateendl;cout可借天数: studi.avai_daysendl;cout* endl;couts;if(s=1)for(;iAMOUNT;i+)studi=studi+1;else if(s=0)return 0;if(s=-1)cout该读者不存在.; if(sfp=fopen(students, wb)=0) cout无法打开文件. ; for(i=0;iAMOUNT;i+) fwrite(&studi,sizeof( studi),1,sfp); fclose(sfp); return 0;int reader:reader_mod() /定义修改读者的函数FILE *sfp;int i,num,s,n;page_title();cout 修改读者endl;if(sfp=fopen(students, rb)=0)cout无法打开文件. ;for(i=0;iAMOUNT;i+)fread(&studi,sizeof(studi),1,sfp);fclose(sfp);coutendl num;for(i=0,s=-1;iAMOUNT;i+)if(studi.num=num)cout名字:studi.nameendl;cout学号: studi.numendl;cout年级: studi.gradeendl;cout班级: studi.clasendl;cout性别: studi.sexendl;cout书名: studi.book_nameendl;cout借书日期: studi.dateendl;cout可借天数: studi.avai_daysendl;cout* endl;couts;if(s=1)page_title();cout请重新输入读者的信息. endl;docoutstudi.num;for(n=0;nAMOUNT;n+)if(studi.num=studn.num&n!=i)cout该学号已存在.endl;break;while(studi.num=studn.num);coutstudi.name; coutstudi.grade; coutstudi.c
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!