C语言课程设计报告图书信息管理系统Word文档下载推荐.docx
- 文档编号:18731631
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:17
- 大小:47KB
C语言课程设计报告图书信息管理系统Word文档下载推荐.docx
《C语言课程设计报告图书信息管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言课程设计报告图书信息管理系统Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。
(5)图书信息查询功能。
(6)图书信息的删除和修改。
第1页
4、详细设计:
头函数名:
#include<
stdio.h>
stdlib.h>
string.h>
/*********图书信息结构体*********/
/***包括登录号,书名,作者名,分类号,出版单位,出版时间,价格等***/
structbookinf
{intnum;
******************************************************登录号
charbname[20];
***************************************书名
charwname[10];
***************************************作者名
charclanum[14];
***************************************分类号
charpubcom[10];
***************************************出版单位
charpubtime[10];
***************************************出版时间
floatprice;
*********************************************价格
};
一管理员登录系统模块:
(1)来到图书信息管理系统页面
voidindex()
{
charinput;
注释:
运行时
printf("
\n\n\t\t\t*****************************\n"
);
直接进入
\t\t\t图书信息管理系统\n"
这个页面
\t\t\t*****************************\n\n\n"
------------------------------------------------------------------------------\n"
\t<
按任意键进入>
\n\t"
input=getchar();
}
(2)管理员登陆进入功能菜单页面
第2页
FILE*fp;
structmanagepswd;
if((fp=fopen("
password.txt"
"
r"
))==NULL)
{
\n\n\n\tCannotopenfile!
}
else
{
do
\n\n\t请输入管理员帐号:
"
scanf("
%s"
name);
\n\n\t请输入管理员密码:
password);
fp=fopen("
fread(&
pswd,sizeof(structmanage),1,fp);
fclose(fp);
w=strcmp(pswd.manage_name,name);
k=strcmp(pswd.password,password);
adm_servelist();
while(w!
=0||k!
=0);
(3)来到功能菜单页面
第3页
voidadm_servelist()
{
voidbook_add();
voidbook_view();
voidchange();
voiddel();
voidbook_search();
voidlogin();
voidpwchange();
intin;
注释:
菜单列出的服务种类
从1,2,3,4,5,6
do所对应的功能进行选择
{
\n\n\n\t--欢迎使用信息管理系统--"
\n\n\t1.图书信息录入\n"
\t2.图书信息浏览\n"
\t3.图书信息查询\n"
\t4.图书信息删除\n"
\t5.图书信息修改\n"
\t6.退出管理模式\n"
\n\t请选择服务种类:
%d"
&
in);
if(in!
=1&
&
in!
=2&
=3&
=4&
=5&
=6)
\n\t没有这项服务~\n"
\t按任意键重新选择"
while(in!
=6);
switch(in)
case1:
book_add();
break;
注释:
选择自己所需要
case2:
book_view();
后摁下数字键则
case3:
book_search();
则进入此功能页面
case4:
del();
case5:
change();
break;
case6:
login();
(3)图书信息录入功能模块
voidbook_add()
第4页
voidadm_servelist();
inti=0,j;
FILE*fp;
输入的图书信息
structbookinfbooks;
是通过文件进行
structbookinfbook_taxis[30];
保存的
\n\n\n\t---请输入图书信息---\n\n"
\t登录号:
books.num);
\n\t书名:
books.bname);
\n\t作者名:
books.wname);
\n\t分类号:
books.clanum);
\n\t出版单位:
books.pubcom);
\n\t出版时间:
books.pubtime);
\n\t价格:
%f"
books.price);
book.txt"
))!
=NULL)
do
book_taxis[i],sizeof(structbookinf),1,fp);
i=i+1;
while(!
feof(fp));
for(j=0;
j<
=i;
j++)
if(books.num==book_taxis[j].num)
\n\n\n\t对不起,这个编号已经使用过了~\n"
\t按任意键返回管理菜单~"
第5页
fp=fopen("
w"
else
a"
fwrite(&
books,sizeof(structbookinf),1,fp);
\n\n\n\t信息输入完毕~按任意键继续\n"
(4)图书信息浏览功能模块
voidbook_view()
voidadm_servelist();
intinp,i=0,n=0;
structbookinfbookview[20];
\n\n\n\t数据尚未初始化~~\n\n\t请在管理菜单中增加图书信息~~~\n"
\n\t<
按任意键返回管理菜单>
else
bookview[i],sizeof(structbookinf),1,fp);
while(!
\n\t--------共有%d条记录--------"
i-1);
\n\n\t登录号:
%d\n"
bookview[n].num);
第6页
printf("
%s\n"
bookview[n].bname);
bookview[n].wname);
bookview[n].clanum);
bookview[n].pubcom);
bookview[n].pubtime);
%f\n"
bookview[n].price);
\n\n\t1.上一页\t2.下一页\t3.回目录\n"
\n\t请选择:
inp);
switch(inp)
if(n==0)
\n\t已到达首页\n\t按任意键重新选择"
elsen=n-1;
if(n==i-2)
\n\t已到达最末页\n\t按任意键重新选择"
elsen=n+1;
default:
\n\t没有这项服务\n\t按任意键重新选择"
while(inp!
=3);
第7页
(5)图书信息修改与删除功能模块
修改:
voidchange(intx)
intinp,i=0,j;
FILE*fp,*fp1;
structbookinfbooks,book_taxis[20];
\n\n\n\t注意:
您确定要修改该记录吗\n"
\n\t1.是\t2.否\n"
\n\t请输入:
if(inp!
inp!
=2)
\n\t对不起~没有这项服务~\n"
\t按任意键重新选择\n\t"
=2);
if(inp==2)
if(inp==1)
第8页
if((fp1=fopen("
book_taxis[i],sizeof(structbookinf),1,fp1);
}
feof(fp1));
fclose(fp1);
x;
0"
for(j=x+1;
i-2;
j++)
if(books.num==book_taxis[j].num)
1"
book_taxis[x]=books;
i-1;
book_taxis[j],sizeof(structbookinf),1,fp);
\n\n\t信息修改完成!
按任意键返回"
第9页
S删除:
voiddel(inty)
structbookinfbook_taxis[20];
您确定要删除该记录吗\n"
if(i>
2)
第10页
y;
for(j=y+1;
remove("
\n\n\t记录已删除!
\n\n\t按任意键返回\n\t"
(6)图书信息查询功能模块
voidbook_search()
voidid_search();
voidwr_search();
voidbn_search();
intinp;
))==NULL)
\n\n\n\t1.按图书登录号查询\n"
\n\t2.按图书作者查询\n"
第11页
\n\t3.按图书名查询\n"
\n\t4.回到主菜单\n"
\n\n\t请选择查询类别:
=4)
\n\n\t没有这项服务~\n\t按任意键重新选择~"
=4);
id_search();
wr_search();
bn_search();
5运行与测试报告:
第12页
第13页
三后记/课程设计过程中遇到的问题以及解决方法,课程设计的体会。
这次课程设计让我掌握了许多的有用知识。
首先通过不断地学习和锻炼更加熟练地掌握应用软件MicrosoftVisualC++6.0了。
设计正确及合适的程序对于我们初学者来说是很大的难题,出现一丁点儿错误就得非很大的努力去修改,正式者一步步一点点的努力让我对C语言游乐更深的认识。
同时我掌握了解决问题的方法,这无论是对以后的学习、生活都有无比重要的价值。
在设计中,每个同学都会遇到一些困难,或多或少,这些困难常常让我心情烦躁,比如不能清晰的建立设计模块,不会修改出现的错误等等,然后我向同学寻求帮助,向他们学习,最终通过自己努力建立了模块。
不可避免地程序中肯定依然存在者某些问题,我希望在以后的学习和应用中不断提高自己的能力,攻克遇到的困难。
第14页
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 报告 图书 信息管理 系统