已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计 C 语言 课程设计 设计说明书 图书管理系统的设计与实现 起止日期 年 月 日 至 年 月 日 学生姓名 班级 学号 成绩 指导教师 签字 计算机与通信学院计算机与通信学院 年 月 日 图书管理系统图书管理系统 一一 需求分析需求分析 图书馆是目前生活中除了网络外的另一个获取知识的重要场所 利用图书 管理系统对图书记录进行统一管理 包括新增图书记录 更改图书记录 删除 图书记录等功能 实现图书管理工作的系统化 规范化和自动化 为图书管理 提供便利 同时是学习完 面向对象程序设计 课程后进行的一次全面的综合 练习 有助于加深对面向对象程序设计中基础理论和基本知识的理解 培养了 实践能力 促进理论与实践的结合 二二 设计要求 设计要求 1 图书信息包括 登录号 书名 作者名 分类号 出版单位 出版时 间 价格等 试设计一图书信息管理系统 使之能提供以下功能 2 系统以菜单方式工作 3 图书信息录入功能 图书信息用文件保存 输入 4 图书信息浏览功能 输出 5 查询和排序功能 至少一种查询方式 算法 6 按书名查询 7 按作者名查询 8 图书信息的删除与修改 可选项 三三 概要设计概要设计 1 类的设计 类的设计 Book 类的设计 内部函数流程图 Class Book 获 取 图 书 类 型 获 取 书 名 获 取 图 书 编 号 获 取 删 除 标 志 设 置 书 名 设 置 类 型 删 除 图 书 增 加 图 书 输 出 图 书 BDatabase 类的设计 Class BDatabase 图 书 记 录 删 除 全 部 记 录 增 加 记 录 查 找 图 书 记 录 图 书 库 函 数 主函数流程图 4 多态的实现多态的实现 class People public virtual void card cout card people endl class Student public People public virtual void card cout card student endl 四 详细设计 四 详细设计 define StrNum 20 define Type 20 include include include include 输入 输出文件流类 using namespace std const int Maxb 100 最多可存储的图书 class People public virtual void card cout card people endl class Student public People public virtual void card cout card student endl class Book private int lab 删除标记 int num 图书编号 int add 增加标记 char number StrNum 编号 char bookname StrNum 书名 char bookkind Type 图书类型 public Book char getkind 获取图书类型 return bookkind Type char getname 获取书名 return bookname StrNum int getnum 获取图书编号 return num int getlab 获取删除标记 return lab void setname char na 设置书名 strcpy bookname na void setkind char kin 设置类型 strcpy bookkind kin void delbook 删除图书 lab 1 void addbook int n char na char kin 增加图书 lab 0 num n strcpy bookname na strcpy bookkind kin void disp 输出图书 cout flags ios left 设置对齐的标志位为左 cout setw 15 num setw 20 bookname setw 15 bookkind endl 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 if file break top book top b file close void clear 全删 top 1 int addbook int n char na char kin 增加图书 Book p query n if NULL p top book top addbook n na kin return 1 return 0 Book query int bookid 查找图书 for int i 0 i top i if book i getnum bookid return NULL void disp 图书库 for int i 0 i top i if book i getlab 0 book i disp BDatabase 析构函数 将 book 写到 book txt 文件中 实现文 本的写入 fstream file book txt ios out for int i 0 i top i if book i getlab 0 file write char file close void main BDatabase BookDB char choice char bname 40 char bkind 40 char newType 20 int bookid Book b while choice 0 cout t n cout n n cout t t t 图 书 管 理 系 统 n n cout t t t1 新增图书记录 n cout t t t2 更改图书记录 n cout t t t3 删除图书记录 n cout t t t4 查找图书记录 n cout t t t5 显示图书记录 n cout t t t6 清空全部记录 慎用 n cout t t t0 退出系统 n cout t t t7 人员 n cout n n cout t n cout choice switch choice case 1 cout 输入图书编号 bookid cout 输入图书类型 newType cout 输入图书书名 bname BookDB addbook bookid bname newType break case 2 cout 输入图书编号 bookid b BookDB query bookid if b NULL cout 该图书不存在 endl break cout 输入新的书名 bname b setname bname cout 输入新的类型 bkind b setkind bkind break case 3 cout 读入图书编号 bookid b BookDB query bookid if b NULL cout 该图书不存在 endl break char tg1 cout 确定要删除此记录吗 Y N tg1 if tg1 n cout 已成功删除该书记录 endl break case 4 cout 读入图书编号 bookid b BookDB query bookid if b NULL cout 该图书不存在 endl break cout disp break case 5 cout disp break case 6 char tg2 cout 确定要清空所有记录吗 Y N tg2 if tg2 n cout 已成功清空记录 endl break case 0 break default cout card ref card break 五五 用户使用说明用户使用说明 本系统实现了图书管理系统的典型功能 包括查询所有记录的信息 添加 查找等功能 基本符合设计要求 利用类的封装实现了一定的安全性 函数的 实现与调用在主函数中实现 但在记录查询上仍有缺陷 有待于完善 六 实验心得 六 实验心得 1 通过实验加深了对 c 的了解 在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 一带一路国家糖尿病防治经验借鉴
- 会计信息质量检查发现的问题、原因分析及对策建议
- 企业成本管理方法与措施(9)-成本管理论文-管理论文
- 医学论文的摘要格式
- 温州大学本科毕业设计论文的撰写规范及要求
- 合并外周动脉疾病心源性脑卒中抗栓治疗方案
- 合并肝硬化的肝癌患者营养支持方案
- 律师实务案例分析
- 302男宿舍的蜕变记喜剧小品剧本润色版本
- 请求权基础案例分析
- 2025年信息安全行业投资趋势与盈利模式研究报告
- 小学数学期末成绩质量分析报告
- 2025-2026学年苏教版(2024)小学科学三年级上册(全册)课时练习及答案(附目录P102)
- 2024年BRCGS包装材料全球标准第7版全套管理手册及程序文件(可编辑)
- 2025年上海公务员考试(城市建设管理)历年参考题库含答案详解(5卷)
- 2026步步高六册同步物理必修2-第七章 2 万有引力定律
- 傣文教学课件
- 设立特种设备安全管理机构的标准
- 红红火火中国年课件
- 数学组教学比武活动方案
- 2025年内蒙古航开城市建设投资有限责任公司及子公司招聘笔试参考题库含答案解析
评论
0/150
提交评论