编写一个Book类,包含name(书名)、writer(著者)、public_name(出版社)、price(价格)、number(数量)、NO(书号)等数据成员。定义成员函数setBook,用来为书籍的数据成员赋值,定义成员函数borrow和restore,分别办理借出和还回(借、还书时,暂时只完成数量的增1减1,这里的书仍是一种书的概念,随着课程进展,我们继续做真正的图书管理系统,每本书都能追踪到是谁何时借了,何时还了)业务,定义成员函数print用于输出—有关书的信息,定义set_NO与get_NO来实现修改类对象的书号与获得类对象的书号。自己写main函数,用来测试你编写的类。
/* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作者:陈丹妮
* 完成日期:2015年 3 月 22 日
* 版 本 号:v1.0
*/
#include <iostream>
#include <cstring>
using namespace std;
class Book
{
public:
void setBook(char *n,char *w,char *p,float pr,int num,int no);
void set_NO(int n);
int get_NO();
void borrow();
void restore();
void print();
private:
char name[100];
char writer[50];
char public_name[60];
float price;
int number;
int NO;
};
int main()
{
Book b;
b.setBook("Pride and Prejudice","Jane Austen","Yilin Press",19.8,10,1238);
b.print();
b.borrow();
cout<<"借出书籍后当前书柜的信息:"<<endl;
b.print();
b.restore();
cout<<"归还部分书籍后当前书柜的信息:"<<endl;
b.print();
b.set_NO(1314);
cout<<"当前需要更改书号为:"<<b.get_NO()<<endl<<endl;
cout<<"当前更改后书柜的信息为:"<<endl;
b.print();
return 0;
}
void Book::setBook(char *n,char *w,char *p,float pr,int num,int no)
{
strcpy(name,n);
strcpy(writer,w);
strcpy(public_name,p);
price=pr;
number=num;
NO=no;
}
void Book::set_NO(int n)
{
NO=n;
}
int Book::get_NO()
{
return NO;
}
void Book::borrow()
{
number--;
}
void Book::restore()
{
number++;
}
void Book::print()
{
cout<<"name: 《"<<name<<"》"<<endl;
cout<<"writer: "<<writer<<endl;
cout<<"public_name: "<<public_name<<endl;
cout<<"price: "<<price<<endl;
cout<<"number: "<<number<<endl;
cout<<"NO: "<<NO<<endl;
cout<<endl;
}
<img src="https://img-blog.csdn.net/20150322105643457?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbnVmYW5nZG9uZ2Rl/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
学习心得:有了之前的几个项目的错误积累,写起这个项目比较顺利,还是多多的练习比较有用,错误记得比较深刻。