問題描述
該系統要求建立設置的圖書管理系統,具有對圖書信息的存儲、更新、查詢、統計、排行、輸出功能,和圖書的借還及預約功能。通過此課題,熟練掌握高級程序設計語言的數據類型、程序設計語句、函數的定義和調用方法及模塊化思想。
功能要求
(1)每種圖書包含信息如:圖書序號、圖書名稱、圖書種類、圖書總庫存量、圖書現庫存量、作者、庫存地點、借還狀態等。
(2)需要實現的功能
1、該系統可用于對圖書基本信息的存儲、更新、查詢、統計、排行、輸出等操作,以實現對圖書的管理。
2、其中更新功能包括:添加信息、刪除信息、修改信息,可根據需要添加一個或多個圖書信息,也可對個別圖書信息進行適當的刪除或修改,以便隨時更新圖書信息。
3、程序中設計的查詢功能可根據需要從若干數據中查詢某個圖書信息,并且可根據四種不同的方法查詢:按名稱查詢、按種類查詢、按作者查詢、按書名和作者查詢,以滿足不同的需要。
4、實時更新圖書借還狀態和圖書庫存現狀。
(3)界面友好。
注:為了系統更加人性化,具有時代性,在咨詢老師后,我們在以上基礎上添加以下功能來豐富系統。
1、 增加讀者權限,與管理員權限加以區別,管理員需要密碼登錄,讀者需要讀者號方可登錄。
2、 讀者可以自己注冊讀者賬號,一個賬號同時最多借10本書。
3、 讀者可以自助還書,查看自己的借閱信息,以及預約書籍。
4、 讀者可以查詢書籍在館情況,預約情況等。
5、 向讀者推送書籍最高借閱和讀者的借閱排名,讀者可在自己的信息中查看。
6、 讀者也可以通過管理員在借還總臺還借書。
7、 管理員可以查看預約書到館情況,以便向預約者通知。
8、 管理員可以查看借還書總次數
9、 可以對圖書以借閱量以或檢索號進行排序觀察
注:讀者可以自己編寫測試文件,文件為txt格式,或者機子修改代碼換為其他格式
代碼
#include <iostream> #include <cstdio> #include <cstring> #include <string> #include <vector> #include <algorithm> #include <fstream> #include <cctype> #include <iomanip> #include <conio.h> using namespace std; struct student { int id;//讀者編號 string name;//讀者姓名 int borrowsum;//你已借閱多少本書,默認為0 int number;//現在還有多少本書未還,默認為0 string borrowday;//上次借閱時間,默認為0000.00.00 int b[10];//你所借書的的編號,最多10本 }; struct book { int idnum;//圖書檢索號 int BorrowCount;//圖書借閱量,初始化為0 string name;//書名 string kind;//圖書種類 double PRice;//圖書價格 int sum;//圖書總庫存存量 int nowsum;//圖書現庫存量 string author;//圖書作者 int appointment;//圖書預約量,初始化為0 bool ok;//是否可借,初始為可以 string borrowdate;//圖書最近一次借出時間,默認為0000-00-00; string returndate;//圖書最近一次歸還時間,默認為0000-00-00; string room;//館藏地 }; bool cmpByidnum(book a,book b) { return a.idnum<b.idnum; } bool cmpByCount(book a,book b) { return a.BorrowCount>b.BorrowCount; } bool cmpByBorrowsum(student a,student b) { return a.borrowsum>b.borrowsum; } bool cmpByid(student a,student b) { return a.id<b.id; } class Library { private: int borrownum;//每月借出書數量 int returnnum;//每月還書數量 vector<book> data; vector<student> data1; vector<int> betoli;//預約書到館,儲存其編號 public: Library(); void AddBook(book NewBook); //增加圖書 void DeleteBook(string bookname,string author);//刪除圖書 void BorrowBook(string name,string author);//借閱圖書 void BackBook(string name,string author,int k);//歸還圖書 void ShowAllBook(); //輸出系統所有圖書 void SearchBookPosWithname(string thebook); //按書名查詢 void SearchBookPosWithAuthor(string theauthor);//按作者查詢 void SearchBookPosWithKind(string kind);//按種類查詢 int SearchBookPosWithAB(string theauthor,string thebook);//按作者和書名查詢 int SearchBookPosWithid(int id); //按檢索號搜尋 void SortBook(int ca); //排序 void SortStudent(int ca);//按讀者借閱量排序 void Save(); //存入圖書館文件 void Save1();//存入學生文件 void Appointment(string bookname,string author);//預約圖書 void printbook(book a);//輸出某本書的所有信息 void revisebook(string name,string author);//修改某本書的信息 int SerchStudent(int id);//查詢某個讀者 //int SerchStudent1(int id);//查詢某個讀者 void AddStudent(student a);//增加一個讀者 void PrintStudent(int kid);//輸出讀者信息 int GetStudent();//返回讀者總數 int readsum(int id);//獲取某個讀者的借閱量 int getborrownum();//獲取本月外借量 int getreturnnum();//獲取本月還書量 void PrintToLi();//輸出到館預約書 }; Library::Library() { borrownum=0; returnnum=0; int AllBook,AllStudent; ifstream fin("book.txt"); if(fin) { fin>>AllBook; for(int i=0; i<AllBook; i++) { book tem; fin>>tem.idnum>>tem.name>>tem.author>>tem.price>>tem.kind>>tem.room>>tem.sum>>tem.nowsum>>tem.BorrowCount>>tem.ok>>tem.appointment>>tem.borrowdate>>tem.returndate; data.push_back(tem); } fin.close(); } //cin.clear(); //cin.sync(); ifstream tfin("student.txt"); if(tfin) { tfin>>AllStudent; for(int i=0; i<AllStudent; i++) { student tem; tfin>>tem.id>>tem.name>>tem.borrowsum>>tem.number>>tem.borrowday; for(int j=0;j<10;j++) { tfin>>tem.b[j]; } data1.push_back(tem); } tfin.close(); } } int Library::readsum(int a) { //SortStudent(1); return data1[a-1].borrowsum; } int Library::getborrownum()//獲取本月外借量 { return borrownum; } int Library::getreturnnum()//獲取本月還書量 { return returnnum; } int Library::GetStudent() { int k=(int)data1.size(); return k+1; } void Library::AddBook(book NewBook) { data.push_back(NewBook); } void Library::AddStudent(student newstudent) { data1.push_back(newstudent); } void Library::DeleteBook(string bookname,string author) { int pos = SearchBookPosWithAB(author,bookname); if (pos!=-1) { data.erase(data.begin()+pos); return ; } else cout<<"查無此書!/n"; } void Library::BorrowBook(string name,string author) { string BorrowDate; string BackDate; char c; int flag=0; SortStudent(1); int sid=-1; for (int i = 0; i <(int)data.size(); i++) { if (data[i].name==name&&data[i].author==author) { if(data[i].nowsum) { cout<<"借書讀者的讀者號是:"; cin>>sid; if(data1[sid-1].number>10) { cout<<"現你同時借了10本書!不可再借!"<<endl; break; } flag=1; data[i].nowsum=data[i].nowsum-1; data[i].BorrowCount=data[i].BorrowCount+1; cout<<"請輸入借閱日期"<<endl; cin>>BorrowDate; data[i].borrowdate=BorrowDate; cout<<"請輸入預計歸還日期(最多可借一月)"<<endl; cin>>BackDate; data[i].returndate=BackDate; data[i].ok=bool(data[i].nowsum); borrownum++; data1[sid-1].number++; for(int j=0;j<10;j++) { if(data1[sid-1].b[j]==0) data1[sid-1].b[j]=data[i].idnum; Save(); Save1(); } } else { cout<<"~~~~(>_<)~~~~ !這書被借走了!是否預約?Y/N"<<endl; cin>>c; c=toupper(c); if(c=='Y') data[i].appointment++; } } } if(!flag) cout<<"抱歉,未找到您要找的書。"<<endl; } void Library::BackBook(string name,string author,int k)//k表示還書途徑 { int c=-1; SortStudent(1); if(k!=-1)//讀者自助還書 { c=k-1; } else//讀者通過借還總臺還書 { cout<<"請輸入你的讀者號:"; cin>>c; c=c-1; } for (int i = 0; i <(int)data.size(); i++) { if (data[i].name==name&&data[i].author==author) { data[i].nowsum=data[i].nowsum+1; data[i].ok=bool(data[i].nowsum); returnnum++; if(data[i].appointment!=0) { data[i].appointment--; betoli.push_back(data[i].idnum); } for(int j=0;j<10;j++) { if(data1[c].b[j]==data[i].idnum) data1[c].b[j]=0; } data1[c].number--; break; } } Save(); Save1(); } void Library::printbook(book a) { cout<<setw(8)<<a.idnum; cout<<setw(14)<<a.name; cout<<setw(14)<<a.author; cout<<setw(14)<<fixed<<setprecision(2)<<a.price; cout<<setw(14)<<a.kind; cout<<setw(14)<<a.room; cout<<setw(14)<<a.sum; cout<<setw(14)<<a.nowsum; cout<<setw(14)<<a.BorrowCount; cout<<setw(10)<<(a.ok==0?"不可借":"可借"); cout<<setw(14)<<a.appointment; cout<<setw(14)<<a.borrowdate; cout<<setw(14)<<a.returndate<<endl; // cout<<endl; } void Library::PrintToLi() { SortBook(1); int k=(int)betoli.size(); if(!k) cout<<" 暫時無預約書到館!"<<endl; else { cout<<" 到館的預約書有:/n"; for(int i=0;i<k;i++) { printbook(data[betoli[i]-1]); } } } void Library::PrintStudent(int kid) { int id=kid-1; //id=SerchStudent(id); SortStudent(1); SortBook(1); //SortStudent(1); cout<<setw(8)<<data1[id].id; cout<<setw(8)<<data1[id].name; cout<<setw(14)<<data1[id].borrowsum; cout<<setw(18)<<data1[id].number; cout<<setw(14)<<data1[id].borrowday<<endl; if(data1[id].number) { cout<<"你當前借了這些書:/n"; cout<<setw(16)<<"檢索號"<<setw(16)<<"書名"<<setw(16)<<"作者"<<endl; for(int i=0;i<10;i++) { if(data1[id].b[i]!=0) cout<<setw(16)<<data[data1[id].b[i]-1].idnum<<setw(16)<<data[data1[id].b[i]-1].name<<setw(16)<<data[data1[id].b[i]-1].author<<endl; } } else cout<<"你當前并未借任何書,快去借本書看看吧!/n"; } void Library::ShowAllBook() { //system("cls"); cout<<setw(8)<<"檢索號"<<setw(14)<<"書名"<<setw(14)<<"作者"<<setw(14)<<"價格"<<setw(14)<<"種類"<<setw(14)<<"館藏地"<<setw(14)<<"總庫存量"<<setw(14)<<"在館量"<<setw(14)<<"借閱量"<<setw(10)<<"是否可借"<<setw(14)<<"預約量"; cout<<setw(14)<<"借出時間"<<setw(14)<<"歸還時間"<<endl; for (int i = 0; i <(int)data.size(); i++) { //cout<<endl; printbook(data[i]); //cout<<endl; /*cout<<setw(6)<<data[i].idnum; cout<<setw(16)<<data[i].name; cout<<setw(8)<<data[i].author; cout<<setw(6)<<fixed<<setprecision(2)<<data[i].price; cout<<setw(6)<<data[i].kind; cout<<setw(16)<<date[i].room; cout<<setw(6)<<data[i].sum; cout<<setw(6)<<data[i].nowsum; cout<<setw(6)<<data[i].BorrowCount; cout<<setw(6)<<(data[i].borrow==0?"不可借":"可借"); cout<<setw(6)<<date[i].appointment; cout<<setw(14)<<date[i].borrowdate; cout<<setw(14)<<date[i].returndate<<endl;*/ } } int Library::SerchStudent(int id) { int m=-1; for (int i = 0; i <(int)data1.size(); i++) { if (data1[i].id==id) { return i; } } return m; } void Library::SearchBookPosWithname(string thebook)//按書名查詢 { int flag=0; for (int i = 0; i <(int)data.size(); i++) { if (data[i].name==thebook) { printbook(data[i]); flag=1; } } if(!flag) cout<<"查無此書!/n"; } void Library::SearchBookPosWithAuthor(string theauthor)//按作者查詢 { bool flag=false; for (int i = 0; i <(int)data.size(); i++) { if (data[i].author==theauthor) { flag=true; printbook(data[i]); } } if(!flag) cout<<"查無此作者的書!"; } void Library::SearchBookPosWithKind(string kind)//按種類查詢 { bool flag=false; for (int i = 0; i <(int)data.size(); ++i) { if (data[i].kind==kind) { flag=true; printbook(data[i]); } } if(!flag) cout<<"查無此類書!"; } int Library::SearchBookPosWithAB(string theauthor,string thebook)//按作者和書名查詢 { for (int i = 0; i <(int)data.size(); ++i) { if (data[i].author==theauthor&&data[i].name==thebook) { printbook(data[i]); return i; } } cout<<"查無此書!"; return -1; } int Library::SearchBookPosWithid(int id) { for (int i = 0; i <(int)data.size(); i++) { if (data[i].idnum==id) { return i; } } return -1; } void Library::SortBook(int ca) //排序 { if (ca==0) //按借閱量排序 { sort(data.begin(),data.end(),cmpByCount); } else //按檢索號排序 { sort(data.begin(),data.end(),cmpByidnum); } } void Library::SortStudent(int ca) { if(ca==0)//按借閱量排序 sort(data1.begin(),data1.end(),cmpByBorrowsum); else sort(data1.begin(),data1.end(),cmpByid);//按讀者號排序 } void Library::Save() //存入書籍文件 { ofstream fout("book.txt"); if (fout) { fout<<data.size()<<endl; //book p; for (int i = 0; i <(int)data.size(); i++) { fout<<data[i].idnum<<" "<<data[i].name<<" "<<data[i].author<<" "<<data[i].price<<" "<<data[i].kind<<" "<<data[i].room<<" "<<data[i].sum<<" "<<data[i].nowsum<<" "<<data[i].BorrowCount<<" "<<data[i].ok<<" "<<data[i].appointment<<" "<<data[i].borrowdate<<" "<<data[i].returndate<<" "<<endl; } fout.close(); } } void Library::Save1() //存入學生文件 { ofstream fout("student.txt"); if (fout) { fout<<data1.size()<<endl; //student p; for (int i = 0; i <(int)data1.size(); i++) { fout<<data1[i].id<<" "<<data1[i].name<<" "<<data1[i].borrowsum<<" "<<data1[i].number<<" "<<data1[i].borrowday; for(int j=0;j<10;j++) { fout<<" "<<data1[i].b[j]; } fout<<endl; } fout.close(); } } void Library::revisebook(string name,string author)//修改圖書 { string Room,Kind; int num,k=0; printf("你要修改的內容是:/n"); printf(" 1.館藏地修改/n"); printf(" 2.圖書總庫存量修改/n"); printf(" 3.圖書所屬種類修改/n"); printf(" 4.退出/n"); for (int i = 0; i <(int)data.size(); i++) { if (data[i].author==author&&data[i].name==name) { k=i; break; } } int cho; do { cin>>cho; switch(cho) { case 1: { cout<<"請輸入新的館藏地:/n"; cin>>Room; data[k].room=Room; break; } case 2: { cout<<"請輸入新的總庫存量:/n"; cin>>num; data[k].sum=num; break; } case 3: { cout<<"請輸入圖書所屬新種類:/n"; cin>>Kind; data[k].kind=Kind; break; } } } while(cho<4); } void Library::Appointment(string bookname,string author)//預約圖書 { for (int i = 0; i <(int)data.size(); i++) { if (data[i].author==author&&data[i].name==bookname) { if(data[i].nowsum>0) printf("館內有書,你無須預約!/n"); else { data[i].appointment++; printf("預約成功!"); } } } } int main() { cout.setf(ios::left);//左對齊 Library mybook; char mm[6];//密碼數組 // mybook.PrintStudent(0); cout<<" 歡迎使用圖書管理系統"<<endl; cout<<"請選擇你的登錄選項:/n"; cout<<" 1.管理員登錄"<<endl; cout<<" 2.讀者登錄"<<endl; int cho,start,kk=1; cin>>start; switch(start) { case 1: { char passWord[]="192021"; // string passwdInput; cout<<"請輸入管理員口令:"; do{ kk=1; for(int i=0;i<6;i++) { mm[i]=getch(); cout<<"*"; } cout<<endl; for(int i=0;i<6;i++) { if (mm[i]!=password[i]) { cout<<"請輸入正確密碼!"<<endl; kk=0; break; } } }while(!kk); do { // cout<<" 歡迎使用圖書管理系統"<<endl; cin.clear(); cin.sync(); //system("cls"); cout<<" 1.所有圖書目錄 "<<endl; cout<<" 2.查詢圖書 "<<endl; cout<<" 3.增加圖書 "<<endl; cout<<" 4.刪除圖書 "<<endl; cout<<" 5.借閱圖書 "<<endl; cout<<" 6.歸還圖書 "<<endl; cout<<" 7.修改圖書信息 "<<endl; cout<<" 8.本月借還統計 "<<endl; cout<<" 9.預約書到館情況 "<<endl; cout<<" 10.退出 "<<endl; cout<<"-------------------------------------------------------------------------------------------------------------------"<<endl; cout<<" 請選擇功能,輸入指令 "<<endl; cin>>cho; switch(cho) { case 1: { int cho2; do { mybook.ShowAllBook(); cout<<"-------------------------------------------------------------------------------------------------------------------------------------------------------------"<<endl; cout<<"0:按借閱量排序 , 1:按索引號排序 ,3:退出"<<endl; cin>>cho2; switch(cho2) { case 0: mybook.SortBook(0); break; case 1: mybook.SortBook(1); break; } } while (cho2<2); break; } case 2: { cout<<" 1.按書名查詢 "<<endl; cout<<" 2.按作者查詢 "<<endl; cout<<" 3.按種類查詢 "<<endl; cout<<" 4.按書名和作者查詢 "<<endl; cout<<" 5.退出 "<<endl; cout<<" 請選擇功能,輸入指令 "<<endl; int cho3; do { string Name,AutHor,Kind; cin>>cho3; switch(cho3) { case 1: cout<<"請輸入書名!"<<endl; cin>>Name; mybook.SearchBookPosWithname(Name); //按書名查詢 break; case 2: cout<<"請輸入作者!"<<endl; cin>>AutHor; mybook.SearchBookPosWithAuthor(AutHor);//按作者查詢 break; case 3: cout<<"請輸入種類!"<<endl; cin>>Kind; mybook.SearchBookPosWithKind(Kind);//按種類查詢 break; case 4: cout<<"請輸入作者和書名!"<<endl; cin>>AutHor>>Name; mybook.SearchBookPosWithAB(AutHor,Name);//按作者和書名查詢 break; } } while(cho3<=4&&cho3>=1); break; } case 3: //增加圖書 { book temp; cout<<"請輸入檢索號:"; cin>>temp.idnum; while (mybook.SearchBookPosWithid(temp.idnum)>-1) { cout<<"檢索號重復啦!~~~~(>_<)~~~~ !"<<endl; cin>>temp.idnum; } cin.clear(); cin.sync(); cout<<"書名:"; cin>>temp.name; cout<<"作者:"; cin>>temp.author; cout<<"價格:"; cin>>temp.price; cout<<"種類:"; cin>>temp.kind; cout<<"館藏地址:"; cin>>temp.room; cout<<"數量:"; cin>>temp.sum; temp.nowsum=temp.sum; temp.BorrowCount=0; temp.ok=true; temp.appointment=0; temp.borrowdate="0000.00.00"; temp.returndate="0000.00.00"; mybook.AddBook(temp); mybook.Save(); cout<<"信息保存成功"<<endl; break; } case 4: //刪除圖書 { string bookname,bookauthor; cout<<"請輸入書名和作者:"<<endl; cin>>bookname>>bookauthor; mybook.DeleteBook(bookname,bookauthor); break; } case 5: //借書 { string bookname,bookauthor; cout<<"請輸入要借的書名和作者:"<<endl; cin>>bookname>>bookauthor; mybook.BorrowBook(bookname,bookauthor); mybook.Save(); break; } case 6: //還書 { string bookname,bookauthor; cout<<"請輸入要還的書名和作者:"<<endl; cin>>bookname>>bookauthor; mybook.BackBook(bookname,bookauthor,-1); mybook.Save(); break; } case 7: { string name,author; cout<<"請輸入要修改的書名和作者:"<<endl; cin>>name>>author; mybook.revisebook(name,author); break; } case 8: { printf(" 本月借書%d次/n",mybook.getborrownum()); printf(" 本月還書%d次/n",mybook.getreturnnum()); break; } case 9: { mybook.PrintToLi(); cout<<"-------------------------------------------------------------------------------------------------------------------"<<endl; break; } } } while (cho<10); break; // mybook.Save(); } case 2: { int bh,cho,k; cout<<"請輸入你的讀者編號:/n"; cin>>bh; if(mybook.SerchStudent(bh)==-1) { int n; cout<<"你不是此系統讀者,是否注冊?/n"; cout<<" 1.注冊/n"; cout<<" 2.我再想想/n"; cin>>n; student temp; if(n==1) { cout<<"請輸入你的姓名:"; cin>>temp.name; cin.clear(); cin.sync(); temp.id=mybook.GetStudent(); temp.borrowsum=0; temp.number=0; temp.borrowday="0000.00.00"; for(int i=0;i<10;i++) { temp.b[i]=0; } mybook.AddStudent(temp); mybook.Save1(); //cout<<"信息保存成功"<<endl; cout<<" 注冊成功!請記住你的讀者號,若忘記請聯系管理員!/n"; cout<<" 姓名:"<<temp.name<<endl; cout<<" 讀者號:"<<temp.id<<endl; k=temp.id; } else break; } else { k=bh; } do { //cout<<" 歡迎使用圖書管理系統"<<endl; cin.clear(); cin.sync(); //system("cls"); cout<<" 1.所有圖書目錄 "<<endl; cout<<" 2.查詢圖書 "<<endl; cout<<" 3.歸還圖書 "<<endl; cout<<" 4.預約圖書"<<endl; cout<<" 5.查看我的借閱信息 "<<endl; // cout<<" cout<<" 6.退出 "<<endl; cout<<" 請選擇功能,輸入指令 "<<endl; cin>>cho; switch(cho) { case 1: { int cho2; do { mybook.ShowAllBook(); cout<<"-------------------------------------------------------------------------------------------------------------------------------------------------------------"<<endl; cout<<"0:按借閱量排序 , 1:按索引號排序 ,3:退出"<<endl; cin>>cho2; switch(cho2) { case 0: mybook.SortBook(0); break; case 1: mybook.SortBook(1); break; } } while (cho2<2); break; } case 2: { cout<<" 1.按書名查詢 "<<endl; cout<<" 2.按作者查詢 "<<endl; cout<<" 3.按種類查詢 "<<endl; cout<<" 4.按書名和作者查詢 "<<endl; cout<<" 5.退出 "<<endl; cout<<" 請選擇功能,輸入指令 "<<endl; int cho3; do { string Name,AutHor,Kind; cin>>cho3; switch(cho3) { case 1: cout<<"請輸入書名!"<<endl; cin>>Name; mybook.SearchBookPosWithname(Name); //按書名查詢 break; case 2: cout<<"請輸入作者!"<<endl; cin>>AutHor; mybook.SearchBookPosWithAuthor(AutHor);//按作者查詢 break; case 3: cout<<"請輸入種類!"<<endl; cin>>Kind; mybook.SearchBookPosWithKind(Kind);//按種類查詢 break; case 4: cout<<"請輸入作者和書名!"<<endl; cin>>AutHor>>Name; mybook.SearchBookPosWithAB(AutHor,Name);//按作者和書名查詢 break; } } while(cho3<=4&&cho3>=1); break; } case 3: //還書 { string bookname,bookauthor; cout<<"請輸入要還的書名和作者:"<<endl; cin>>bookname>>bookauthor; mybook.BackBook(bookname,bookauthor,k); break; } case 4://預約圖書 { string bookname,author; cout<<"請輸入你要預約書的書名和作者:"<<endl; cin>>bookname>>author; mybook.Appointment(bookname,author);//預約圖書 break; } case 5://查閱個人信息 { //mybook.SortStudent(1); cout<<setw(8)<<"讀者號"<<setw(8)<<"姓名"<<setw(14)<<"歷史借閱次數"<<setw(18)<<"現在借閱書個數"<<setw(14)<<"上次還書時間"<<endl; mybook.PrintStudent(k); mybook.SortStudent(0); printf("你在所有讀者中借閱量排名第 %d 位/n",mybook.SerchStudent(k)+1); printf("所有讀者中的最高借閱量是:%d次/n",mybook.readsum(1)); mybook.SortStudent(1); cout<<"-------------------------------------------------------------------------------------------------------------------"<<endl; break; } } } while (cho<6); break; } } mybook.Save(); mybook.Save1(); return 0; }新聞熱點
疑難解答