C++ 图书管理系统源代码Word格式.docx
《C++ 图书管理系统源代码Word格式.docx》由会员分享,可在线阅读,更多相关《C++ 图书管理系统源代码Word格式.docx(43页珍藏版)》请在冰豆网上搜索。
根据所选方式输入相应的内容,若是该书籍存在,则输出该书籍的信息,否则,返回主界面。
(2)搜索读者:
弹出搜索读者的窗口,按照提示输入所要搜索的方式,包括按<
名字搜索,<
学号搜索;
根据所选方式输入相应的内容,若是该读者存在,则输出该读者的信息,否则,返回主界面。
6.退出:
退出图书管理系统。
图书类设计:
私有成员:
书名(name)、编号(id)、作者名(writer)、价格(price)、总存量(total)、现存量(store)、出版单位(publish)、出版时间(pub_time)。
及该书的借阅情况(借阅者名字(borrower)、借阅者学号(borr_num):
若无人借阅该书,则borrower=0,borr_num=0;
否则borrower=借阅者名字,borr_num=借阅者学号)。
classbook
{
private:
charname[50];
//书名
charwriter[10];
//作者
charborrower[10];
//借书人
intid;
//书号
intborr_num;
//借书人学号
intstore;
//现存量
inttotal;
//总存量
intpub_time;
//出版时间
floatprice;
//价格
charpublish[50];
//出版社
public:
book();
//book类构造函数
intbook1();
//书籍管理界面函数
intbook_add();
//增加书籍函数
intbook_del();
//删除书籍函数
intbook_mod();
//修改书籍函数
intbook_out();
//借书函数
intbook_in();
//还书函数
intbook_name();
//按书名搜索书籍函数
intbook_id();
//按书号搜索书籍函数
intbook_pub();
//按出版社搜索书籍函数
intbook_time();
//按出版时间搜索书籍函数
intbook_writer();
//按作者搜索书籍函数
intseach_book();
//搜索书籍界面函数
intseach();
//主搜索界面函数
};
读者类设计:
私有成员:
?
借书人的姓名(name)、性别(sex)、年级(grade)、班级(class)、学号(num)。
及所借图书名字(book_name)、借书日期(date)、可借天数(avai_days)。
classreader
charname[10];
//名字
intnum;
//学号
chargrade[10];
//年级
charclas[10];
//班级
charsex[10];
//性别
charbook_name[50];
//所借书的书名
chardate[10];
//借书日期
intavai_days;
//可借天数
intreader_1();
//读者管理界面函数
intreader_add();
//增加读者函数
intreader_del();
//删除读者函数
intreader_mod();
//修改读者函数
intreader_name();
//按读者名字搜索读者函数
intreader_num();
//按读者学号搜索读者函数
intseach_reader();
//搜索读者界面函数
char*getname();
//获取读者姓名函数
intgetnum();
//获取读者学号函数
char*getgrade();
//获取读者年级函数
char*getclas();
//获取读者班级函数
char*getsex();
//获取读者性别函数
char*getbook_name();
//获取所借书书名函数
char*getdate();
//获取借书日期函数
intgetavaiday();
//获取可借天数函数
intsetname(char*);
//设置读者姓名函数
intsetnum(int);
//设置读者学号函数
intsetgrade(char*);
//设置读者年级函数
intsetclas(char*);
//设置读者班级函数
intsetsex(char*);
//设置读者性别函数
intsetbook_name(char*);
//设置所借书籍书名函数
intsetdate(char*);
//设置借书日期函数
intsetavaiday(int);
//设置可借天数函数
图书管理系统源代码:
#include<
iostream>
usingnamespacestd;
classreader;
intread1();
//获取借书如期函数
string.h>
conio.h>
stdlib.h>
windows.h>
#defineSIZE100
#defineAMOUNT50
bookbooks[SIZE];
readerstud[AMOUNT];
intreturn_back()
cout<
<
"
请按下任何键."
;
getch();
return0;
}
char*reader:
:
getname()
returnname;
intreader:
getnum()
returnnum;
getgrade()
returngrade;
getclas()
returnclas;
getsex()
returnsex;
getbook_name()
returnbook_name;
getdate()
returndate;
getavaiday()
returnavai_days;
setname(char*names)
strcpy(name,names);
return0;
setnum(intnums)
num=nums;
setgrade(char*grades)
strcpy(grade,grades);
setclas(char*classes)
strcpy(clas,classes);
setsex(char*sexs)
strcpy(sex,sexs);
setbook_name(char*book_names)
strcpy(book_name,book_names);
setdate(char*dates)
strcpy(date,dates);
setavaiday(intavaiday)
avai_days=avaiday;
intpage_title()
system("
cls"
);
**************************\n"
*☆★☆欢迎来到图书管理系统☆★☆*\n"
book:
book()
color17"
readerread;
menu:
page_title();
★主菜单★"
endl<
endl;
***********"
endl;
*1.借书*"
endl<
*2.还书*"
*3.书籍管理*"
*4.读者管理*"
*5.搜索*"
*0.退出*"
***********"
请输入你的选择:
;
switch(getch())
{
case'
1'
book_out();
break;
2'
book_in();
3'
book1();
4'
read.read1();
5'
seach();
0'
exit(0);
default:
system("
\n错误,请再输入一遍!
"
}
gotomenu;
intbook:
book1()
☆管理☆"
<
*1.增加书籍*"
*2.注销书籍*"
*3.修改书籍*"
*0.返回*"
book_add();
book_del();
book_mod();
return_back();
\n错误,请再输入一遍!
\n"
book_add()//定义增加书籍的函数
FILE*bfp;
inti,n;
☆增加书籍☆"
>
请输入书的信息<
bfp=fopen("
books"
"
rb"
for(n=0;
n<
SIZE;
n++)
fread(&
books[n],sizeof(books[n]),1,bfp);
if(books[n].id==0)break;
fclose(bfp);
do
请输入一个新的书号(书号从1001开始,但必须不同于已存在的书号):
cin>
books[n].id;
for(i=0;
i<
i++)
if(books[n].id==books[i].id&
&
n!
=i)
\n这个书号已经存在."
break;
}while(books[n].id==books[i].id);
书名:
books[n].name;
作者:
books[n].writer;
价格:
books[n].price;
总存量:
books[n].total;
现存量:
books[n].store;
出版社:
books[n].publish;
出版时间:
books[n].pub_time;
借书人:
books[n].borrower;
借书者学号:
books[n].borr_num;
wb"
fwrite(&
\n该书已经添加.\n"
book_del()//定义删除书籍的函数
inti,id,s;
☆注销旧书☆"
if((bfp=fopen("
))==0)
无法打开文件."
books[i],sizeof(books[i]),1,bfp);
\n请输入书号:
id;
for(i=0,s=-1;
if(books[i].id==id)
books[i].name<
书号:
books[i].id<
books[i].writer<
books[i].price<
books[i].total<
books[i].store<
books[i].publish<
books[i].pub_time<
读者:
books[i].borrower<
读者学号:
books[i].borr_num<
**********************************************************"
请问是否确定注销此书(1为是,0为否):
s;
if(s==1)
for(;
books[i]=books[i+1];
elseif(s==0)
if(s==-1)
该书不存在."
"
book_mod()//定义修改书籍的函数
inti,id,s,n;
☆修改书籍☆"
请输入书号:
for(i=0,s==0;
c