图书信息查询软件Word下载.docx
- 文档编号:4819440
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:15
- 大小:137.14KB
图书信息查询软件Word下载.docx
《图书信息查询软件Word下载.docx》由会员分享,可在线阅读,更多相关《图书信息查询软件Word下载.docx(15页珍藏版)》请在冰点文库上搜索。
2.3图书名查询模块4
2.4出版社查询模块5
2.5作者名查询模块6
第3章调试分析7
第4章使用说明8
4.1总体查询模块图8
4.2图书名查询模块图8
4.3出版社查询模块图8
4.4作者名查询模块图9
参考文献10
附录(程序清单)11
第1章概要设计
1.1题目的内容与要求
设计一个简单的图书管理程序,可实现对图书馆的图书信息查询。
具体内容包括:
1、建立图书信息表,包括:
图书名、出版社、作者、ISBN以及简介等信息;
2、作者最多记录3个其他的人以“XX等”表示;
。
3、可以按图书名、出版社、作者进行查询
1.2总体结构
本程序主要分为四个模块(功能模块图见图1.1):
主模块,总体查询模块,图书名查询模块,出版社查询模块,作者名查询模块。
总体查询模块:
输入文本文件名,显示整个图书信息。
图书名查询模块:
以图书名的方式查询图书信息。
出版社查询模式:
以出版社的方式进行查询图书信息。
作者名查询模块:
输入作者名称来进行相关图书的信息查询。
图1.1功能模块图
第2章详细设计
2.1主模块
控制整个程序的运行,控制菜单操作,通过主函数模块分别调用各个模块,实现各项功能,流程如图2.1所示。
图2.1主模块流程图
2.2总体图书信息模块
通过此模块,我们可以了解全部图书信息,包括:
图书名,作者,出版社,ISBN等。
具体流程如图2.2所示:
图2.2总体图书信息模块流程图
2.3图书名查询模块
执行此模块时,要输入所要查找图书的图书名,当与图书库中的图书匹配成功后,便将此图的相关信息输出来。
具体如图2.3所示:
图2.3图书名查询模块流程图
2.4出版社查询模块
执行此模块时,要输入所要查找图书的出版社名,当与图书库中的图书的出版社名匹配成功后,便将此图的相关信息输出来。
具体如图2.4所示:
图2.4出版社查询模块流程图
2.5作者名查询模块
执行此模块时,要输入所要查找图书的作者名,当与图书库中的图书作者名匹配成功后,便将此图的相关信息输出来。
具体如图2.5所示:
图2.5作者名查询模块流程图
第3章调试分析
1.调试时发现文件不能打开,原来打开的方式弄错了。
开始我是以写的方式进行的,发现错误后改用了以读写的方式打开文件,这回才真的OK。
2.程序中有些错误时由于马虎造成的,比如有的忘记加‘;
’。
3.结构体数组开始时不怎么会用,请教同学后又看看书,总算理解了,改正时程序中的错误。
第4章使用说明
4.1总体查询模块图
进行程序调试时,输入功能选项1,可以查询整个图书信息。
如图4.1所示:
图4.1查询模块
4.2图书名查询模块图
输入功能选项2,按图书名进行查询信息。
如图4.2所示:
图4.2图书名查询模块
4.3出版社查询模块图
输入功能选项3,按出版社进行查询信息。
如图4.3所示:
图4.3出版社查询模块
4.4作者名查询模块图
输入功能选项4,按作者名进行查询信息。
如图4.4所示:
图4.4作者名查询模块
参考文献
[1]张长海.C语言课程设计[M].北京:
高等教育出版社,2006
[2]谭浩强.C语言程序设计(第五版)[M].北京:
清华大学出版社,2011
[3]黄晓宇,丁敬忠.大学计算机基础[M].北京:
邮电大学出版社,2010
[4]陈世清.C语言程序设计[M].浙江:
浙江大学出版社,2012
[5]张基温.《C程序设计案例教程》[M].北京清华大学出版社,2006
附录(程序清单)
#include<
stdio.h>
string.h>
stdlib.h>
structst
{
charshuming[20];
charchuban[20];
charzuozhe[20];
charshuhao[20];
}std[5];
voidread()
inti;
FILE*fp;
charpath[5];
printf("
请输入操作的文件名:
"
);
scanf("
%s"
&
path);
fp=fopen(path,"
r+"
if(fp==NULL)
{
printf("
cannotopenthefile"
exit(-1);
}
for(i=0;
i<
5;
i++)
fscanf(fp,"
%s%s%s%s\n"
std[i].shuming,&
std[i].chuban,&
std[i].zuozhe,&
std[i].shuhao);
%s%s%s%s\n"
std[i].shuming,std[i].chuban,std[i].zuozhe,std[i].shuhao);
}fclose(fp);
}
voidserch1()
charx[20];
请输入所要查询的图书名\n:
x);
if(strcmp(std[i].shuming,x)==0)
printf("
%s%s%s\n"
std[i].chuban,std[i].zuozhe,std[i].shuhao);
voidserch2()
inta;
chary[20];
请输入所要查询图书的出版社\n:
y);
for(a=0;
a<
a++)
if(strcmp(std[a].chuban,y)==0)
std[a].shuming,std[a].zuozhe,std[a].shuhao);
voidserch3()
charz[20];
请输入所要查询图书的作者\n:
z);
10;
if(strcmp(std[i].zuozhe,z)==0)
std[i].shuming,std[i].chuban,std[i].shuhao);
voidmain()
intm;
********欢迎使用图书查询软件********\n"
按1,读取图书信息\n"
按2,按图书名查询\n"
按3,按出版社查询\n"
按4,按作者查询\n"
按5,完成退出\n"
do
请输入您想要的功能选项:
\n"
scanf("
%d"
m);
if(m==1)
read();
elseif(m==2)
serch1();
elseif(m==3)
serch2();
elseif(m==4)
serch3();
elseif(m==5)
{
完成退出"
break;
}
elseprintf("
!
错误!
按键范围1~5\n"
while
(1);
课程设计总结:
通过此次课程设计,我掌握了编程工作的基本过程及其各阶段的基本任务,熟悉了编译程序总流程框图,了解了编译程序的生成过程及其相关的技术,对课本上的知识也有了更深的理解。
老师常说,课本上的知识是机械的,表面的,要学会去运用,要举一反三。
现在终于深刻的了解了这句话。
经过这次的课程设计,发现书本上很深奥的知识变的更为简单,同样,对实验原理也了有更深的理解。
知道和理解了该理论在计算机中是怎样执行的,对该理论在实践中的应用有深刻的理解。
通过该课程设计,把死板的课本知识变得生动有趣,激发了学习的积极性。
能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。
课程设计中程序比较复杂,在调试时应该仔细,在程序调试时,注意指针,将不必要的命令去除。
除了课堂外,课程设计是最能学到东西的,最考验人的。
在做课程设计的这段时间,时刻都感到自己学的知识有多么的贫瘠。
经过这次课程设计,让我对C++这门语言有了更深的认识,操作能力有了提高要想是写出的代码能运行,需要耐心细心,毅力以及充沛的体力。
只有经过多次编辑,多次编译,再多次运行,才能编写出更好的程序,有时候需要多次的更正才能达到所要的运行结果。
指导教师评语:
指导教师(签字):
年月日
课程设计成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 信息 查询 软件
![提示](https://static.bingdoc.com/images/bang_tan.gif)