1、 - 1 - 课 程 设 计课 程 设 计 报 告报 告 实习名称 数据结构 设计题目 小型图书管理系统 实习时间 2011.1.3-2011.1.9 专业班级 指导老师 教学单位(盖章) 二 0 一一年一月九日 - 2 - 小型图书管理系统 一、选题背景 在学习了数据结构课本理论知识后,为了检验自己所学知识的牢固性,巩固大家 的理论知识,调动大家的编程兴趣;同时为大家提供一个实践自己,检验自己的平台, 以增加大家对将来工作的适应能力;也为了锻炼大家的动手实践能力,遂在学期末进行 了本次课程设计。 “数据结构”在计算机科学中是一门综合性的专业基础课。 “数据结构”的研究不仅 涉及到计算机硬件的
2、研究范围,而且和计算机软件的研究有着密切的关系,无论是编译 程序还是操作系统,都涉及到数据元素在存储器中的分配问题。在研究信息检索时也必 须考虑如何组织数据, 以便查找和存取数据元素更为方便。 因此, 可以认为“数据结构” 是介于数学、 计算机硬件和计算机软件三者之间的一门核心课程。 在计算机科学中,“数 据结构”不仅是一般程序设计的基础,而且是设计和实现编译程序、操作系统、数据库 系统及其他系统程序和大型应用程序的重要基础。 我们本着自己的兴趣及挑战自己的态度,也为检验我们理论知识的熟练度,锻炼 我们动手实践能力,我们选择了小型图书管理系统的编写。因为我们生活在大学,图书 馆是我们学习的天堂
3、,借书和还书又是必不可少的,一个好的图书管理系统对于我们学 生和管理人员都会为大家提供很多便利。本着挑战和创新的思想,我们进行了此次课程 设计程序编写及报告撰写。 二、运行环境(软、硬件环境) 预装了 Windows XP 操作系统的 PC 机、 Microsoft Visual C+ 6.0 版编辑器。 三、算法设计的思想 通过对图书管理系统内的图书进行添加和删除操作,实现同学借书和还书的记录 工作,通过对图书的查找和按指定方式排序,更有利于同学们挑选自己所需要的图书, 借阅借书所需时间。同时,通过按需要的条件排序,也有助于图书管理人员更加方便快 捷的管理全部书库图书信息。 遍历查找和插入排
4、序的功能,以及其它所有的算法操作都是为了方便快捷的利用 图书馆资源,更大化的优化操作流程和更好体现人机一体话的概念。 设计程序框架图: - 3 - 四、算法的流程图 - 4 - 五、算法设计分析 定义图书结构体 struct book 结构体内容:定义作者、书名、出版社、书号数组及浮点型价格数据。 char writer20;/作者/ char title20;/书名/ char publishinghouse20;/出版社/ char number10;/书号/ float price;/价格/ struct book * next; ; 定义书库的结构体指针: struct book *
5、Create_Book(); 插入图书信息: void Insert(struct book * head); 删除图书信息: void Delete(struct book * head); 刷新显示书库信息: void Print_Book(struct book * head); 查找数目: void search_book(struct book * head); 更改图书信息: void change_Book(struct book * head); 对数据进行保存工作 void save(struct book * head); 六、源代码 #include #include #
6、include - 5 - struct book char writer20; char title20; char publishinghouse20; char number10; float price; struct book * next; ; struct book * Create_Book(); void Insert(struct book * head); void Delete(struct book * head); void Print_Book(struct book * head); void search_book(struct book * head); void change_Book(struct book * head); void save(struct book * head); struct book * Create_Book() struct book * head; head=(