# include & ltstdlib.h & gt
# include & ltconio.h & gt
結構書
{
int id,usr[10],total,store,days[10];
人物姓名[31],作者[21];
}書籍[100];
/*以上是結構的定義,用來存放書籍和借書。*/
void page_title(char *menu_item)
{
clr SCR();
printf(" & gt;& gt& gt圖書館管理系統
}
/*以上是打印表頭的功能,同時可以通過參數menu_item顯示當前狀態。*/
作廢退貨_確認(作廢)
{
printf(" \ n按任意鍵返回...\ n ");
getch();
}
/*以上是返回前請求確認的功能,以便返回前觀察結果*/
int search_book(void)
{
int n,I;
Printf("請輸入圖書序號:");
scanf("%d ",& ampI);
for(n = 0;n & lt100;n++)
{
如果(書籍[n]。id==i)
{
Printf ("Title: %s\n ",books[n]。姓名);
Printf("作者:%s\n ",books[n]。作者);
Printf("存款數量:%d,共",books[n]。store);
printf("%d\n ",books[n]。合計);
返回n;
}
}
printf(" \ n錯誤或無效的圖書序列號。\ n ");
return-1;
}
/*上面的函數是在數組中查找書號匹配的記錄,顯示其信息並返回。
返回數組下標。如果找不到對應的記錄,則會提示錯誤並返回-1。*/
void book_out(作廢)
{
int n,s,l,d;
Page_title("借書");
if((n=search_book())!=-1 & amp;& amp書籍。商店& gt0)
{
Printf("請輸入圖書證的序列號:");
scanf("%d ",& amps);
Printf("請輸入可借天數:");
scanf("%d ",& ampd);
for(l = 0;l & lt10;l++)
{
如果(書籍[n]。usr[l]==0)
{
書籍。usr[l]= s;
書籍。天數[l]= d;
打破;
}
}
書籍。store-;
}
如果(n!=-1 & amp;& amp書籍。所有的書都借出了。\ n ");
return _ confirm();
}
/*以上是借書的功能。首先調用找書的功能*/
void book_in(作廢)
{
int n,s,l;
Page_title("還書");
if((n=search_book())!=-1 & amp;& amp書籍。商店& lt書籍。總計)
{
Printf("借書證列表:\ n ");
for(l = 0;l & lt10;l++)
如果(書籍[n]。usr[l]!=0)
Printf("[%d]-%d天\ n ",books [n]。usr [l],books [n]。天數[l]);
Printf("請輸入圖書證的序列號:");
scanf("%d ",& amps);
for(l = 0;l & lt10;l++)
{
如果(書籍[n]。usr[l]==s)
{
書籍。usr[l]= 0;
書籍。days[l]= 0;
打破;
}
}
書籍。store++;
}
如果(n!=-1 & amp;& amp書籍。商店=書籍。總計)
Printf("都在西藏。\ n ");
return _ confirm();
}
作廢賬簿_添加(作廢)
{
int n;
Page_title("註冊新書");
for(n = 0;n & lt100;n++)
如果(書籍[n]。id = = 0)break;
Printf("序列號:");
scanf("%d ",& amp書籍。id);
printf(" Title:");
scanf("%s ",& amp書籍。姓名);
Printf("作者:");
scanf("%s ",& amp書籍。作者);
Printf("數量:");
scanf("%d ",& amp書籍。合計);
書籍。商店=書籍。總計;
return _ confirm();
}
void book_del(void)
{
int n;
Page_title("舊書註銷");
if((n=search_book())!=-1)書籍[n]。id = 0;
Printf("這本書已經被取消了。\ n ");
return _ confirm();
}
無效總管(無效)
{
Menu: page_title(“操作菜單”);
Printf("請使用數字鍵選擇操作\ n \ n ");
Printf("1借書\n2還書\ n \ n ");
Printf("3註冊新書\n4取消舊書\ n \ n ");
Printf("\n0退出\ n ");
開關(getch())
{
case ' 1 ':book _ out();打破;
案例“2”:book _ in();打破;
案例“3”:book _ add();打破;
case ' 4 ':book _ del();打破;
案例“0”:退出(0);
}
轉到菜單;
}
{
int n;
Page_title("廣?同情”);
if((n=search_book())!=-1)書籍[n]。id = 0;
Printf("妳們是怎麽喜歡對方的?。\ n ");
return _ confirm();
}
無效總管(無效)
{
菜單:page_title(“和田汽車”);
Printf("我擔心監獄\ n \ n ");
printf(" 1 \ N2 \ n \ n ");
Printf("3比壹千畝寬\n4更寬?\ n \ n ");
printf(" \ n0 \ n ");
開關(getch())
{
case ' 1 ':book _ out();打破;
案例“2”:book _ in();打破;
案例“3”:book _ add();打破;
case ' 4 ':book _ del();打破;
案例“0”:退出(0);
}
轉到菜單;
}