資源簡介
c++課程實踐寫的,圖書管理系統,大一就要寫這個是真的心酸
代碼片段和文件信息
#include
#include?//控制臺數據輸入輸出的函數
#include//文件流
#include?//控制數據輸出格式
#include
?
const?int?Maxr=100?;//最多的讀者數?
const?int?Maxb=100;?//最多的圖書數
const?int?Maxbor=5;?//每位讀者最多借的書
?
?
?
class?Book?
{//圖書類,實現對圖書的描述,圖書的編號,書名,借出,還入等功能
private:?
int?tag;?//刪除標記?1:已刪?0:未刪
int?no;?//圖書編號
char?name[20];?//書名???
char?author[20];//作者
char?fenlei[20];//分類號
char?cbs[20];?//出版社
int?cbtime;//出版時間
double?bookprice;//圖書價格
int?onshelf;?//是否再架?1:再架?2:已借?
public:?
Book(){;}?
char?*getname()
{//獲取書名
?return?name;?
}?
char?*getauthorname()?
{//獲取作者名
?return?author;
}?
?
char?*getfenlei()
{//獲取分類號
?return?fenlei;
}
char?*getcbsname()
{//獲取出版社名?
?return?cbs;?
}?
int?getcbtime()
{//獲取出版時間
?return?cbtime;
}
double?getbookprice()
{//獲取圖書價格
?return?bookprice;
}
int?getno()
{//獲取圖書編號
?return?no;?
}
int?gettag()
{//獲取刪除標記?
?return?tag;?
}
?
void?setname(char?na[])?
{//設置書名
?strcpy(namena);?
}?
void?setauthorname(char?aa[])
{//設置作者名
strcpy(authoraa);
}
void?setfenlei(char?fe[])
{//設置分類號
?strcpy(fenleife);
}
void?setcbs(char?ca[])
{//設置出版社
?strcpy(cbsca);
}
?
void?setcbtime(int?time)?
{//設置時間
?cbtime=time;
}?
void?setbookprice(double?price)
{//設置圖書價格
?bookprice=price;
}
void?setonshelf(int?oa)?
{
?onshelf=oa;
}?
void?delbook()
{//刪除圖書
?char?i;
?cout<<“確定刪除嗎?Y/N??“< ?cin>>i;
?if(i==‘y‘||i==‘Y‘)
?tag=1;
}?
void?addbook(int?nchar?*nachar?*aachar?*fechar?*caint?timedouble?priceint?oa)?
{//增加圖書?
?tag=0;?
?no=n;?
?strcpy(namena);
?strcpy(authoraa);
?strcpy(cbsca);
?strcpy(fenleife);
?cbtime=time;
?bookprice=price;
?onshelf=oa;?
}?
int?borrowbook()?
{//借書操作?
?if?(onshelf>0)?
?{?
?onshelf--;
?return?1;?
?}?
?return?0;?
}?
void?retbook()
{//還書操作
?onshelf++;?
}?
void?disp()?
{//輸出圖書?
?cout< }?
};?
?
?
class?BDatabase?
{//圖書庫類,實現對圖書的維護,查找,刪除等?
private:?
int?top;?//圖書記錄指針
Book?book[Maxb];?//圖書記錄
public:?
BDatabase()?
{//構造函數,將book.txt讀到book[]中?
?Book?b;?
?top=-1;?
?fstream?file(“book.txt“ios::in);?
?while?(1)?
?{?
?file.read((char?*)&bsizeof(b));?
?if?(!file)?
??break;?
?top++;?
?book[top]=b;?
?}?
?file.close();?
}?
void?clear()?
{//全刪?
?char?i;
?cout<<“確定全部刪除嗎?Y/N??“< ?cin>>i;
?if(i==‘y‘||i==‘Y‘)
?top=-1;?
}?
int?addbook(int?nchar?*nachar?*aachar?*fechar?*caint?time?double?priceint?oa)?
{//增加圖書?
?Book?*p=query1(n);?
?if?(NULL==p)?
?{?
?top++;?
?book[top].addbook(nnaaafecatimepriceoa);?
?return?1;?
?}?
?return?0;?
}?
Book?*query1(int?bookid)?
{//按編號查找圖書?
?for(int?i=0;i<=top;i++)?
?if(book[i].getno()==bookid?&&book[i].gettag()==0)?
?{?
??return?&book[i];?
?}?
?return?NULL;?
}
Book?*query2(char?a[])?
{//按書名查找圖書
?Book?*e;
?int?r=0;
?for(int?i=0;i<=top;i++)
?if(strcmp(book[i].getname()
- 上一篇:c++小區物業管理系統
- 下一篇:C語言實現學生信息管理系統源代碼文件
評論
共有 條評論