程序课程设计报告 图书信息管理系统.docx

上传人:b****4 文档编号:12057001 上传时间:2023-04-16 格式:DOCX 页数:17 大小:319.51KB
下载 相关 举报
程序课程设计报告 图书信息管理系统.docx_第1页
第1页 / 共17页
程序课程设计报告 图书信息管理系统.docx_第2页
第2页 / 共17页
程序课程设计报告 图书信息管理系统.docx_第3页
第3页 / 共17页
程序课程设计报告 图书信息管理系统.docx_第4页
第4页 / 共17页
程序课程设计报告 图书信息管理系统.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

程序课程设计报告 图书信息管理系统.docx

《程序课程设计报告 图书信息管理系统.docx》由会员分享,可在线阅读,更多相关《程序课程设计报告 图书信息管理系统.docx(17页珍藏版)》请在冰豆网上搜索。

程序课程设计报告 图书信息管理系统.docx

程序课程设计报告图书信息管理系统

 

信息科学与技术学院

程序设计基础课程设计报告

 

题目名称:

图书信息管理系统设计

学生姓名:

学号:

专业班级:

计算机科学与技术11级

(一)班

指导教师:

 

2012年6月28日

目录

1.课程设计目的3

1.1课程设计目的:

3

1.2课程设计题目:

3

1.3题目要求:

3

2.总体设计5

2.1总体组成框图:

5

2.2总体流程图:

6

3.详细设计7

3.1图书信息的增添模块7

3.1.1函数功能:

7

3.1.2函数具体内容:

7

3.1.3函数流程图:

9

3.2图书信息的查询模块9

3.2.1函数功能:

9

3.2.2函数介绍:

9

3.2.3函数流程图:

10

3.3图书信息的删除模块10

3.3.1函数功能:

10

3.3.2函数具体内容:

10

3.4图书信息系统的主要函数11

3.4.1函数功能:

11

3.4.2函数的流程图:

12

4、运行结果13

4.1主界面13

4.2输入图书信息14

4.3查找图书信息14

4.4更改图书信息16

4.5删除图书信息18

5、课程设计总结19

6、参考文献20

 

1.课程设计目的

1.1课程设计目的:

《C++程序设计》是计算机科学与技术专业的必修课。

自己做一个课程设计是学习完本书后进行的一次全面的综合性练习。

其目的在于加深对C++编程的理解,培养学生的实践能力,促进理论与实践的结合。

通过课程设计,让学生能够熟练运用C++进行面向对象编程,建立对象模型,降低软件的复杂性,改善软件的重用性和维护性,提高软件的生产效率,全面掌握面向对象编程技术。

1.2课程设计题目:

题目:

图书信息管理系统设计

1.3题目要求:

1.问题描述(功能要求):

图书信息包括:

登录号、书名、作者名、分类号、出版单位、出版时间、价格等.

试设计一图书信息管理系统,使之能提供以下功能:

(1)系统以菜单方式工作

(2)图书信息录入功能(图书信息用文件保存)--输入

(3)图书信息浏览功能--输出

(4)查询和排序功能:

(至少一种查询方式)--算法

按书名查找

按作者名查找

(5)图书信息的删除与修改(可选项)

2.问题的解决方案:

根据系统功能要求,可以将解决分为以下步骤:

(1)分析系统中的各个实体之间的关系及其属性和行为;

(2)根据问题描述,设计系统的类层次;

(3)完成类中的各个类的描述(包括类的属性和方法);

(4)完成类中的各个成员的定义;

(5)完成系统的应用模块;

(6)功能调试;

(7)完成系统总结报告以及系统使用说明书.

3.其他要求:

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读

(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)

(3)学生可自动增加新功能模块

2.总体设计

2.1总体组成框图:

 

图2-1物理模型图

2.2总体流程图:

图2-2总体流程图

3.详细设计

总体上建立两个类:

classBook和classBDatabase.classBook图书类,实现对图书的描述,图书的编号,书名等功能.classBDatabase图书库类,实现对图书的维护,查找,删除等.

3.1图书信息的增添模块

3.1.1函数功能:

在类内建立一些小的函数,用来新增图书的的基本信息。

比如,图书的书名,作者名等.使用磁盘存储数据,以便在后面的使用。

3.1.2函数具体内容:

1.获取类中的信息:

char*getname()

{//获取书名

returnname;

}

2.设置类中图书的信息:

voidsetname(charna[])

{//设置书名

strcpy(name,na);

}

3.新增图书信息:

intaddbook(intn,char*na,char*aa,char*sa,char*ca,inttime,doubleprice)

{//增加图书

Book*p=query1(n);

if(NULL==p)

{

top++;

book[top].addbook(n,na,aa,sa,ca,time,price);

return1;

}

return0;

}

voidaddbook(intn,char*na,char*aa,char*sa,char*ca,inttime,doubleprice)

{//增加图书

tag=0;

no=n;

strcpy(name,na);

strcpy(author,aa);

strcpy(sno,sa);

strcpy(cbs,ca);

cbtime=time;

bookprice=price;

}

3.1.3函数流程图:

图3-1add()函数流程图

3.2图书信息的查询模块

3.2.1函数功能:

通过不同的方式查询图书的基本信息

3.2.2函数介绍:

Book*query1(intbookid),Book*query2(chara[]),Book*query3(chara[]),通过这些函数,分别可以按登陆号查找图书,按书名查找图书,按作者查找图书.

3.2.3函数流程图:

图3-2query()类型函数的流程图

3.3图书信息的删除模块

3.3.1函数功能:

对图书信息的删除和全删功能.

3.3.2函数具体内容:

 

voiddelbook()

{//删除图书

chari;

cout<<"确定删除吗?

Y/N?

"<

cin>>i;

if(i=='y'||i=='Y')

tag=1;

}

voidclear()

{//全删

chari;

cout<<"确定全部删除吗?

Y/N?

"<

cin>>i;

if(i=='y'||i=='Y')

top=-1;

}

3.4图书信息系统的主要函数

3.4.1函数功能:

对条件进行判断,对图书信息进行输入,修改,查询,显示,删除等内容.

3.4.2函数的流程图:

图3-3Bookdata()函数的流程图

4、运行结果

4.1主界面

图4-1—程序主界面

4.2输入图书信息

图4-2—图书信息输入

4.3查找图书信息

图4-3-1进行查找

图4-3-2按图书编号查找

图4-3-3按图书作者查找

4.4更改图书信息

 

图4-4-1选择是否更改

图4-4-2更改图书信息

4.5删除图书信息

图4-5-1选择是否删除

图4-5-2删除图书信息

5、课程设计总结

通过这次实践,我们成功的实现了数据的输入与保存,并在程序中实现了使用类对各个图书的各参数的基本操作。

该系统的难点在于不使用任何数据库,只使用磁盘文件来实现对图书的信息的存储和读取。

虽然测试的图书的信息条数不够多,但是题目的要求是完全能够达到的,在现有的基础上只要稍加修改就能够满足批量数据的存储和查阅。

要想增加更多图书信息,只要增加相应的对象的属性即可,前提是在拥有相似的属性的时候。

若有不同的属性,可以增加相应的类就可满足需求。

其中重要的是打开文件,保存文件,也就是对数据的妥善的存储和再次的调用的操作。

本次的课程设计对我们也是一个很好的实践的机会,锻炼了自己,提高了自己编程的能力,为今后的项目打好基础。

6、参考文献

1.《C++程序设计》作者:

谭浩强清华大学出版

2.《VisualC++程序设计技巧与实例》作者:

许福舒志张威等出版社:

中国铁道出版社

3.《VisualC++全能速查宝典》作者:

刘锐宁,梁水,宋坤人民邮电出版社

4.《C++语言程序设计题典》作者:

李春,曾平,刘斌清华大学出版社

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1