C语言课程设计论文图书信息管理系统设计Word下载.doc
- 文档编号:13160673
- 上传时间:2022-10-07
- 格式:DOC
- 页数:21
- 大小:243.50KB
C语言课程设计论文图书信息管理系统设计Word下载.doc
《C语言课程设计论文图书信息管理系统设计Word下载.doc》由会员分享,可在线阅读,更多相关《C语言课程设计论文图书信息管理系统设计Word下载.doc(21页珍藏版)》请在冰豆网上搜索。
3.4 详细设计………………………………………………………4
3.4.1 主函数………………………………………………4
3.4.2 各功能模块设计……………………………………6
3.4.3 公共函数……………………………………………12
3.5 上机操作………………………………………………………15
3.5.1 数据源………………………………………………15
3.5.2 编译、连接和运行…………………………………15
3.5.3 结果…………………………………………………15
(4)实习总结…………………………………………………………20
(1)作者简介:
我叫王栋,是地球科学学院资源环境与城乡规划管理专业的二年级学生,有幸在大二上学期学习C程序设计这门课程.刚开始的时候对这门课没什么理解,觉得很难很复杂,而在后来慢慢深入的学习之后开始对其产生了兴趣。
看到自己亲手编写的程序能够发挥出作用,觉得能够运用自己写出来的东西做出成果很高兴。
同时也知道了做程序并不是想象之中的那么难的,只要我们能好好看懂课本上面的东西,并能在实践中加以练习就一定能够很好的掌握。
(2)报告摘要:
本论文设计了程序:
《C语言课程设计指导书》第12题——图书信息管理系统。
这个管理系统能对图书信息(包括登录号、书名、作者号、分类号、出版单位、出版时间、价格等)进行有效地信息录入、浏览、查询、插入、删除等操作,会给用户带来很大的便利,达到既节省时间又节省精力的目的。
(3)报告主体:
3.1题目要求
图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格等。
试设计一图书信息管理系统,使之能提供以下功能:
(1)系统以菜单方式工作
(2)图书信息录入功能(图书信息用文件保存)
(3)图书信息浏览功能
(4)图书信息查询功能
(5)图书信息删除与修改功能(可选项)
[提示]
建立图书信息结构体,结构体成员包括登录号、书名、作者名、分类号、出版单位、出版时间、价格。
3.2需求分析
根据题目要求,要求对图书信息进行输入、输出等操作;
在程序中需要浏览图书的信息,应提供显示、查找、浏览、插入、修改等操作;
另外还应提供键盘式选择菜单实现功能选择。
3.3总体设计
根据需求分析,可以对这个系统的设计分为以下几个模块:
数据输入
数据浏览
数据查找
数据插入
退出
图1.3系统功能模块图
3.4详细设计
3.4.1主函数
主函数一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。
其中各功能模块用菜单方式选择。
[流程图]:
显示一系列功能选项
根据n的值调用各功能模块函数
N
Y
输入n,判断n是否是0-5
图1.4.1主函数流程图
[程序]
/*****************主函数**********************/
main()
{
menu();
}/*****************menu函数********************/
voidmenu()
{
intn,w;
do
{
puts("
\t\t**********************MENU************************\n\n"
);
puts("
\t\t\t\t1.enter"
\t\t\t\t2.browse"
\t\t\t\t3.search"
\t\t\t\t4.deleteormodify"
puts("
\t\t\t\t5.add"
\t\t\t\t6.exit"
\n\n\t\t**************************************************\n"
printf("
Choiceyournumber(1-5):
[]\b\b"
scanf("
%d"
&
n);
if(n<
1||n>
6)
{
w=1;
getchar();
}
elsew=0;
}
while(w==1);
switch(n)
{
case1:
enter();
break;
case2:
browse();
case3:
search();
case4:
deal();
case5:
add();
case6:
exit(0);
}
}
注:
menu函数能提供菜单方式选择功能,可以根据用户需要进入到所想要的操作模块中,此外把menu函数独立出来,可以方便随时对它进行调用,容易返回到系统界面。
3.4.2各功能模块设计
(1)输入模块
在这里主要运用结构体的形式来输入保存图书的各种信息,包括图书的登录号、书名、作者名、分类号等等,因为图书的数目众多,因此采用结构体数组的形式。
用结构体来存放图书信息:
/********************结构体*******************/
#defineN100
#include<
stdio.h>
string.h>
stdlib.h>
structbook
chardlnum[10];
charname[50];
charwriter[20];
charflnum[10];
charpressname[50];
charpresstime[20];
charprice[10];
}books[N];
books[N]中每个数组元素对应一本图书*/
其中可以根据宏定义#defineN随时对N的值进行调整,扩大信息的储存量。
[程序]:
/********************输入模块*******************/
voidenter()
inti,n;
voidmenu();
voidinput(intk);
voidsave(intk);
printf("
Howmanybooks(0-%d)?
:
"
N-1);
scanf("
\nEnterdatanow\n\n"
for(i=0;
i<
n;
i++)
{
printf("
\nInput%dthbookrecord.\n"
i+1);
input(i);
}
if(i!
=0)save(n);
Passanykeytoback\n"
getchar();
menu();
}
(2)浏览模块
[需求分析]该模块的功能是显示所有图书记录信息。
[流程图]
显示图书记录(10个一屏)
:
按任意键显示下一屏
按任意键返回主菜单
图1浏览模块流程图
/****************浏览(全部)模块***************/
voidbrowse()
intk;
voidmenu();
intload();
voidprintf_books(intn);
k=load();
printf_books(k);
printf("
getchar();
menu();
(3)查找模块
/***************按书名查找模块***************/
[流程图]:
按书名查找模块
用户作出选择,输入一整型数值
1,2,还是3
修改
返回主菜单
继续查找
图2按书名查找模块流程图
voidsearch_by_name()
structbooks;
intn,i,k=0;
intload();
voidprintf_one(inti);
n=load();
printf("
enterabookname:
"
scanf("
%s"
s.name);
for(i=0;
if(strcmp(s.name,books[i].name)==0)
{
printf_one(i);
k=1;
}
if(k==0)printf("
\nNotfoundthefile!
\n"
}
/***************按作者查找模块***************/
[流程图]
按作者名称查找模块
图3按图书名查找模块流程图
[程序]:
voidsearch_by_writer()
{
structbooks;
intn,i,k=0;
enterawriter'
sname:
s.writer);
for(i=0;
if(strcmp(s.writer,books[i].writer)==0)
/***************按出版社查找模块***************/
按出版社查找模块
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 论文 图书 信息管理 系统 设计