void search_by_publisher(string names) //按出版社查找
void display_all() //显示全部信息 }
void read() { FILE *fp; {
for(int i=0;i if(flag==0) {cout<<\该出版社不存在!\ } {int flag=0; for(int i=0;i {if(shumu[i].get_writer()==names) { shumu[i].display (); flag=1;} } } if(flag==0) {cout<<\该作者不存在!\ } if((fp=fopen(\注意路径; rb+读写打开一个二进制文件,只允许读写数据。 {cout<<\文件打开失败\\n\ system(\ exit(0); } void write() { FILE *fp2; fread(&sum,2,1,fp); //从一个文件中读数据&sum:用于接收数据的地址(指针);4:单个元素的大小,单位是for(int i=0;i 字节;1:.元素个数,每次读取个元素;fp:提供数据的文件指针 fread(&shumu[i],sizeof(shumu[i]),1,fp);} } if((fp2=fopen(\注意路径;wb+只写打开或新建一个二进制文件;只允许写数据。 {cout<<\文件打开失败\\n\ 17 system(\ exit(0);//exit(0)表示正常退出 } }; //主函数 void main() { database Book; //界面 while (function!= '6') { cout< cout<<\cout<<\欢迎使用图书管理系统\cout<<\ cout<<\ 请选择操作\\n\cout<<\创建新书信息\cout<<\修改图书信息\cout<<\显示所有图书\cout<<\按指定条件查询书目\cout<<\按书号删除书目\cout<<\char function='0'; Book.read (); int i; fwrite(&sum,2,1,fp2); for(int i=0;i { fwrite(&shumu[i],sizeof(shumu[i]),1,fp2);}//sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间, fputc('EOF',fp2);//将字符ch写到文件指针fp所指向的文件的当前写指针的位置;EOF是End Of File 的缩写, fclose(fp2); } 用字节数表示。 表示“文件结束”。 cout<<\退出系统并保存修改\ cout<<\ (查询可按书号/ 作者/ 书名查询)\ cout<<\ cin>>function; //图书书号、书名、作者、出版社、出版时间、价格信息的录入换码符'\\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。换句话说,让所有的数据都紧跟在制表符后面输出。 18 //换码符'\\t',表示水平制表位,它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。换句话说,让所有的数据都紧跟在制表符后面输出。 newbook.display(); system(\system(\} //定义字符串 if(function=='1') { string a,b,c,d,e,f; //定义字符串 cout<<\请输入书的isbn编号\cin>>a; cout<<\请输入书名\cin>>b; cout<<\请输入书作者名\cin>>c; cout<<\请输入书的出版社\cin>>d; cout<<\请输入书的出版时间\cin>>e; cout<<\请输入书的价格\cin>>f; book newbook(a,b,c,d,e,f); Book.add(newbook); else if(function=='2') {string a,b,c,d,e,f; } 19 cin>>a; cout << \请输入需要修改的图书的编号:\ cout<<\请输入书的isbn编号\cin>>a; cout<<\请输入书名\cin>>b; cout<<\请输入书作者名\cin>>c; cout<<\请输入书的出版社\cin>>d; cout<<\请输入书的出版时间\cin>>e; cout<<\请输入书的价格\cin>>f; book newbook(a,b,c,d,e,f); Book.rebookinfo(newbook); system(\system(\ // newbook.display(); //显示所有图书信息 else if(function=='3') {cout<<\这是所有藏书:\ Book.display_all (); system(\} system(\ //按条件查询图书,输入按书号查询,输入按书名查询,输入按作者查询 else if(function=='4') { cout<<\请选择查询方式\ cout<<\按ISBN查询\ cout<<\按书名查询\ cout<<\按作者查询\ cout<<\按出版社查询\ char j; string search; cin>>j; if(j=='1') { cout<<\请输入ISBN号\ //按书号查询 cin>>search; cout<<\以下是查询结果\ system(\ Book.search_by_isbn (search); //按书号查询图书信息函数的调用 system(\ } else if(j=='2') { cout<<\请输入书名\ //按书名查询 cin>>search; cout<<\以下是查询结果\ Book.search_by_name (search); //按书名查询图书信息函数的调用 system(\ system(\ } else if(j=='3') //按作者查询 { cout<<\请输入作者名\ cin>>search; cout<<\以下是查询结果\ Book.search_by_writer (search); //按作者名查询图书信息函数的调用 20