![數(shù)據(jù)結(jié)構(gòu)課程設(shè)計說明_第1頁](http://file4.renrendoc.com/view/403ef4855320259828dccc4ee64fb349/403ef4855320259828dccc4ee64fb3491.gif)
![數(shù)據(jù)結(jié)構(gòu)課程設(shè)計說明_第2頁](http://file4.renrendoc.com/view/403ef4855320259828dccc4ee64fb349/403ef4855320259828dccc4ee64fb3492.gif)
![數(shù)據(jù)結(jié)構(gòu)課程設(shè)計說明_第3頁](http://file4.renrendoc.com/view/403ef4855320259828dccc4ee64fb349/403ef4855320259828dccc4ee64fb3493.gif)
![數(shù)據(jù)結(jié)構(gòu)課程設(shè)計說明_第4頁](http://file4.renrendoc.com/view/403ef4855320259828dccc4ee64fb349/403ef4855320259828dccc4ee64fb3494.gif)
![數(shù)據(jù)結(jié)構(gòu)課程設(shè)計說明_第5頁](http://file4.renrendoc.com/view/403ef4855320259828dccc4ee64fb349/403ef4855320259828dccc4ee64fb3495.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1/1數(shù)據(jù)結(jié)構(gòu)課程設(shè)計說明數(shù)據(jù)結(jié)構(gòu)課程設(shè)計計算機科學(xué)與技術(shù)2023級1班
課程設(shè)計題目:圖書借閱管理系統(tǒng)
姓名:
學(xué)號:
一.需求分析說明
圖書借閱處理過程簡述處理過程主要包含:新增圖書上架、辦理圖證、圖書查詢、借書、還書等。
(1)新增圖書上架新書上架時,需要登記新書的:書名、、出版社、總冊數(shù)的信息。
(2)辦理圖書借閱證讀者辦理借書證時,需要登記讀者(同學(xué))的學(xué)號、姓名。(3)圖書查詢讀者根據(jù)圖書編號查詢圖書基本信息,并可以得知現(xiàn)還有幾冊可以借閱。
(4)借書每個同學(xué)讀者最多借5本書。讀者借書時,應(yīng)登記書號、借書日期(年月日)。
2.?dāng)?shù)據(jù)分析數(shù)據(jù)處理過程中涉及到兩個實體:圖書和會員;各實體應(yīng)具有的屬性如下:圖書(書號、書名、,總冊數(shù))讀者(學(xué)號、姓名、班級)由于同一種圖書可以有多冊上架,
每個讀者最多可以借閱5本書,圖書借閱的屬性如下:借閱(書號、借書日期)3.功能分析系統(tǒng)功能模塊包括:圖書增加、圖書刪除、圖書查詢、借書、還書;另外還包括圖書信息修改和讀者信息修改。
二.基本功能
1)圖書管理(增加圖書、查詢圖書、刪除圖書、圖書借閱、還書);
2)會員管理(增加會員、查詢會員、刪除會員、借書信息);
3)系統(tǒng)管理(初始化、載入數(shù)據(jù)、保存數(shù)據(jù)、退出程序);
三.程序設(shè)計
#include
#include
#include
#defineNULL0
typedefstructBookInfo{/////圖書結(jié)構(gòu)intb_Code;////圖書編號
charb_Name[20];/////名稱
intb_Total;/////總數(shù)
intb_Out;///借出數(shù)
BookInfo*nextbook;//////下一類圖書
}BookInfo;
typedefstructMemberInfo{///會員結(jié)構(gòu)longm_Code;/////會員編號
charm_Name[20];////會員名字
intl_Codes[6];/////以借書的編號,最多5MemberInfo*nextmember;////下一會員}MemberInfo;
typedefstructSystem{///管理系統(tǒng)結(jié)構(gòu)
BookInfo*BI;
MemberInfo*MI;
intBookTotal;////圖書類庫存量
intMemberTota;/////會員數(shù)量
}System;
System*InitSystem;/////
voidAddBook(System*);////增加圖書
BookInfo*SearchBook(System*,int);////查詢圖書信息
voidDelBook(System*);/////刪除圖書
voidBrrowBook(System*);///////借書處理voidTurnBackBook(System*);////還書處理
voidAddMember(System*);/////添加會員voidDelMember(System*);////刪除會員
MemberInfo*SearchMember(System*,int);/////查詢會員信息voidStoreData(System*);
voidLoadData(System*);
voidExitSystem;
voidmain
{
System*S=InitSystem;
intsel;
do{
cout>sel;
if(sel>=1
coutBI=(BookInfo*)malloc(sizeof(BookInfo));
S->BookTotal=0;
S->BI->nextbook=NULL;
S->MI=(MemberInfo*)malloc(sizeof(MemberInfo));S->MemberTota=0;
S->MI->nextmember=NULL;
returnS;
}
voidAddBook(System*S)
{
intTempcode;
charsel;
BookInfo*p=S->BI;
BookInfo*t;
BookInfo*m;
intnum;
do{
cout>Tempcode;
if(m=SearchBook(S,Tempcode)){
cout>num;
m->b_Total+=num;
}
else{
t=(BookInfo*)malloc(sizeof(BookInfo));t->b_Code=Tempcode;
cout>t->b_Name;
cout>t->b_Total;
t->b_Out=0;
t->nextbook=p->nextbook;
p->nextbook=t;
S->BookTotal++;
}
cout>sel;
if(sel=='n'||sel=='N'){coutBI->nextbook;
intbookcode;
if(code==-1){
cout>bookcode;
}
elsebookcode=code;
while(biif(code==-1){
if(!bi)coutb_Codeb_Nameb_Totalb_OutBI;MemberInfo*memi;charsel;
inttempcode;
inti;
do{
pl=S->BI;
bi=pl->nextbook;
memi=S->MI->nextmember;
cout>tempcode;
while(bi){
if(bi->b_Code==tempcode)break;
pl=bi;
bi=bi->nextbook;
}
if(bi==0)coutnextbook=bi->nextbook;
S->BookTotal--;
while(memi){
for(i=1;il_Codes[0];i++){
if(memi->l_Codes[i]==tempcode)break;
}
if(il_Codes[0]){
for(;il_Codes[0];i++)memi->l_Codes[i]=memi->l_Codes[i+1];
memi->l_Codes[0]--;
}
memi=memi->nextmember;}
free(bi);
}
cout>sel;
if(sel=='N'||sel=='n'){
coutBI->nextbook;BookInfo*p;
charsel;
intmemcode;
MemberInfo*mp;
inttempcode;
do{
cout>tempcode;
p=SearchBook(S,tempcode);
if(!p){
coutb_Total-p->b_Out)b_Total-p->b_Out))cout>memcode;
mp=SearchMember(S,memcode);
if(!mp)coutl_Codes[0]==5)coutb_Out++;
mp->l_Codes[++mp->l_Codes[0]]=tempcode;cout>sel;
if(sel=='N'||sel=='n'){
coutBI->nextbook;BookInfo*p;
MemberInfo*mp;
intmembercode;
inttempcode;
inti;
charsel;
do{
cout>tempcode;
p=SearchBook(S,tempcode);
if(!p){
coutb_Total-p->b_Out)>membercode;
if(!(mp=SearchMember(S,membercode)))coutb_Out--;
for(i=1;il_Codes[0];i++){
if(mp->l_Codes[i]==tempcode)break;}
while(il_Codes[0]){
mp->l_Codes[i]=mp->l_Codes[i+1];i++;
}
mp->l_Codes[0]--;
cout>sel;
if(sel=='N'||sel=='n'){
coutMI;
MemberInfo*t;
do{
cout>Tempcode;
t=(MemberInfo*)malloc(sizeof(MemberInfo));t->m_Code=Tempcode;
cout>t->m_Name;
t->l_Codes[0]=0;
t->nextmember=p->nextmember;p->nextmember=t;
S->MemberTota++;
cout>sel;
if(sel=='n'||sel=='N'){
coutMI->nextmember;
intmembercode;
inti;
if(code==-1){
cout>membercode;
}
elsemembercode=code;
while(biif(code==-1){
if(!bi)coutm_Codem_Namel_Codes[0]l_Codes[0];i++)
coutl_Codes[i]MI->nextmember;
pl=S->MI;
cout>tempcode;
while(bi){
if(bi->m_Code==tempcode)break;
pl=bi;
bi=bi->nextmember;
}
if(!bi)coutnextmember=bi->nextmember;
S->MemberTota--;
for(i=1;il_Codes[0];i++){
if(!(book=SearchBook(S,bi->l_Codes[i]))){coutb_Out--;
book->b_Total--;
}
}
free(bi);
}
cout>sel;
if(sel=='N'||sel=='n'){
coutBI->nextbook;if(!(fp=fopen("BookSys","wb"))){
coutnextbook;
}
MemberInfo*mi=S->MI->nextmember;fwrite(while(mi){
fwrite(mi,sizeof(MemberInfo),1,fp);
mi=mi->nextmember;
}
fclose(fp);
}
voidLoadData(System*S){
FILE*fp;
if(!(fp=fopen("BookSys","rb"))){
coutBI;
BookInfo*tempbi;
fread(
for(inti=1;iBookTotal;i++){
tempbi=(BookInfo*)malloc(sizeof(BookInfo));fread(tempbi,sizeof(BookInfo),1,fp);
bi->nextbook=tempbi;
bi=tempbi;
}
bi->nextbook=NULL;
MemberInfo*mi=S->MI;
MemberInfo*tempmi;
fread(
for(i=1;iMemberTota;i++){
tempmi=(MemberInfo*)malloc(sizeof(MemberInfo));fread(tempmi,sizeof(MemberInfo),1,fp);
mi->nextmember=tempmi;
mi=tempmi;
}
mi->nextmember=NULL;
fclose(fp);
}
voidExitSystem{
charselect;
cout>select;
if(select=='y'
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025創(chuàng)想科技網(wǎng)絡(luò)技術(shù)工程有限公司軟件委托開發(fā)合同
- 水處理藥劑銷售合同
- 2025寧波市家具買賣合同樣本范文
- 2025二手房屋買賣合同書
- 2025員工短期聘用合同書
- 技術(shù)合作與研發(fā)合同范本
- 二零二五年度私人醫(yī)院租賃合同樣本(含醫(yī)療服務(wù)與設(shè)施配置)
- 2025年個人二手房購房合同協(xié)議(三篇)
- 工程背靠背合同范本
- 民間住宅用房出租合同范本
- 湖南省懷化市2024-2025學(xué)年九年級上學(xué)期期末化學(xué)試題(含答案)
- “5E”教學(xué)模式下高中數(shù)學(xué)教學(xué)實踐研究
- 急救藥品知識培訓(xùn)內(nèi)容
- 人教版初中英語單詞大全七八九年級(帶音標(biāo)) mp3聽力音頻下載
- 四川省成都市成華區(qū)2024年中考語文二模試卷附參考答案
- 《西蘭花全程質(zhì)量安全控制技術(shù)規(guī)范》
- 寒假日常生活勞動清單及評價表
- 2024-2030年中國豆腐市場發(fā)展趨勢展望與投資策略分析報告
- 營銷策劃 -嘉華鮮花餅「正宗」戰(zhàn)略重塑
- 胸腰椎骨折中醫(yī)護(hù)理
- 解剖臺市場發(fā)展預(yù)測和趨勢分析
評論
0/150
提交評論