《C语言程序设计》图书信息管理系统.doc
《《C语言程序设计》图书信息管理系统.doc》由会员分享,可在线阅读,更多相关《《C语言程序设计》图书信息管理系统.doc(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、?C语言程序设计?课程设计报告题 目: 图书信息管理系统 设 计 者: 王 亚 专业班级: 08微机五班 学 号: 208210550 指导教师: 李 彦 勤 所属系部: 信息管理系 2021-年6 月25 日目 录1.1概述31.2系统分析31.2.1 需求分析31.2.2 开发工具选择31.3总体设计31.3.1 工程规划31.3.2 系统业务流程分析41.3.3 系统功能结构41.4 系统设计51.4.1 设计目标51.4.2 开发及运行环境51.4.3 数据库设计51.4.4 系统主要N-S流程图71.5 技术准备71.5.1 DEV C+ 开发平台常用函数71.6 公共模块设计81.
2、6.1 文件及文件夹模块设计81.7 主要功能模块设计91.7.1 系统登录设计91.7.2 软件系统主界面设计91.7.3 图书管理界面设计101.8 疑难问题分析与解决101.8.1 信息录入后对记录的修改101.8.2 程序运行情况 111.9 总 结121.9.1 经验总结121.1概述图书信息管理系统是图书馆日常管理中十分重要的组成局部,传统的手工文献管理方式弊端很多,入库、统计、汇总处理时的工作量及其繁重,处理效率极低,管理者也无法了解整个馆藏图书的借用的实际情况。越来越多的图书馆文献管理者意识到:只有采用信息化的管理系统,才能满足适应现代型的管理工作的需要。本工程中的图书信息管理
3、系统是一个控制台应用程序,它不仅可以有效管理图书馆的文献,还能够运用汇总技术分析当前的实时的文献的库存情况,给管理者的工作提供更高的效率。1.2系统分析图书信息管理系统是图书信息管理的根底。图书信息管理系统主要通过对图书的入库的管理和维护,及时反映图书的库存、流向情况,为管理者和本钱核算提供依据。并通过库存图书的分析,为管理及决策人员提供库存资金占用情况、图书短缺情况等不同的分析信息。同时为方案及决策人员提供实时准确的存书信息,以便及时调整,保证各项活动的顺利进行。通过图书信息管理信息化,可以全面监控图书的进、出、存、等各种状况,满足现代型的图书管理信息的需要。 需求分析通过实际调查,要求本系
4、统具有以下功能: 由于操作人员的计算机知识普遍偏低,因此要求系统具有良好的人机界面。 如果系统的使用对象较多,那么要求有较好的权限管理。 方便的数据查询。 在相应的权限下,可以方便地删除数据。 数据计算自动完成,尽量减少人工干预。 开发工具选择本系统后台数据库采用文件的方式存储,前台采用颖思设计工作室的DEV C+做为主要的开发工具,该工具可以完美的支持C的ANSIC标准及汉化开发。1.3总体设计 工程规划图书信息管理系统主要有图书管理、查询统计、系统维护和帮助等模块组成,具体规划如下: 图书管理模块该模块主要用于实现图书信息添加、修改图书信息、删除图书信息和保存图书信息等功能。 查询统计模块
5、该模块主要用于实现按图书的信息的各种条件查询和图书量的统计、分类统计等功能。 系统维护模块该模块主要用于实现数据的备份、复原等功能。 帮助模块该模块主要用于实现用户管理、更改密码、关于本系统、重新登陆和退出系统等功能。 系统业务流程分析库存管理系统的业务流程如图1.1所示。系统登陆是否登陆图书信息图书统计新增图书修改信息删除信息否是图1.1图书信息管理系统业务流程图 系统功能结构图书信息管理系统的功能结构如图1.2所示。1.4 系统设计 设计目标本系统属于小型的数据库管理系统,可以对图书馆的图书进行有效地管理。通过本系统可以到达以下目标: 灵活的数据录入,使信息传递更快捷。 系统采用人机交互方
6、式,界面美观友好,信息查询灵活、方便,数据存储平安可靠。 实施强大的后台监控功能。 实现各种查询,如定位查询。 实现对图书入库的分析与统计,图书出库明细记录等功能。 对用户输入的数据,系统进行严格的数据检验,尽可能防止人为错误。 系统最大限度地实现了易安装性、易维护性和易操作性。1.4.2 开发及运行环境 系统开发平台: DEV C+ 。 系统开发语言: C。 运行平台: Microsoft Windows XP (SP2) 。 运行环境: Micorsoft Windows。 分辨率: 最正确效果 1024 * 768。 数据库设计本系统采用文件存储的方式实现后台的数据存储,数据库名称为tb
7、_bookdata.dat,其中包含了7个字段,下面分别介绍:1. 数据表概要说明为了对数据表的结构视图有一个更清晰的认识,在次特别设计了一个数据表树状结构图,该结构图包括系统所有数据表,如图1.3。- 系统日志 - 图书信息数据库- 用户信息数据库- 临时文件图1.3 数据表结构视2. 数据表E-R图。根据上面的设计,可以规划出的实体主要有图书信息实体、用户信息实体。图书信息管理系统主要实体间关系E-R图如图1.4所示。图书信息表tb_bookdata入库编号书名作者名图书价格出版时间分类出版单位图1.4 图书信息管理系统图书信息实体关系E-R图用户信息表tb_UserData用户ID用户名
8、密码图1.5 用户信息实体关系E-R图3. 主要的数据表结构。次局部给出了本系统的全部的数据表,该表的结构如表所示。 tb_BookData (图书信息表)表tb_BookData用于保存图书的根本信息,该表的结构如表所示。表 图书信息表字 段 名数 据 类 型长 度主 键 否描 述IDInt8主键入库编号NameBookChar20否书名NameChar10否作者名BaseClassChar10否分类CompanyChar50否出版单位OutDataChar10否出版时间PriceFloat8否价格 tb_UserData (用户信息表)表tb_UserData用于保存用户的根本信息,该表的
9、结构如表1.5.2所示。表1.5.2 用户信息表字 段 名数 据 类 型长 度主 键 否描 述IDuserInt8主键用户编号UserChar10否用户名称PasswordChar15否用户密码 系统主要N-S流程图 为了更加生动的表示程序的执行过程,此处给出了系统主要的N-S系统的流程图,以便更清楚的理解程序执行流程。1. 系统登录流程N-S流程图。此局部说明了系统登录模块的执行流程,程序的执行流程如下图。定义变量 char u10, p15; 初始化while(1)循环 判断用户/密码Strcmp(u, p);真 假goto A; 进入主界面 system(cls);去除屏幕继续循环whi
10、le(0) 不成立时执行图 系统登录流程N-S流程图2. 系统主界面N-S流程图。此局部说明了系统主界面模块的执行流程,程序的执行流程如下图1.5.4。登录模块成功返回处,初始化while(1)循环, int c;c = getch(); 选择功能。case T :图书管理 case L : 查询统计case S : 系统维护 case H : 帮 助图书管理 系统维护 查询统计 帮 助while(0) 不成立时执行图 系统主界面N-S流程图3. 图书管理N-S流程图。此局部说明了图书管理界面模块的执行流程,程序的执行流程如下图1.5.5。主界面模块调用处,图书管理功能模块.初始化while(
11、1)循环 int c;C = getch(); 根据输入选项选择功能项。case N :新增图书 c = = ? case X : 修改信息case D : 删除信息 case S :保存信息case Z : 返回主菜单goto N; goto D; goto A; goto S; goto X;新增图书 删除信息 返回主菜单 保存信息 修改信息图1.5.5 图书管理N-S流程图1.5 技术准备 DEV C+ 开发平台常用函数此局部给出了常用的系统函数如下所示:函 数 名 称原 型返回值功 能 说 明chdirint chdir(char *path)0-成功,-1 失败改变当前工作目录为pa
12、thgetcwdchar getcwd(char *dir, int len)指向dir的指针得到当前路径名称strcatchar strcat(char dest, const char src)指向dest的指针字符串连接,将src连接到dest的尾部strcmpint strcmp(charstr1, char str2)小于0:str1str2strcpychar *strcpy(char *dest, const char *src)指向dest的指针将字符串src拷贝到字符串dest中去strlenint strlen(const char *s)字符串的长度得到字符串长度eofi
13、nt eof(int handle)1-文件结尾,0-不在结尾位置,-1 操作出错检测文件指针是否已在尾部1.6 公共模块设计 文件及文件夹模块设计1.文件夹架构在开发图书信息管理系统之前,首先设计了如图1.6所示的文件夹构图,在开发时只需要将相应文件保存到对应文件夹下即可。Bak /文件夹备份数据数据库备份系统日志备份Data /数据库文件夹系统日志图书信息数据库用户信息数据库临时文件Include /包含文件目录 图书信息结构体 用户信息结构体| 图书信息管理模块| 登录模块| 查询统计模块| 系统主程序文件| 系统维护模块| 用户帮助模块图1.6 文件夹架构图2.程序文件架构主文件架构如
14、图1.7所示。系统登录Login.c图书管理BookInformation.c查询统计Lookandsam.c系统维护(SystemManage.c)帮助(Userhelp.c)1.7 主要功能模块设计 系统登录设计系统登录主要用于对进入图书信息管理系统的用户进行平安性检查,以防止非法用户进入该系统。在登陆时,只有合法的用户,才可以进入该系统,同时,系统还根据登陆用户的级别,给与其不同的操作权限。系统登录的界面运行结果如图1.8所示。图1.8系统登录界面 软件系统主界面设计软件系统主界面主要用来对图书信息管理系统的整体布局,系统功能的集中化管理,给用户以清晰良好的交互界面。通过对主界面都可以让
15、用户对图书管理系统有一个大方向的了解,使用户清晰快捷的进行操作。系统主界面运行结果如图1.9所示。图1.9 系统主界面运行结果 图书管理界面设计图书管理界面主要用来对图书信息管理,功能模块可以分为图书信息的增添、信息的修改、保存和返回等功能。图书管理界面运行结果如图2.0所示图2.0 图书管理界面1.8 疑难问题分析与解决 信息录入后对记录的修改信息录入完成后,对记录进行修改首先要查找到要修改的记录,调用系统的查找功能,确定要修改的记录,将要修改的记录显示出来。确定当前要修改的记录在内存中的编号,然后跟据记录在内存中唯一确定的编号来进行修改。实现此功能时,要对记录在内存中进行唯一编号,如果进行
16、编号错误,将直接导致要修改记录的错误。并且还要考虑记录数在内存中的占用问题。该功能实现起来非常复杂,这里可以通过全局中间变量来对内存中的记录进行唯一编号,来确定记录在内存中的占用数。该功能的实现代码如下:/ 修改信息 /X:printf(n以下为数据库的全部信息:n);printf(顺序t编号t书名t作者t分类t出版单位t出版时间t图书单价n); for(j=0; j=jsq; j+)printf(%dt%dt%st%st%st%st%st%.2fn,j+1,bokj.Id,bokj.Nambook,bokj .Name,bokj.Baseclass,bokj.Company,bokj.Out
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 语言程序设计 图书 信息管理 系统
限制150内