《C语言程序设计》课程设计报告
题 目: 图书管理、借阅系统
设 计 者: 李永曜
专业班级: 软件技术 09信息六班
学 号: 209130618
指导教师: 危锋
所属系部: 信息管理系
2009年12月 28 日
目录:
1 概述3
1.1 问题分析3
1.2功能3
2 总体设计4
模块划分:模块图及程序结构简单介绍4
3 详细设计5
3.1 密码验证5
3.2 录入信息5
3.3 按书名查看图书信息6
3.4 按书号查看图书信息7
3.5查看所有已借图书信息8
3.6 查看所有未借图书信息8
3.7 按书名借阅图书9
3.8 按书号借阅图书10
3.9 按书名进行查找并修改信息11
3.10 按书号进行查找并修改信息12
3.11 删除所有图书13
3.12 按书名删除图书信息14
3.13 按书号删除图书信息15
3.14 主函数16
4 结果分析17
5 总结与体会43
参考文献43
附录: 程序清单44
1 概述
1.1 问题分析
图书信息管理及借阅系统。方便图书管理员管理图书,以及学生借阅图书。
1.2功能
1、建立图书信息库,包括:书号,图书名称,出版社,出版时间和当前借阅状态;
2、程序分为两大模块:图书管理员模块和用户模块。管理员模块主要用于对图书信息的录入、修改或删除。用户模块主要用于浏览图书信息和借阅图书;
3、保密:进入管理员模式需要进行密码验证。
4、浏览:用户可以通过多种方式进行浏览图书信息。
5、查找或修改:可以通过书号或书名查找想看的书。可以根据书号或书名进行修改、删除信息;
6、输出:根据用户需求输出图书信息。
2 总体设计
模块划分:模块图及程序结构简单介绍
?
3 详细设计
3.1 密码验证
1)函数原形:int mimayanzheng()
2)功 能:利用strcmp()字符串比较函数与实现初始化的密码进行对比。与密码相同则进入管理员模式。
3) N-S流程图
定义temp_mima[20]用来存放用户输入的密码输出提示:请输入密码给temp_mima[20]赋值if(strcmp(temp_mima,mima)==0)是 否返回1返回04)说明:当密码不正确时,直接返回欢迎界面(主菜单)。
3.2 录入信息
1)函数原形:void xinxi()
2)功 能:利用printf()提示信息,scanf()函数对图书信息进行录入。
3) N-S流程图
定义循环变量i输出提示,要求输入录入数量for i=0 to N输入第i本书的编号(有防止编号相同的功能)输入第i本书的名称输入第i本书的出版社输入第i本书的出版时间输入第i本书的借阅状态(1表示已借,0表示未借)输出提示:录入完成4)说明:当密码不正确时,直接返回欢迎界面(主菜单)。
3.3 按书名查看图书信息
1)函数原形:void showbook_name()
2)功 能:利用printf()提示信息,scanf()函数输入要查找的图书名称并利用循环进行查找该图书。如果找到则输出该图书的信息,反之则提示“不存在该书”。
3)参数及类型:无。
4) N-S流程图
定义循环变量i;定义k用来标记是否存在该书,也可以利用k输出项目;定义n用来存放查找到的书的下标;定义字符数组book_name[20]存放用户输入的查询书名。输出提示,要求输入图书名称for i=0 to N if(strcmp(book_name,bk[i].name)==0)是 否将下标存放到n中 if(k==0)
是 否输出“项目”输出图书信息 if(bk[n].jie==1)
是 否输出图书状态:已被借阅输出图书状态:可以节阅输出提示:按任意键返回k++是 if(k==0) 否输出提示:不存在该书,按任意键返回
3.4 按书号查看图书信息
1)函数原形:void showbook_num()
2)功 能:利用