图书管理系统程序设计报告书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、报告内容:
1、问题描述
题目:图书管理系统
功能要求:
1、新进图书基本信息的输入。
2、图书基本信息的查询。
3、图书信息的删除。
4、借书人注册。
5、借书(非注册会员不能借书)。
6、还书
三、相关信息描述
1、图书基本信息:图书名称、图书编号、单价、作者、存在状态。
2、借书人基本信息:姓名、性别、学号。
四、系统设计要求:
1、利用C语言面向过程的编程思想来完成系统的设计。
2、突出C的模块化程序设计特征,尽可能将功能细化,达到一个函数完成一个特定的功能。
3、进行简单的界面设计,能够实现友好的交互。
2、需求分析
本系统主要用在对图书、读者的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。使用该系统之后,图书馆管理人员可以管理读者的登记、图书的购入、借出、归还以及注销等,本系统的宗旨是提高图书管理工作的效率,减少相关人员的工作量,使学院的图书管理工作真正做到科学、合理的规划,系统、高效的实施。
1、依据题目要求,应该将该系统分为两大模块:图书管理和注册人管理。
图书管理模块中包括对图书的增加、删除、统计等操作,以及对图书
的借出操作。
2、界面应该具有友好、直观、易操作等特点,本系统采用数字输入选择操
作。
3、系统概述设计
经过需求分析,本系统分为两大模块:书籍管理模块和会员管理模块。结构图如下:
4、系统详细设计
4、1数据结构设计
struct BOOK
{
int id,usr[10],total,store,days[10]; //分别是序号、书的数量、库存、
借阅天数
char name[31],author[21]; //书名、作者
}books[100];
/*上面是结构体的定义,用于存放书籍及借书的信息。*/
struct Person
{
int id; //序号
char BPname[9]; //借书人姓名。
char BPsex[2]; //性别
char BPnumbers[9]; //学号
char BPcellphone[11]; //联系电话
}people[100];
4、2主函数
主函数用来显示界面,用数字操作执行相应的功能,功能如下:
借阅图书、归还图书、注册新书、注册账号、注销旧书、帮助。
4、3借书模块
4、4还书模块
4、5注册账号模块
4、6注册新书
4、7注销旧书
4、8帮助文件
void help()
{
system("cls");
printf("\n\n\n");
printf("\t进入图书管理系统后,通过选择0-6数字,按Enter键执行相应的功能\n\n");
printf("\t进入选择的功能界面后按界面中的提示进行操作即可。\n\n");
return_confirm();
}
4、9界面的标题
void page_title()
{
system("cls");
printf("\n\n\n\n");
printf(" =====图书管理系统=====\n");
printf("
----------------------------------------------------------------\n");
}
4、10查询图书是否存在
查询图书函数是在数组中找到图书号匹配的记录,显示其信息并返
回数组下标,如果找不到相应记录则提示错误并返回-1。
5、系统测试
其他界面在选择相应的数字就显示不同界面,功能达到上面所述。
6、经验总结
通过几天的努力,图书管理系统总算可以正常运行,功能也达到上面所述,但功能不是很完善,在做的过程中遇到的主要问题就是,这个系统是第一次做对相关的排版美化、还有部分代码都不太会写,经过多看书还对有讨论最终克服困难,一一解决遇到的问题完成这个不太完善的系统。相信下次会做得更好。
7、参考文献
[1]李清政叶斌陈世强雷辉 C语言程序设计教程(第二版)
[2]谭浩强张基温 C语言程序设计教程(第三版)高等教育出版社
#include
#include
#include
#include
int Pcount;
struct BOOK
{
int id,usr[10],total,store,days[10];
char name[31],author[21];
}books[100];
/*上面是结构体的定义,用于存放书籍及借书的信息。*/
struct Person
{
int id;
char BPname[9]; //借书人姓名。
char BPsex[2]; //性别。
char BPnumbers[9]; //学号。
char BPcellphone[11]; //联系电话。
}people[100];
/*int searchpeople(struct Person s[],char n[])
{
int i=0;
for(i;i if(!strcmp(s[i].BPnumbers,n)); return 1; return 0; }*/ void page_title() { system("cls"); printf("\n\n\n\n"); printf(" =====图书管理系统=====\n"); printf(" ----------------------------------------------------------------\n"); } /*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/ void return_confirm(void) { printf("\n按任意键返回……\n"); getch();