C语言图书管理系统课程设计报告

上传人:xmg****18 文档编号:120404980 上传时间:2020-02-06 格式:DOC 页数:33 大小:177.50KB
返回 下载 相关 举报
C语言图书管理系统课程设计报告_第1页
第1页 / 共33页
C语言图书管理系统课程设计报告_第2页
第2页 / 共33页
C语言图书管理系统课程设计报告_第3页
第3页 / 共33页
C语言图书管理系统课程设计报告_第4页
第4页 / 共33页
C语言图书管理系统课程设计报告_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《C语言图书管理系统课程设计报告》由会员分享,可在线阅读,更多相关《C语言图书管理系统课程设计报告(33页珍藏版)》请在金锄头文库上搜索。

1、. . . . .第三章 图书管理系统的设计与实现3.1系统的需求分析图书登记管理系统作为一个应用软件将为学校的老师和学生提供一个对学校图书馆深入了解并借阅、还书的平台。根据系统界面的提示信息对图书馆信息进行查询、初始化等操作系统功能需求分析描述如下: (1)系统主菜单:进入系统和退出系统 (2)功能菜单:显示可以进行的操作(3)查询主菜单:根据图书编号、书名、作者进行查询,并可显示所有图书信息(4)借还书主菜单:可以进行借书和还书等操作3.2系统的设计3.2.1 系统的总统设计 下面从系统的整体流程的功能模块、系统界面及数据结构进行总体设计。 (1)总体思想 本系统主要设计思想是实现图书馆的

2、功能机管理系统信息的查询、借书、还书等主要功能。系统的设计方法是结构化实际方法,系统用C语言进行开发用户可以清晰的了解图书馆内的情况。 (2)系统模块结构图 根据需求分析结果,图书管理系统可以分为三大模块:查询图书模块、借书功能模块、还书功能模块。系统模块结构如图: 图书管理系统还书功能系统借书功能系统图书管理主菜单图书查询系统3.2.2 系统的概要设计 系统主菜单。 显示系统的主菜单,里面有相应的功能代码,根据选择各功能代码进入不同的界面。功能主要包括:退出系统、查询图书、借书、还书。 查询图书信息 进入此菜单功能模块,输入您要查询的图书的编号、名字、作者等。图书查询模块流程如图:开始 提示

3、输入图书编号、书名、作者输入正确查询 否 是 重新输入 是退出系统 否3.3 测试结果系统主界面功能菜单查询系统菜单借还系统菜单3.4 源代码# include # include # include typedef struct linkchar number100;char bookname100;char author100;char publish100;char time100;float price;char status100; struct link *next;link;link *Cbook()int n=0;link *p,*q,*head;FILE *fp;fp=fop

4、en(图书信息.txt,r+);if(fp=NULL)printf(没有找到文件,请检查);p=(link *)malloc(sizeof(link);if(p=NULL)printf(申请内存出错!n);fscanf(fp,%s%s%s%s%s,p-number,p-bookname,p-author,p-publish,p-time);fscanf(fp,%f,&p-price);fscanf(fp,%s,p-status);while(feof(fp)=0)n+;if(n=1)head=p;elseq=p;p=(link *)malloc(sizeof(link);if(p=NULL)p

5、rintf(申请内存出错!n);fscanf(fp,%s%s%s%s%s,p-number,p-bookname,p-author,p-publish,p-time);fscanf(fp,%f,&p-price);fscanf(fp,%s,p-status);q-next=p;p-next=NULL;fclose(fp);printf(信息已录入!);return head;void mainmenu()printf(n*n);printf(n* 欢迎使用图书管理系统 *n);printf(n* 1.进入系统 0.退出系统 *n);printf(n*n);printf(n 请选择);void

6、menu1()printf(n*n);printf(n* 1.进入图书查询系统 *n);printf(n* 2.进入图书借还系统 *n);printf(n* 3.保存所有图书信息 *n);printf(n* 4.返回上级菜单 *n);printf(n*n);printf(n请选择);void cxmenu()printf(n*n); printf(n* 1.显示所有图书信息 *n); printf(n* 2.按编号查询图书 *n); printf(n* 3.按书名查询图书 *n); printf(n* 4.按作者查询图书 *n); printf(n* 5.返回上级菜单 *n);printf(n

7、*n); printf(n请选择);void jhmenu()printf(n*n);printf(n* 1.借书 *n);printf(n* 2.还书 *n);printf(n* 3.返回上级菜单 *n);printf(n*n);printf(n请选择); void print(link *head)link *p;p=head;printf(n);printf(n*n);printf(n编号tt书名tt作者tt出版社tt出版时间tt价格tt状态n); while(p!=NULL) printf(n);printf(%st%st%st%st%s,p-number,p-bookname,p-a

8、uthor,p-publish,p-time);printf(tt%.2f,p-price);printf(tt%s,p-status);printf(n);p=p-next;void hold(link *head)link *p;FILE *fp;fp=fopen(图书信息.txt,w+);if(fp=NULL)printf(文件操作出错!);exit(1);p=head;for(;p!=NULL;p=p-next) fprintf(fp,%st%st%st%st%s,p-number,p-bookname,p-author,p-publish,p-time);fprintf(fp,tt%

9、.2f,p-price);fprintf(fp,tt%s,p-status);fprintf(fp,n);fclose(fp);printf(信息已保存。);void holdcx(link *t)link *p=NULL;FILE *fp;fp=fopen(查询.txt,a+);p=t;fprintf(fp,查询到的信息为:n);fprintf(fp,n);fprintf(fp,n*n);fprintf(fp,n编号tt书名tt作者tt出版社tt出版时间tt价格tt状态n);fprintf(fp,n);fprintf(fp,%st%st%st%st%s,p-number,p-bookname

10、,p-author,p-publish,p-time);fprintf(fp,tt%.2f,p-price);fprintf(fp,tt%s,p-status);fprintf(fp,n);fclose(fp);printf(信息已保存!);link *findnumber(link *head)char key100;link *h,*t1=NULL;printf(请输入图书的编号:);getchar();gets(key);for(h=head;h!=NULL;h=h-next) if(strcmp(key,h-number)=0) t1=h; break; return t1; link *findboookname(link *head)char key100;link *h,*t2=NULL;printf(请输入图书的书名:);getchar()

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号