描述
此题以及后面几题要求你设计并实现一个Book类,你可以想象这是图书馆系统的一部分。
Book类应该包含ISBN号、书名、作者和版权日期的成员,以及表示是否已经借出的成员。
创建能够返回这些成员的值的函数,以及借书和还书的函数。
将ISBN号存储为string
输入
输入有多行,每一行分别是书名,作者名,ISBN号和出版时间
输出
将所有书籍按照ISBN排序后输出
样例输入
活着 余华 9787506365437 2012-8-1 围城 钱钟书 9787020024759 1991-2 边城 沈从文 9787537823425 2002-4
样例输出
围城 钱钟书 9787020024759 1991-2 活着 余华 9787506365437 2012-8-1 边城 沈从文 9787537823425 2002-4
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
class Book{
private:
string ISBN,bname,wrt,date;
public:
void set(string bname,string wrt,string ISBN,string date){
this->bname=bname;
this->wrt=wrt;
this->ISBN=ISBN;
this->date=date;
}
friend bool cmp(Book A,Book B);
void print(){
cout<<bname<<" "<<wrt<<" "<<ISBN<<" "<<date<<endl;
}
}bk[10010];
bool cmp(Book A,Book B)
{
if((A.ISBN).compare(B.ISBN)>0)
{
return true;
}
else return false;
}
int num=0;
int main()
{
string a,b,c,d;
while(cin>>a>>b>>c>>d)
{
bk[num++].set(a,b,c,d);
}
for(int i=0;i<num-1;i++)
{
if(cmp(bk[i],bk[i+1])==true)
{
Book temp=bk[i];
bk[i]=bk[i+1];
bk[i+1]=temp;
}
}
for(int i=0;i<num;i++)
{
bk[i].print();
}
return 0;
}