您好,欢迎来到年旅网。
搜索
您的当前位置:首页C++ 图书管理系统源代码

C++ 图书管理系统源代码

来源:年旅网
.

图书管理系统

系统功能:

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)搜索书籍:弹出搜索书籍的窗口,按照提示输入所要搜索的方式,包括按<1>书名搜索,<2>书号搜索,<3>作者搜索,<4>出版社搜索,<5>出版时间搜索;根据所选方式输入相应的内容,若是该书籍存在,则输出该书籍的信息,否则,返回主界面。

(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 book

{

private:

char name[50]; char writer[10]; char borrower[10]; int id; int borr_num; int store; int total; int pub_time;

//书名

//作者

//借书人

//书号

//借书人学号

//现存量

// 总存量

//出版时间

.

float price; //价格

char publish[50]; //出版社

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 reader

{

private:

char name[10]; //名字

int num; //学号

.

char grade[10]; //年级

char clas[10]; //班级

char sex[10]; //性别

char book_name[50]; //所借书的书名

char date[10]; //借书日期

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); };

图书管理系统源代码:

#include

using namespace std;

class reader;

class book

{

private:

char name[50];

//设置可借天数函数

//书名

.

char writer[10]; //作者

char borrower[10]; //借书人

int id; //书号

int borr_num; //借书人学号

int store; //现存量

int total; // 总存量

int pub_time; //出版时间

float price; //价格

char publish[50]; //出版社

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 reader

{

private:

char name[10]; //名字

int num; //学号

char grade[10]; //年级

char clas[10]; //班级

char sex[10]; //性别

char book_name[50]; //所借书的书名

char date[10]; //借书日期

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 50

book books[SIZE];

reader stud[AMOUNT];

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<<\" cout<<\" \";

cout<<\" return 0;

}

* * * * * * * * * * * * * * * * * * * * * * * * * *\\n \";

* ☆★☆ 欢迎来到图书管理系统 ☆★☆ *\\n * * * * * * * * * * * * * * * * * * * * * * * * * *\\n \";

book::book()

{

system(\"color 17\");

reader read;

menu:

page_title();

cout<<\" \"<cout<<\" cout<<\" endl<cout<<\" endl<cout<<\" endl<.

★主菜单★ * * * * * * * * * * * \"<< endl;

* 1.借 书 * \"<< * 2.还 书 * \"<< * 3.书籍管理 * \"<< .

cout<<\" * 4.读者管理 * \"<< endl<cout<<\" * 5.搜 索 * \"<< endl<cout<<\" * 0.退 出 * \"<< endl;

cout<<\" * * * * * * * * * * *\"<cout<<\" 请输入你的选择:\" ;

switch(getch())

{

case'1':book_out();break;

case'2':book_in();break;

case'3':book1();break;

case'4':read.read1();break;

case'5':seach();break;

case'0':exit(0);break;

default:system(\"cls\");

page_title();

cout<<\" \\n错误,请再输入一遍! \"<< endl;

}

goto menu;

}

int book::book1()

{

system(\"cls\");

page_title();

cout<<\" ☆管理☆\" endl;

.

endl<< <cout<<\" * * * * * * * * * * *\"<< endl;

cout<<\" * 1.增加书籍 * \"<< endl<< endl;

cout<<\" * 2.注销书籍 * \"<< endl<< endl;

cout<<\" endl;

cout<<\" cout<<\" cout<<\" switch(getch())

{

case'1':book_add();break;

case'2':book_del();break;

case'3':book_mod();break;

* 3.修改书籍 * \"<< endl<< * 0.返 回 *\"<* * * * * * * * * * * \"<< endl<< endl;

请输入你的选择:\" ;

.

case'0':return_back();break;

default:system(\"cls\");

cout<<\"\\n错误,请再输入一遍!\\n\";

}

return 0;

}

int book::book_add() //定义增加书籍的函数

{

FILE *bfp;

int i,n;

page_title();

cout<<\" ☆增加书籍☆\"<< endl;

cout<<\">>>请输入书的信息<<<\"<< endl;

.

bfp=fopen(\"books\

for(n=0;n{

fread(&books[n],sizeof(books[n]),1,bfp);

if(books[n].id==0) break;

}

fclose(bfp);

do

{

cout<<\"请输入一个新的书号(书号从1001开始,但必须不同于已存在的书号):\" ;

cin>>books[n].id;

for(i=0;i{

.

if(books[n].id==books[i].id&&n!=i)

{

cout<<\"\\n这个书号已经存在. \"<< endl;

}

}

}while(books[n].id==books[i].id);

cout<<\"书名: \";

cin>>books[n].name;

cout<<\"作者: \";

cin>>books[n].writer;

cout<<\"价格: \";

cin>>books[n].price;

break;

.

cout<<\"总存量: \";

cin>>books[n].total;

cout<<\"现存量: \";

cin>>books[n].store;

cout<<\"出版社: \";

cin>>books[n].publish;

cout<<\"出版时间: \";

cin>>books[n].pub_time;

cout<<\"借书人: \";

cin>>books[n].borrower;

cout<<\"借书者学号: \";

cin>>books[n].borr_num;

bfp=fopen(\"books\

.

for(n=0;nfwrite(&books[n],sizeof(books[n]),1,bfp);

fclose(bfp);

cout<<\"\\n该书已经添加.\\n\"<< endl;

return 0;

}

int book::book_del() //定义删除书籍的函数

{

FILE *bfp;

int i,id,s;

page_title();

cout<<\" ☆注销旧书☆\"<< endl;

if((bfp=fopen(\"books\

.

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

cout<<\"\\n请输入书号: \";

cin>>id;

for(i=0,s=-1;i{

if(books[i].id==id)

.

{

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<cout<<\"出版时间: \"<cout<<\"读者: \"<cout<<\"读者学号: \"<cout<<\"**********************************************************\"<< endl;

cout<<\"请问是否确定注销此书(1为是,0为否): \";

.

cin>>s;

if(s==1)

{

}

if(s==-1)

for(;ibooks[i]=books[i+1];

}

else if(s==0)

{

return 0;

}

}

.

{

cout<<\"该书不存在.\"<< endl;

}

if((bfp=fopen(\"books\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

fwrite(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

return 0;

.

}

int book::book_mod() //定义修改书籍的函数

{

FILE *bfp;

int i,id,s,n;

page_title();

cout<<\" if((bfp=fopen(\"books\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

☆修改书籍☆\"<.

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

cout<cin>>id;

for(i=0,s==0;i{

if(books[i].id==id)

{

cout<<\"书名:\"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<.

cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<cout<<\"出版时间: \"<cout<<\"读者: \"<cout<<\"读者学号: \"<cout<<\"**********************************************************\"<< endl;

cout<<\"是否确定修改该书籍(1为是,0为否): \";

cin>>s;

if(s==1)

{ page_title();

cout<<\">>>请重新输入书籍的信息:<<<\"<do

.

{

cout<cin>>books[i].id;

for(n=0;n{

if(books[i].id==books[n].id&&n!=i)

{

cout<<\"该书号已存在. \"<}

}

}while(books[i].id==books[n].id);

cout<<\"书名: \";

cin>>books[i].name;

.

cout<<\"作者: \";

cin>>books[i].writer;

cout<<\"价格: \";

cin>>books[i].price;

cout<<\"总存量: \";

cin>>books[i].total;

cout<<\"现存量: \";

cin>>books[i].store;

cout<<\"出版社: \";

cin>>books[i].publish;

cout<<\"出版时间: \";

cin>>books[i].pub_time;

cout<<\"借书人: \";

cin>>books[i].borrower;

cout<<\"借书者学号: \";

cin>>books[i].borr_num;

}

else if(s==0)

{

return 0;

}

}

}

if(s==-1)

{

cout<<\"该书不存在。

.

\"<.

}

if((bfp=fopen(\"books\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

fwrite(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

return 0;

}

int reader::reader_1()

{

system(\"cls\");

page_title();

cout<<\" \\n\"<cout<<\" cout<<\" *\"<cout<<\" *\"<cout<<\" endl;

cout<<\" cout<<\" cout<<\"

.

☆管理☆ * * * * * * * * * * *\"<* 1.增加读者 * 2.注销读者 * 3.修改读者 *\"<* * * * * * * * * * *\"<请输入你的选择:\" ;

switch(getch())

{

case'1':reader_add();break;

case'2':reader_del();break;

case'3':reader_mod();break;

case'0':return_back();break;

default:system(\"cls\");

cout<<\"\\n错误,请再输入一遍!\\n\";

}

return 0;

}

int reader::reader_add() {

.

//定义增加读者函数

.

FILE *sfp;

int i,n;

page_title();

cout<<\" ☆增加读者☆\"<cout<<\">>>请输入读者的信息<<< \"<sfp=fopen(\"students\

for(n=0;n{

fread(&stud[n],sizeof(stud[n]),1,sfp);

if(stud[n].num==0) break;

}

fclose(sfp);

do

.

{

cout<<\"请输入一个新的学号(学号从1001开始,但必须不同于已存在的学号):\";

cin>>stud[n].num;

for(i=0;i{

if(stud[n].num==stud[i].num&&n!=i)

{

cout<break;

}

}

}while(stud[n].num==stud[i].num);

cout<<\"名字: \";

.

cin>>stud[n].name;

cout<<\"年级: \";

cin>>stud[n].grade;

cout<<\"班级: \";

cin>>stud[n].clas;

cout<<\"性别: \";

cin>>stud[n].sex;

cout<<\"书名: \";

cin>>stud[n].book_name;

cout<<\"借书日期: \";

cin>>stud[n].date;

cout<<\"可借天数: \";

cin>>stud[n].avai_days;

.

sfp=fopen(\"students\

for(n=0;n{

fwrite(&stud[n],sizeof(stud[n]),1,sfp);

}

fclose(sfp);

cout<return 0;

}

int reader::reader_del() //定义删除读者的函数

{

FILE *sfp;

int i,num,s;

.

page_title();

cout<<\" ☆注销读者☆\"<if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

cout<cin>>num;

.

for(i=0,s==-1;i{

if(stud[i].num==num)

{

cout<<\"名字: \"<cout<<\"学号: \"<cout<<\"年级: \"<cout<<\"班级: \"<cout<<\"性别: \"<cout<<\"书名: \"<cout<<\"借书日期: \"<cout<<\"可借天数: \"<cout<<\"********************************************************** \"<.

cout<<\"是否确定注销该读者(1为是,0为否): \";

cin>>s;

if(s==1)

{

for(;istud[i]=stud[i+1];

}

else if(s==0)

{

return 0;

}

if(s==-1)

{

.

cout<<\"该读者不存在.\";

}

}

}

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

fwrite(&stud[i],sizeof( stud[i]),1,sfp);

}

fclose(sfp);

.

return 0;

}

int reader::reader_mod() //定义修改读者的函数

{

FILE *sfp;

int i,num,s,n;

page_title();

cout<<\" if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(i=0;i☆修改读者☆\"<.

{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

cout<cin>>num;

for(i=0,s==-1;i{

if(stud[i].num==num)

{

cout<<\"名字:\"<cout<<\"学号: \"<cout<<\"年级: \"<.

cout<<\"班级: \"<cout<<\"性别: \"<cout<<\"书名: \"<cout<<\"借书日期: \"<cout<<\"可借天数: \"<cout<<\"********************************************************** \"<cout<<\"是否确定修改该读者(1为是,0为否): \";

cin>>s;

if(s==1)

{

page_title();

cout<<\">>>请重新输入读者的信息.<<<\" <do

.

{

cout<<\"请输入一个新的学号(学号从1001开始,但必须不同于已存在的学号):\";

cin>>stud[i].num;

for(n=0;n{

if(stud[i].num==stud[n].num&&n!=i)

{

cout<<\"该学号已存在.\"<}

}

}while(stud[i].num==stud[n].num);

cout<<\"名字: \";

cin>>stud[i].name;

.

cout<<\"年级: \";

cin>>stud[i].grade;

cout<<\"班级: \";

cin>>stud[i].clas;

cout<<\"性别: \";

cin>>stud[i].sex;

cout<<\"书名: \";

cin>>stud[i].book_name;

cout<<\"借书日期: \";

cin>>stud[i].date;

cout<<\"可借天数: \";

cin>>stud[i].avai_days;

}

.

else if(s==0)

{

return 0;

}

}

}

if(s==-1)

{

cout<<\"该读者不存在. \"<}

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

fwrite(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

return 0;

}

int book::book_out() {

FILE *bfp,*sfp;

int id,i,s,l,num, avaiday;

char dates[10];

.

//定义借书函数

.

page_title();

cout<<\" ☆借书☆\\n\";

cout<<\"请输入书号:\";

cin>>id;

if((bfp=fopen(\"books\

cout<<\"无法打开文件.\\n\";

for(i=0;i{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

for(i=0;i.

{

if(id==books[i].id&&books[i].id!=0)

{

system(\"cls\");

page_title();

cout<<\" ☆书的信息☆\\n\";

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<.

cout<<\"出版时间: \"<cout<<\"读者: \"<cout<<\"读者学号: \"<cout<<\"**********************************************************\\n\";

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(l=0;l{

fread(&stud[l],sizeof(stud[l]),1,sfp);

}

fclose(sfp);

.

cout<<\"请输入你的学号:\\n\";

A: cin>>num;

for(l=0;l{

if(stud[l].getnum()==num)

{

if(books[i].store!=0)

{

cout<<\"请输入可借的天数:\\n\";

cin>>avaiday;

stud[l].setavaiday(avaiday);

cout<<\"请输入借书日期:\\n\";

cin>>dates;

.

stud[l].setdate(dates);

if((bfp=fopen(\"books\

{

cout<<\"无法打开文件.\";

}

for(s=0;s{

fread(&books[s],sizeof(books[s]),1,bfp);fclose(bfp);

if(books[s].id==books[i].id)

{

books[s].store--;

books[s].borr_num=stud[l].getnum();

strcpy(books[s].borrower,stud[l].getname());

.

strcpy(stud[l].getbook_name(),books[s].name);

cout<<\"你已经借了这本书. \";

sfp=fopen(\"students\

for(l=0;l{

fwrite(&stud[l],sizeof(stud[l]),1,sfp);

}

fclose(sfp);

}

}

}

}

else if(stud[l].getnum()!= num)

.

{

cout<<\"对不起,该学号是错误的,请再输入一遍:\\n\";

goto A;

}

}

bfp=fopen(\"books\

for(s=0;s{

fwrite(&books[s],sizeof(books),1,bfp);

}

fclose(bfp);

}

}

.

}

int book::book_in() //定义还书函数

{

page_title();

cout<<\" int i,num,id,n;

char no[]={\"None\

FILE *bfp,*sfp;

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(i=0;i☆还书☆\\n\";

.

{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

cout<<\"请输入你的学号:\";

BEFOR: cin>>num;

for(i=0;i{

if(stud[i].getnum()==num&&stud[i].getnum()!=0)

{

system(\"cls\");

page_title();

cout<<\" ☆读者信息☆\\n\";

.

cout<<\"名字:\"<cout<<\"学号: \"<cout<<\"年级: \"<cout<<\"班级: \"<cout<<\"性别: \"<cout<<\"书名: \"<cout<<\"借书日期: \"<cout<<\"可借天数: \"<cout<<\"**************************************************************\\n\";

if((bfp=fopen(\"books\

{

cout<<\"无法打开文件. \";

}

.

for(n=0;n{

fread(&books[n],sizeof(books[n]),1,bfp);

}

fclose(bfp);

cout<<\"请输入书号:\\n\";

AGAIN: cin>>id;

for(n=0;n{

if(books[n].id==id&&books[n].id!=0)

{

books[n].borr_num=0;

strcpy(books[n].borrower,no);

.

books[n].store++;

}

else if(books[n].id!=id)

{

cout<<\"对不起,这个书号是错误的,请再输入一遍:\\n\";

goto AGAIN;

}

if((bfp=fopen(\"books\

{

cout<<\"无法打开文件. \";

}

for(n=0;n{

.

fwrite(&books[n],sizeof(books[n]),1,bfp);

}

fclose(bfp);

}

stud[i].setavaiday(0);

stud[i].setbook_name(no);

stud[i].setdate(no);

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件. \";

}

for(i=0;i{

.

fwrite(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

}

else if(stud[i].getnum()!=num&&stud[i].getnum()!=0)

{

cout<<\"对不起,这个学号是不存在,请再输入一个正确的学号:\\n\";

goto BEFOR;

}

}

return_back();

}

int book::book_name() //根据书名搜书的函数

{

FILE *bfp;

int page_title();

char a[50];

int i;

page_title();

cout<<\" cout<<\"请输入书名:\";

cin>>a;

if((bfp=fopen(\"books\

cout<<\"无法打开文件.\\n\";

for(i=0;i{

.

☆搜书☆\\n\";

.

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

page_title();

cout<<\" ☆书的信息☆\\n\";

for(i=0;i{

if(strcmp(books[i].name,a)==0)

{

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<.

cout<<\"价格: \"<cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<cout<<\"出版时间: \"<cout<<\"读者: \"<cout<<\"读者学号: \"<cout << endl << endl;

}

}

return_back();

}

.

int book::book_id() //根据书号搜书函数

{

FILE *bfp;

int id, i;

page_title();

cout<<\" ☆搜书☆\\n\";

cout<<\"请输入书号:\";

cin>>id;

if((bfp=fopen(\"books\

cout<<\"无法打开问件.\\n\";

for(i=0;i{

fread(&books[i],sizeof(books[i]),1,bfp);

.

}

fclose(bfp);

page_title();

cout<<\" ☆书的信息☆\\n\";

for(i=0;i{

if(books[i].id==id&&books[i].id!=0)

{

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<cout<<\"总存量: \"<.

cout<<\"现存量: \"<cout<<\"出版社: \"<cout<<\"出版时间: \"<cout<<\"读者: \"<cout<<\"读者学号: \"<cout << endl << endl;

}

}

return_back();

return 0;

}

int book::book_pub() //根据出版社搜书函数

{

.

FILE *bfp;

int page_title();

char a[50];

int i;

page_title();

cout<<\"请输入书的出版社:\";

cin>>a;

if((bfp=fopen(\"books\

for(i=0;i{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

.

page_title();

cout<<\" ☆书的信息☆\\n\";

for(i=0;i{

if(strcmp(books[i].publish,a)==0)

{

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<.

cout<<\"出版时间: \"<cout<<\"读者: \"<cout<<\"读者学号: \"<cout << endl << endl;

}

}

return_back();

return 0;

}

int book::book_time() //根据出版时间搜书的函数

{

FILE *bfp;

int page_title();

.

int time,i;

page_title();

cout<<\" ☆搜书☆\\n\";

cout<<\"请输入书的出版时间:\";

cin>>time;

if((bfp=fopen(\"books\

cout<<\"无法打开文件.\\n\";

for(i=0;i{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

page_title();

.

cout<<\" ☆书的信息☆\\n\";for(i=0;i{

if(books[i].pub_time==time)

{

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<cout<<\"出版时间: \"<.

cout<<\"读者: \"<cout<<\"读者学号: \"<cout << endl << endl;

}

}

return_back();

return 0;

}

int book::book_writer() {

FILE *bfp;

int page_title();

char writer[10];

//根据作者搜书函数

.

int i;

page_title();

cout<<\" ☆搜书☆\\n\";

cout<<\"请输入书的作者:\\n\";

cin>>writer;

if((bfp=fopen(\"books\

cout<<\"无法打开文件.\\n\";

for(i=0;i{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

page_title();

.

cout<<\" ☆书的信息☆\\n\";

for(i=0;i{

if(strcmp(books[i].writer, writer)==0)

{

cout<<\"书名: \"<cout<<\"书号: \"<cout<<\"作者: \"<cout<<\"价格: \"<cout<<\"总存量: \"<cout<<\"现存量: \"<cout<<\"出版社: \"<cout<<\"出版时间: \"<.

cout<<\"读者: \"<cout<<\"读者学号: \"<cout << endl << endl;

}

}

return_back();

return 0;

}

int book::seach_book() {

int page_title();

page_title();

cout<<\"

//搜书次界面函数

☆搜书☆\\n\";

.

cout<<\"\\n>>>请输入查书的方式<<<\\n\";

cout<<\"\\n* 1.根据书名\\n\";

cout<<\"\\n* 2.根据书号\\n\";

cout<<\"\\n* 3.根据出版社\\n\";

cout<<\"\\n* 4.根据出版时间\\n\";

cout<<\"\\n* 5.根据作者\\n\";

cout<<\"\\n* 6.返回\\n\";

switch(getch())

{

case'1':book_name();break;

case'2':book_id();break;

case'3':book_pub();break;

case'4':book_time();break;

case'5':book_writer();break;

case'6':return_back();break;

default:system(\"cls\");

cout<<\"\\n错误,请再输入一遍!\\n\";

}

return 0;

}

int reader::reader_name() {

FILE *sfp;

int page_title();

char a[50];

int i;

.

//根据读者名字搜读者函数

.

page_title();

cout<<\" ☆搜索读者☆\\n\";

cout<<\"请输入读者的名字:\";

cin>>a;

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件.\\n\";

}

for(i=0;i{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

for(i=0;i{

if(strcmp(stud[i].name,a)==0)

{

system(\"cls\");

page_title();

cout<<\" cout<<\"名字: \"<cout<<\"学号: \"<cout<<\"年级: \"<cout<<\"班级: \"<cout<<\"性别: \"<cout<<\"书名: \"<.

☆读者信息☆\\n\";

.

cout<<\"借书日期: \"<cout<<\"可借天数: \"<}

}

return_back();

return 0;

}

int reader::reader_num() {

FILE *sfp;

int page_title();

int i,num;

page_title();

//根据读者学号搜读者函数

.

cout<<\" ☆搜索读者☆\\n\";

cout<<\"请输入读者的学号:\";

cin>>num;

if((sfp=fopen(\"students\

{

cout<<\"无法打开文件.\\n\";

}

for(i=0;i{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

for(i=0;i{

if(stud[i].num==num &&stud[i].num!=0)

{

system(\"cls\");

page_title();

cout<<\" cout<<\"名字: \"<cout<<\"学号: \"<cout<<\"年级: \"<cout<<\"班级: \"<cout<<\"性别: \"<cout<<\"书名: \"<cout<<\"借书日期: \"<.

☆读者信息☆\\n\";

.

cout<<\"可借天数: \"<}

}

return_back();

return 0;

}

int reader::seach_reader() {

int page_title();

page_title();

cout<<\" cout<<\">>>请输入搜索的方式<<<\\n\";

cout<<\"\\n* 1.根据读者的姓名.\\n\";

//搜索读者次界面

☆搜索读者☆\\n\";

cout<<\"\\n* 2.根据读者的学号.\\n\";

cout<<\"\\n* 0.返回\\n\";

switch(getch())

{

case'1':reader_name();break;

case'2':reader_num();break;

case'0':return_back();break;

default:system(\"cls\");

cout<<\"\\n错误,请再输入一遍!\\n\";

}

return 0;

}

int book::seach()

.

//搜索次界面

{

reader read;

int page_title();

page_title();

cout<<\" cout<<\"\\n\\n cout<<\" cout<<\"\\n cout<<\"\\n cout<<\" cout<<\"\\n switch(getch())

{

.

☆搜索☆\\n\";

* * * * * * * * * * *\\n\";

* 1.搜索书籍 *\\n\";

* 2.搜索读者 *\\n\";

* 0.返 回 *\\n\";

* * * * * * * * * * *\\n\";

请输入你的选择:\";

.

case'1':seach_book();break;

case'2':read.seach_reader();break;

case'0':return_back();break;

}

return 0;

}

int main()

{

book b1;

return 0;

}

default:system(\"cls\");

cout<<\"\\n错误,请再输入一遍!\\n\";

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务