-
大小: 10KB文件類型: .cpp金幣: 1下載: 0 次發(fā)布日期: 2021-06-16
- 語(yǔ)言: C/C++
- 標(biāo)簽: c++??面向?qū)ο?/b>??課程設(shè)計(jì)??
資源簡(jiǎn)介
c++ 面向?qū)ο?圖書(shū)管理系統(tǒng) 課程設(shè)計(jì)
代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
using?namespace?std;
#define?rm?5
class?book
{
public:
int?id;
int?tag;//?shi?fou?cun?zai?zhe??lei?shu;
char?name[20];
int?onshelfcount;
int?outcount;
public:
int?getid(){return?id;}
char*?getname(){return?name;}
int?getonshelfcount(){return?onshelfcount;}
int?getoutcount(){return?outcount;}
int?gettag(){return?tag;}
public:
void?addbook(int?nochar?*naint?count)
{
id=no;strcpy(namena);tag=1;
onshelfcount=count;outcount=0;
}
void?deletebook(){tag=0;}
void?disp()
{
cout< }
int?borrowbook()
{
if(tag==0)
{
cout<<“無(wú)此書(shū)“< return?0;
}
else?if(onshelfcount==0)
{
cout<<“已借完“< disp();
return?0;
}
else
{
onshelfcount--;outcount++;
disp();
cout<<“借書(shū)成功“< return?1;
}
}
int?retbook()
{
if(tag==0)
{
cout<<“無(wú)此書(shū),不能還“< return?0;
}
else?if(outcount==0)
{
cout<<“此書(shū)沒(méi)有借出,不能還“< disp();
return?0;
}
else
{
onshelfcount++;outcount--;
disp();
cout<<“還書(shū)成功“< return?1;?
}
}
};
class?Books
{
private:
book?bk[100];
int?top;
public:
Books()
{
book?b;
top=-1;
fstream?file(“book.txt“ios::in);
while(1)
{
file.read((char*)&bsizeof(b));
if(!file)?break;
top++;
bk[top]=b;
}
file.close();
}
~Books()
{
fstream?file(“book.txt“ios::out);
for(int?i=0;i<=top;i++)
{
if(bk[i].gettag()==1)
{
file.write((char*)&bk[i]sizeof(bk[i]));
}
}
file.close();
}
void?clear(){top=-1;}
book*?query(int?bookid)
{
for(int?i=0;i<=top;i++)
{
if(bk[i].getid()==bookid&&bk[i].gettag()==1)
{
return?&bk[i];
}
}
// cout<<“查無(wú)此書(shū)“< return?NULL;
}
int?addbook(int?idchar?na[]int?count)
{
book*p=query(id);
if(p==NULL)
{
top++;
bk[top].addbook(idnacount);
return?1;
}
else
{
cout<<“該書(shū)已經(jīng)存在“< return?0;
}
}
void?bookdata();
void?disp()
{
cout< for(int?i=0;i<=top;i++)
{
if(bk[i].gettag()==1)
{
bk[i].disp();
}
}
}
};
void?Books::bookdata()
{
int?choicechoice2;
char?bookname[20];
int?bookid;
int?bookcount;
book?*p;
cout<<“圖書(shū)管理“< do
{
cout<<“\t\t\t“<<“1新增圖書(shū)“< cout<<“\t\t\t“<<“2修改圖書(shū)“< cout<<“\t\t\t“<<“3刪除圖書(shū)“< cout<<“\t\t\t“<<“4查找圖書(shū)“< cout<<“\t\t\t“<<“5顯示全部圖書(shū)“< cout<<“\t\t\t“<<“6刪除全部圖書(shū)“< cout<<“\t\t\t“<<“0退出圖書(shū)管理“<
cout<<“輸入選項(xiàng):“;cin>>choice;
switch(choice)
{
case?1:
????????????cout<<“輸入圖書(shū)的編號(hào)、書(shū)名、數(shù)目:“;
cin>>bookid>>bookname>>bookcount;
Books::addbook(bookidbooknamebookcount);
評(píng)論
共有 條評(píng)論