程序设计综合课程设计
}
int bau_search(char *bau) //按作者查找书籍
{
for(int i=0;i if(strcmp(books[i].get_bauthor(),bau)==0)//判断 return i; return -1; } int rn_search(char *rn) //按借阅人查找书籍 { for(int i=0;i if(strcmp(books[i].get_rname(),rn)==0)//判断 return i; return -1; } void revise(Book book,int i)//带参的修改书籍函数 {books[i].copy(book);} //调用Book结构体copy函数 void deleteBook(int index)//带参的删除书籍资料函数 { for(int i=index;i books[i].copy(books[i+1]);//用后面的地址将当前的地址覆盖 length--; } void show_book()//不带参的显示书籍函数 { cout<<\书****籍****信****息****列****表 **********************\\n\\n\ cout<<\书号\ cout.width(10); cout<<\书名\ 27 程序设计综合课程设计 cout.width(20); cout<<\作者\ cout.width(10); cout<<\状态\ cout.width(10); cout<<\借阅人\\n\ for(int i=0;i cout< cout< cout< cout< void show_book(int i)//带参的显示书籍函数 { cout<<\书****籍****信****息****列****表**********************\\n\\n\ cout<<\书号\ cout.width(10); cout<<\书名\ cout.width(20); cout<<\作者\ cout.width(10); cout<<\状态\ 28 程序设计综合课程设计 cout.width(10); cout<<\借阅人\\n\ cout< cout< cout< cout< void br_book()//读者借、还书功能函数 { ReaderManage reader; int choi; //选择 int a; //图书状态指标(1已借2在架) char sh[10]; //需要还书的书号 char dz[10]; //读者姓名 cin>>sh; int index=bnu_search(sh); //定义一个变量等于查找到的书号 if(index>=0) { if(books[index].tag==1) //已借 a=1; if(books[index].tag==0) //在架 a=2; switch(a) { case 1: 29 程序设计综合课程设计 cout<<\该书目前状态为<已借出>\\n\ cout<<\请选择您需要的服务:1:还书 0:返回\\n\ cin>>choi; cin.ignore(); //清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响 if(choi!=1&&choi!=0) cin>>dz; cin.ignore(); int index1=reader.search(dz); if(index1==-1) 册!\ { cout<<\操作有误,请重新选择(0/1)!\\n\ return; } else if(choi==1) { cout<<\请输入您的姓名:\ { cout<<\对不起,系统无该读者记录,新用户请先注 return; } else { strcpy(dz,\将读者姓名已空白代替 books[index].set_rname(dz);//借阅人一项变为空白 books[index].set_tag(0);//图书状态变为在架 cout<<\还书成功!\ } }break; 30