- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《面向对象程序设计》
课程设计报告
专 业: 计算机科学与技术
姓 名:
学 号:
指导教师:
二O一一 年 九 月 日
一、课程设计问题描述
1.图书信息管理系统
图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:
1、系统以菜单方式工作
2、图书信息录入功能(图书信息用文件保存)
3、图书信息浏览功能
4、查询和排序功能:(至少一种查询方式)
1)按书名查询
2)按作者名查询
5、图书信息的删除与修改
二、课程设计目的和要求:
经过一个学期的《C语言程序设计》课程的学习,已经有了一定地程序设计基础,但是要学好C语言程序设计这门课程,不仅要认真阅读课本知识和从事课堂学习,更重要的是要进行上机实践,通过上机实践才能增强和巩固知识。
具体要求:
1.每生做1题。学号尾数为0,5的学生做第1题;学号尾数为1,6的学生做第2题;学号尾数为2,7的学生做第3题;学号尾数为3,8的学生做第4题;学号尾数为4,9的学生做第5题。所有题目请用多文件方式实现。
2.学生需交课程设计报告和软件。课程设计报告需存档。
报告内容主要包括:
·设计题目
·设计内容
·系统环境(包括硬件环境和软件环境)
·设计思想描述
·程序结构(包括类设计、主程序设计及流程图)
·设计中遇到的问题及解决方案
·程序测试案例
·收获与体会
·参考文献
3.课程设计1个学分,成绩按“优、良、中,及格、不及格”五级等制记分。
三、 系统设计(算法分析)
1、图书信息管理系统的功能结构
(1) 图书信息:图书编号,书名
(2) 图书维护:新增,更改,删除,查找,显示,全删,退出
(3) 读者信息:读者编号,读者姓名
(4) 读者维护:新增,更改,删除,查找,显示,全删,退出
(5) 借书:读者编号,图书编号
(6)借书:读者编号,图书编号
2、流程图
3、功能和实现
图书信息管理的相关功能由相应的类和函数来实现。
(1)图书信息的记录通过Book类实现
(2)图书维护通过BDatebase类实现
(3)读者信息的记录通过Reader类实现
(4)读者维护通过RDatebase类实现
(5)借书和还书通过主函数实现
四、程序源代码
//类.h
#include iostream
#include iomanip
#include string
#include fstream//输入/输出文件流类
using namespace std;
const int Maxreader=100;//最多的读者
const int Maxbook=100;//最多的图书
const int Maxborrow=5;//每位读者最多借五本书
//图书类,实现对图书的描述,图书的编号,书名,借出,还入等
class Book
{
private:
int sign;//删除标记 1:已删 0:未删
int no;//图书编号
char name[20];//书名
int onshelf;//是否在架 1:在架 2:已借
public:
Book(){}
char *getname() { return name; }//获取姓名
int getno(){ return no; }//获取图书编号
int getsign(){ return sign; }//获取删除标记
void setname(char na[]) { strcpy(name,na); }//设置书名
void deletebook(){ sign=1;}//删除图书
void addbook(int n,char *na)
{
sign=0;
no=n;
strcpy(name,na);
onshelf=1;
}//增加图书
int borrowbook()
{
if (onshelf==1)
{
onshelf=0;
return 1;
}
return 0;
}//借书操作
void returnbook() { onshelf=1; }//还书操作
void display()
{
cout setw(6) n
文档评论(0)