1、 课 程 设 计 报 告 课程名称课程名称 C 语言程序设计语言程序设计 课题名称课题名称 图书信息管理系统图书信息管理系统 2012 年年 6 月月 19 日日 一 、 设 计 内容与设计要 求一 、 设 计 内容与设计要 求 1 设计内容:设计内容:图书信息管理系统设计图书信息管理系统设计 涉及的知识点:涉及的知识点: 掌握并熟练运用 C 语言的基本数据类型与各种表达式,程序的流程控制语句; 掌握数组的基本概念。熟练掌握一维数组、二维数组的应用、掌握字符数组 与字符串的关系以及字符串的简单处理。 掌握函数的定义,函数的返回值,函数的调用,函数的形式参数和实际参数之 间的关系;掌握变量的作用
2、域与生存期,了解函数的作用域。 掌握结构体的概念,结构体类型的定义,结构体变量的定义和初始化,结构体 成员的表示,结构体变量的赋值含义,结构体与指针、函数的关系。 掌握文件、 文件类型指针的基本概念, 熟练掌握文件的打开与关闭以及文件的 建立、读写等有关操作。 2 2设计要求:设计要求: 1) 用 C 语言实现系统;利用结构体数组实现图书信息的数据结构设计;系统 的各个功能模块要求用函数的形式实现;应提供一个界面来调用各个功能, 调用界面和各个功能的操作界面应尽可能清晰美观。 2) 建立一个图书信息数据库,文件名为 book.txt,并从该文件中读取数据; 3) 图书信息管理系统应能提供以下功
3、能: 系统以菜单方式工作 图书信息显示功能;能以表格形式显示图书库中所有信息,且应有表头。 图书信息追加功能;追加一条(或多条)新记录,要求在追加过程中 有相应的提示信息,完成追加后能重新排序和显示; 图书信息查询功能; a. 按书名查询;b. 按单价查询; c. 按出版单位查询; d. 按出版时间查询 e. 按分类号查询; f. 按入库时间查询 要求系统在上述查询方式中至少应有两种以上的查询方式,且能显示符 合条件的所有记录。 图书信息的删除;要求可按指定的图书编号和指定的图书书名两种定 位方式删除图书记录。 图书信息的修改; 要求能按指定的图书编号和按指定的图书书名两种定 位方式进行修改,
4、 且可以按用户要求修改记录中除图书编号和书名以外的 指定内容,并重新显示; 图书信息的统计: 能按指定的图书分类号或按指定的单价两种方式分别 进行统计,并将统计的结果以及被统计的图书信息用表格的形式显示; 能按图书单价排序(降序) 要求在删除模块、修改模块和查询模块中若找不到所需的记录时,系 统设计中应有一定的提示信息。 4) 说明: (1) 要求将修改后的数据写入到一个新的数据文件 newbook.txt 中。 (2) 对系统有兴趣的同学可以在实现基本要求的基础上, 完善系统的其它功能。 5) 图书信息管理系统采用一个结构体数组,图书信息包括:图书编号、分类图书信息管理系统采用一个结构体数组
5、,图书信息包括:图书编号、分类 号、书名、作者名、出版单位、出版时间、入库时间、价格等,其数据库结号、书名、作者名、出版单位、出版时间、入库时间、价格等,其数据库结 构如下:构如下: int bh /*图书编号*/ int flh /*分类号*/ char sname15 /*书名*/ char zname10 /*作者名*/ char cbdw 20; /*出版单位*/ char cbdate8 /*出版时间*/ char rkdate8 /*入库时间*/ double dj /*单价*/ 注意:注意:图书编号图书编号不不能能重复重复且不少于且不少于 4位数字位数字,各项字符串的长度要求在各
6、项字符串的长度要求在 4 10 之间之间,数据库应有数据库应有 10 条或条或多于多于 10 条条以上的记录。以上的记录。 6) 要求:要求: 要求每个学生必须独立思考,认真并按时完成本课程设计所包含的所有内容; 要求学生必须按照课程设计报告的完整格式说明设计内容,设计任务分析过 程和算法,给出程序流程图和全部源程序; 设计报告的完整格式应包括以下部分的内容: 系统设计总体思路; 系统的主要功能; 系统功能模块的划分(要求画出总体模块框图) ; 主要功能的实现和各个程序模块说明(每个功能模块的框图、系统主模块 的流程图,各个功能模块至少要有一个主要的流程图) ; 程序调试过程及各模块调试中相应的部分截图; 课程设计总结与体会(不少于 500 字) 。 课程设计参考文献; 程序清单; 课程设计周内,凡规定的集中上机时间必须到机房调试程序;