图书馆管理系统C语言源代码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#include

#include

struct BOOK

{

int id,usr[10],total,store,days[10];

char name[31],author[21];

}books[100];

/*上面是结构体的定义,用于存放书籍及借书的信息。*/

void page_title(char *menu_item)

{

clrscr();

printf(">>> 图书管理系统<<<\n\n- %s -\n\n",menu_item);

}

/*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/

void return_confirm(void)

{

printf("\n按任意键返回……\n");

getch();

}

/*上面是返回前请求确认的函数,以便在返回前观察结果*/

int search_book(void)

{

int n,i;

printf("请输入图书序号:");

scanf("%d",&i);

for(n=0;n<100;n++)

{

if(books[n].id==i)

{

printf("书名:%s\n",books[n].name);

printf("作者:%s\n",books[n].author);

printf("存数:%d of ",books[n].store);

printf("%d\n",books[n].total);

return n;

}

}

printf("\n输入错误或无效图书序号.\n");

return -1;

}

/*上面的函数是在数组中找到图书号匹配的记录,显示其信息并返回数组下标,如果找不到相应记录则提示错误并返回-1。*/

void book_out(void)

{

int n,s,l,d;

page_title("借阅图书");

if((n=search_book())!=-1&&books[n].store>0)

{

printf("请输入借书证序号:");

scanf("%d",&s);

printf("请输入可借天数:");

scanf("%d",&d);

for(l=0;l<10;l++)

{

if(books[n].usr[l]==0)

{

books[n].usr[l]=s;

books[n].days[l]=d;

break;

}

}

books[n].store--;

}

if(n!=-1&&books[n].store==0) printf("此书已经全部借出.\n"); return_confirm();

}

/*上面是借书的函数,首先调用找书函数*/

void book_in(void)

{

int n,s,l;

page_title("归还图书");

if((n=search_book())!=-1&&books[n].store

{

printf("借阅者图书证列表:\n");

for(l=0;l<10;l++)

if (books[n].usr[l]!=0)

printf("[%d] - %d天\n",books[n].usr[l],books[n].days[l]);

printf("请输入借书证序号:");

scanf("%d",&s);

for(l=0;l<10;l++)

{

if(books[n].usr[l]==s)

{

books[n].usr[l]=0;

books[n].days[l]=0;

break;

}

}

books[n].store++;

}

if(n!=-1&&books[n].store==books[n].total) printf("全部入藏.\n");

return_confirm();

}

void book_add(void)

{

int n;

page_title("注册新书");

for(n=0;n<100;n++)

if(books[n].id==0) break;

printf("序号:");

scanf("%d",&books[n].id);

printf("书名:");

scanf("%s",&books[n].name);

printf("作者:");

scanf("%s",&books[n].author);

printf("数量:");

scanf("%d",&books[n].total);

books[n].store=books[n].total;

return_confirm();

}

void book_del(void)

{

int n;

page_title("注销旧书");

if((n=search_book())!=-1) books[n].id=0; printf("该书已注销.\n");

return_confirm();

}

相关文档
最新文档