图书馆借阅管理系统.docx
《图书馆借阅管理系统.docx》由会员分享,可在线阅读,更多相关《图书馆借阅管理系统.docx(14页珍藏版)》请在冰豆网上搜索。
![图书馆借阅管理系统.docx](https://file1.bdocx.com/fileroot1/2023-1/26/32992206-1a73-463d-82d8-574b6bcf7975/32992206-1a73-463d-82d8-574b6bcf79751.gif)
图书馆借阅管理系统
程序清单:
#include
#include
#include
#defineN100
/*===================================================================*/
structbook
{
longnum;/*书号*/
charname[30];/*书名*/
charauthor[30];/*作者*/
charwhere[30];/*出版日期*/
intcount;/*单价*/
charpub[30];/*出版社*/
};
structbookboo[N];
charc;
intw=0,a;
/*===================================================================*/
main()
{
voidcreat(structbookboo[N]);/*输入数据函数*/
voidmodify(structbookboo[N]);/*修改数据函数*/
voidsearch(structbookboo[N]);/*查找数据函数*/
voidoutput(structbookboo[N]);/*输出数据函数*/
voidadd(structbookboo[N]);/*添加数据函数*/
voidshow(structbookboo[N]);/*制作小组信息*/
do
{
clrscr();
printf("\n");printf("\n");printf("\n");printf("\n");
printf("===========================================\n");
printf("\n");
printf("欢迎使用图书借阅管理系统!
\n");
printf("\n");
printf("===========================================\n");
printf("*1--输入记录*\n");
printf("\n");
printf("*2--添加记录*\n");
printf("\n");
printf("*3--输出记录*\n");
printf("\n");
printf("*4--查找记录*\n");
printf("\n");
printf("*5--修改记录*\n");
printf("\n");
printf("*6--制作信息*\n");
printf("\n");
printf("*7--退出程序*\n");
printf("\n");
printf("==========================================\n");
printf("请按功能键选择");
printf("<1/2/3/4/5/6/7>\n");printf("\n");
printf("<<==按回车键执行命令==>>\n");
scanf("%c",&a);
clrscr();
getchar();
switch(a)
{
case'1':
creat(boo);break;
case'2':
add(boo);break;
case'3':
output(boo);break;
case'4':
search(boo);break;
case'5':
modify(boo);break;
case'6':
show(boo);break;
case'7':
return;
default:
continue;
}
clrscr();
}while(w==0);
}
/*===========**CREAT**===========输入信息============================*/
voidcreat(structbookboo[N])
{FILE*fp;
inti,j;
charch;
i=0;
printf("\t\t=========<<输入信息>>===========\n");
do
{
printf("\t\t书号:
");scanf("%ld",&boo[i].num);
getchar();
printf("\t\t书名:
");gets(boo[i].name);
printf("\t\t作者:
");scanf("%c",&boo[i].author);
printf("\t\t出版日期:
");scanf("%c",&boo[i].where);
printf("\t\t单价:
");scanf("%d",&boo[i].count);
printf("\t\t出版社:
");scanf("%s",boo[i].pub);
getchar();
printf("\t\t是否继续(Y/N)?
");
ch=getchar();
i++;
}while(ch=='y'||ch=='Y');
if((fp=fopen("C:
\\MESSAGE.bat","wb"))==NULL)
{printf("nofile");
exit
(1);
}
else
for(j=0;j<=i-1;j++)
{
fwrite(&boo[j],sizeof(structbook),1,fp);
}
fclose(fp);
}
/*======**MODIFY**===========修改信息===============================*/
voidmodify(structbookboo[N])
{FILE*fp;
charnum[81],na[10];
inti=0,j,n,s,m;
longa;
charh,k;
if((fp=fopen("C:
\\MESSAGE.bat","rb"))==NULL)
{printf("nofile");
exit
(1);}
else
{printf("\n书号书名作者出版日期单价出版社");
for(i=0;fread(&boo[i],sizeof(structbook),1,fp);i++)
{printf("\n%ld",boo[i].num);
printf("%4s",boo[i].name);
printf("%c",boo[i].author);
printf("%c",boo[i].where);
printf("%4d",boo[i].count);
printf("%3s",boo[i].pub);
printf("\n");}
fclose(fp);
printf("%d",i);
}
printf("\t\t===========<<修改信息>>===========\n");
/*clrscr();*/
printf("%d",i);
do
{clrscr();
m=0;
printf("\n\t\t1.按书号查找修改2.按书名查找修改");
printf("\n\n\t\t********请选择(1/2):
");
scanf("%ld",&n);
if(n==1)
{printf("\t\t输入要修改的书号:
");
scanf("%ld",&a);
for(j=0;j<=i-1;j++)
if(boo[j].num==a)
{printf("\n书号书名作者出版日期单价出版社");
printf("\n%ld",boo[j].num);
printf("%4s",boo[j].name);
printf("%c",boo[j].author);
printf("%c",boo[j].where);
printf("%4d",boo[j].count);
printf("%3s",boo[j].pub);
printf("\n");
printf("\t\t输入修改后的书号:
");
scanf("%ld",&boo[j].num);
getchar();
printf("\t\t书名:
");gets(boo[j].name);
printf("\t\t作者:
");scanf("%c",&boo[j].author);
printf("\t\t单价:
");scanf("%d",&boo[j].count);
printf("\t\t出版社:
");scanf("%s",boo[j].pub);
printf("\t\t===========<<修改后的信息>>===========\n");
printf("\n书号书名作者出版日期单价出版社");
printf("\n%ld",boo[j].num);
printf("%4s",boo[j].name);
printf("%c",boo[j].author);
printf("%c",boo[j].where);
printf("%4d",boo[j].count);
printf("%3s",boo[j].pub);
printf("\n");
m=1;
}
}
if(n==2)
{printf("\t\t输入要修改的书名:
");
scanf("%s",na);
getchar();
for(j=0;j<=i-1;j++)
if(strcmp(boo[j].name,na)==0)
{printf("\n书号书名作者出版日期单价出版社");
printf("\n%ld",boo[j].num);
printf("%4s",boo[j].name);
printf("%c",boo[j].author);
printf("%c",boo[j].where);
printf("%4d",boo[j].count);
printf("%3s",boo[j].pub);
printf("\n");
printf("\t\t输入书号:
");scanf("%ld",&boo[j].num);
getchar();
printf("\t\t书名:
");gets(boo[j].name);
printf("\t\t作者:
");scanf("%c",&boo[j].author);
printf("\t\t出版日期:
");scanf("%c",&boo[j].where);
printf("\t\t单价:
");scanf("%d",&boo[j].count);
printf("\t\t出版社:
");scanf("%s",&boo[j].pub);
printf("\t\t===========修改信息===========\n");
printf("\n书号书名作者出版日期单价出版社");
printf("\n%ld",boo[j].num);
printf("%4s",boo[j].name);
printf("%c",boo[j].author);
printf("%c",boo[j].where);
printf("%4d",boo[j].count);
printf("%3s",boo[j].pub);
printf("\n");m=1;
}}
getchar();
if(m==0)printf("\n\t\t没有找到要修改的信息!
");
printf("\n\t\t是否继续修改(y/n)?
");
scanf("%c",&k);
}while(k=='y'||k=='Y');
if((fp=fopen("C:
\\MESSAGE.bat","wb"))==NULL)
{printf("nofile");
exit
(1);
}
else
{for(j=0;j<=i-1;j++)
fwrite(&boo[j],sizeof(structbook),1,fp);}
fclose(fp);
}
/*=======**SEARCH**===========查找信息==============================*/
voidsearch(structbookboo[N])
{FILE*fp;
charch;
chars,p,na[10];
inti=0,j,k;
intm;
longxh;
if((fp=fopen("C:
\\MESSAGE.bat","rb"))==NULL)
{printf("cannotopenthefile");
exit
(1);
}
else
{printf("\n书号书名作者出版日期单价出版社");
for(i=0;fread(&boo[i],sizeof(structbook),1,fp);i++)
{printf("\n%ld",boo[i].num);
printf("%4s",boo[i].name);
printf("%c",boo[i].author);
printf("%c",boo[i].where);
printf("%4d",boo[i].count);
printf("%3s",boo[i].pub);
printf("\n");}
fclose(fp);
printf("%d",i);
}
do
{clrscr();
m=0;
printf("\t\t===========<<查找信息>>===========\n");
printf("\n\t\t1.按书号查找2.按书名查找");
printf("\n\n\t\t********请选择(1/2):
");
scanf("%d",&k);
printf("\t\t===========<<查找信息>>===========\n");
if(k==1)
{printf("\t\t输入书号:
");
scanf("%ld",&xh);
for(j=0;j<=i-1;j++)
if(boo[j].num==xh)
{
printf("\n书号书名作者出版日期单价出版社");
printf("\n%ld",boo[j].num);
printf("%4s",boo[j].name);
printf("%c",boo[j].author);
printf("%c",boo[j].where);
printf("%4d",boo[j].count);
printf("%3s",boo[j].pub);
getchar();
printf("\n");
m=1;
}
}
if(k==2)
{printf("\t\t输入书名:
");
scanf("%s",na);
for(j=0;j<=i-1;j++)
if(strcmp(boo[j].name,na)==0)
{
printf("\n书号书名作者出版日期单价出版社");
printf("\n%ld",boo[j].num);
printf("%4s",boo[j].name);
printf("%c",boo[j].author);
printf("%c",boo[j].where);
printf("%4d",boo[j].count);
printf("%3s",boo[j].pub);
getchar();
printf("\n");m=1;
}
}
getchar();
if(m==0)printf("\n\t\t没有找到该信息!
");
printf("\n\t\t是否继续(Y/N)?
");
scanf("%c",&p);
}while(p=='Y'||p=='y');
}
/*===========**OUTPUT**=============输出信息=========================*/
voidoutput(structbookboo[N])
{FILE*fp;
inti;
if((fp=fopen("C:
\\MESSAGE.bat","rb"))==NULL)
{printf("cannotopenthefile");
exit
(1);
}
printf("\t\t===========输出信息===========");
printf("\n书号书名作者出版日期单价出版社\n");
for(i=0;fread(&boo[i],sizeof(structbook),1,fp);i++)
{printf("%10ld",boo[i].num);
printf("%-20s",boo[i].name);
printf("%c",boo[i].author);
printf("%c",boo[i].where);
printf("%4d",boo[i].count);
printf("%3s",boo[i].pub);
printf("\n");}
fclose(fp);
printf("共有%d个记录:
",i);
printf("\n按回车返回主菜单");
getchar();
}
/*==========***ADD***============添加信息===========================*/
voidadd(structbookboo[N])
{FILE*fp;
inti,j;
charnum[81],ch;
i=0;
printf("\t\t=========<<添加信息>>===========\n");
do
{
printf("\t\t输入书号:
");scanf("%ld",&boo[i].num);
getchar();
printf("\t\t书名:
");gets(boo[i].name);
printf("\t\t作者:
");scanf("%c",&boo[i].author);
printf("\t\t出版日期:
");scanf("%c",&boo[i].where);
printf("\t\t单价:
");scanf("%d",&boo[i].count);
printf("\t\t出版社:
");scanf("%s",boo[i].pub);
getchar();
printf("\t\t是否继续(Y/N)?
");
ch=getchar();
i++;
}while(ch=='y'||ch=='Y');
if((fp=fopen("C:
\\MESSAGE.bat","ab+"))==NULL)
{printf("nofile");
exit
(1);
}
else
for(j=0;j<=i-1;j++)
fwrite(&boo[j],sizeof(structbook),1,fp);
fclose(fp);
}
/*==========***SHOW***==============显示信息=========================*/
voidshow()
{
printf("\n");printf("\n");printf("\n");printf("\n");printf("\n");
printf("C语言程序设计课程设计");
printf("\n");printf("\n");printf("\n");
printf("========================================================\n");
printf("\n");printf("\n");printf("\n");printf("\n");
printf("==================图书借阅管理系统!
====================\n");
printf("$$\n");
printf("$指导教师:
王丽$\n");
printf("$组长:
******$\n");
printf("$组员:
******$\n");
printf("$*******$\n");
printf("$******$\n");
printf("$*******$\n");
printf("$制作:
通信与电子工程学院$\n");
printf("$通信111班级$\n");
printf("==============时间:
2012.6.7-2012.6.20===============\n");
printf("\n");printf("\n");printf("\n");
printf("========================================================\n");
printf("\n");
printf("<<==按回车键返回+==>>");
getchar();
}_
运行截图: