Xxxxxxxx
课程设计(实训)说明书
课 题
图书信息管理系统
班 级
电信 181
学 号
Xxxxxxxx
姓 名
Xxxx
指导老师
Xxxx
成 绩
2019 年 12 月 25 日
目录
1. 需求分析.......................................................................................................................................4
1.1 编写目的............................................................................................................................4
1.2 功能介绍............................................................................................................................4
2. 概要设计.......................................................................................................................................4
1. 数据导入.......................................................................................................................................4
2. 帐号登录.......................................................................................................................................4
3. 管理员入口...................................................................................................................................5
3.1 用户管理............................................................................................................................5
3.2 图书管理............................................................................................................................6
4. 用户入口.......................................................................................................................................7
4.1 更换密码............................................................................................................................7
4.2 查询图书信息....................................................................................................................7
5. 测试结果 ....................................................................................................................................15
6. 用户使用说明 ............................................................................................................................15
6.1 运行操作..........................................................................................................................15
6.2 常见问题及解决方案......................................................................................................15
7. 已知缺陷.....................................................................................................................................16
8. 参考文献.....................................................................................................................................16
1. 谭浩强著.C 程序设计(第四版).北京清华大学出版社,2010 .........................................16
2. 绝地反击 T.C 语言编程:变换命令行的颜色 color, 2015 ..................................................16
3. runoob.C 语言教程,2013 ........................................................................................................16
4. edrawsoft.C 语言程序流程图,2016 .......................................................................................16
附件.................................................................................................................................................16
1. 需求分析
1.1 编写目的
本项目旨在研发一个图书馆的管理系统,实现图书馆的信息化管理。在方便读者查
询借阅图书的同时,方便图书馆管理员对图书进行管理。
1.2 功能介绍
程序设计用于管理图书信息化管理,使用对象为普通用户、管理员。实现对用户(
普通用户、管理员)的账号管理、图书上新、图书查询、图书下架、图书信息修改
等的功能。
1. 用户信息导入:用户名、账号、密码、账号类型
2. 图书信息导入:编号、书名、作者、出版商、出版日期、价格、库存
3. 帐号登陆:登录成功调用对应函数、登陆失败错误处理
4. 用户信息管理:
– 管理员:新增用户、删除用户、修改用户账号信息
– 用户:修改密码
5. 图书信息管理:
– 管理员:图书上架、图书下架、图书搜索、图书信息修改、图书列表浏
览
– 用户:图书查询
2. 概要设计
程序的运行基本流程如图所示。
1. 数据导入
将以文件形式保存的用户信息、图书信息读入到内存中。这里采取的基于结构体的
动态链表,存储导入的信息。加载信息完成后,输出字符画以及欢迎语。
2. 帐号登录
为确保用户正确填写帐号密码信息,显示提示信息:“请输入用户名和密码或帐号
和密码”。这里有两种情况:登录成功、登录失败(含输入信息错误)。当登录成
功时,进入对应用户类型的操作界面。登录失败,则给出提示:“输入信息错误,
退出请按 0,再次输入按 1”,以询问用户是否再次尝试登录。登录失败的异常处理
,使用 while 循环,直到用户选择退出程序。和密码”。这里有两种情况:登录成
功、登录失败(含输入信息错误)。当登录成功时,进入对应用户类型的操作界面
。登录失败,则给出提示:“输入信息错误,退出请按 0,再次输入按 1”,以询问
用户是否再次尝试登录。登录失败的异常处理,使用 while 循环,直到用户选择退
出程序。
用户在看到提示信息输入用户信息之后,将获取到的信息传入密码校验函数,基于
密码校验函数返回值,判断登录成功状态。查询登录用户结构体内的用户类型
type 的值,以此判断进入的用户操作界面。
3. 管理员入口
输出操作选项类别:用户管理、图书信息管理、注销。获取管理员操作选项后,使
用 switch 进入对应功能函数。进入对应的功能函数后,显示此选项下提供的功能
。用户管理选项功能:添加账号、删除账号、输出已有账号、重置用户密码、返回
上一层菜单。图书信息管理选项功能:新书上架、输出图书信息、查询、旧书下架
、修改图书信息、返回上一层菜单。
3.1 用户管理
3.1.1
添加账号
进入函数后,首先以重新加载用户信息的方式,寻找到用户信息的链表的链尾内存
地址。为确保用户正确填写新增用户信息,显示提示信息:“请依次输入用户名、
账号、密码和类别,输入#表示输入结束”,以及给出示例模版:“输入示例:张三
1 111111 用户”。
3.1.2
删除帐号
为确保用户正确填写删除用户信息,显示提示信息:“请输入待删除的读者用户名
或账号信息”。获取到帐号信息后,进行校验帐号存在性,如果不存在,则输出错
误提示:“查无读者信息,无法删除”。存在则进项该用户信息堆块脱链,并释放,
完成后输出提示信息:“读者信息已删除”。结束操作后,将新的链表保存到文件中
。
3.1.3
输出已有帐号
显示输出帐号功能菜单,用 switch 实现选择功能。while 循环输出直到链尾,其中
加入判断条件 type 值,从而实现分别输出管理员、普通用户帐号信息。
3.1.4
重置用户密码
为确保用户正确填写删除用户信息,显示提示信息:“请输入待删除的读者用户名
或账号信息”。获取到帐号信息后,遍历链表进行校验帐号存在性,如果不存在,
则输出错误提示:“未找到对应的用户名或账号”。存在则进项该用户信息进行覆写
,完成后输出提示信息:“已重置用户密码”。结束操作后,将新的链表保存到文件
中。
3.2 图书管理
3.2.1
新书上架
进入函数后,首先以重新加载书籍信息的方式,寻找到数据信息的链表的链尾内存
地址。为确保用户正确填写新增数据信息,显示提示信息:“请依次输入图书编号
、书名、作者、出版社、类别、出版年月日、价格、库存,输入-1 表示输入结束”,
以及给出示例模版:“输入示例:201501 西游记 吴承恩 中华 名著 19580624 56
59”。使用 while 循环录入信息,直到用户结束输入。结束录入后,将新的链表保
存到文件中。
3.2.2
输出图书信息
判断链表指针的 next 值,确定是否有图书信息存在链表中。