




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上課程設(shè)計報告 課設(shè)課題: 課程設(shè)計圖書管理系統(tǒng) 學(xué) 院: 電 子 信 息 學(xué) 院 專 業(yè): 網(wǎng) 絡(luò) 工 程 姓 名: 班級學(xué)號: BX1213 指導(dǎo)教師: 張艷 報告日期: 2013.12.12 專心-專注-專業(yè)目 錄一、需求分析1.1 系統(tǒng)開發(fā)背景和意義圖書管理作為計算機應(yīng)用的一個分支,有著手工管理無法比擬的優(yōu)點,如檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高圖書管理的效率。因此,開發(fā)一套能夠為用戶提供充足的信息和快捷的查詢手段的圖書管理系統(tǒng),將是非常必要的,也是十分及時的。圖書管理系統(tǒng)需要滿足來自圖書館工作人員、普通用
2、戶和借閱者三方面人員的需求。圖書館工作人員對圖書借閱者的借閱及還書要求進行操作,同時還可通過圖書編號等查詢相應(yīng)的借閱情況;普通用戶的需求是查詢圖書館所存的圖書的相關(guān)情況;圖書借閱者的需求是查看自己的相關(guān)信息及查詢自己的借閱情況。1.2 設(shè)計題目與要求【問題描述】設(shè)計一個計算機管理系統(tǒng)完成圖書管理基本業(yè)務(wù)?!净疽蟆?)每種書的登記內(nèi)容包括書號、書名、著作者、現(xiàn)存量和庫存量;2)對書號建立索引表(線性表)以提高查找效率;3)系統(tǒng)主要功能如下:*采編入庫:新購一種書,確定書號后,登記到圖書帳目表中,如果表中已有,則只將庫存量增加;*借閱:如果一種書的現(xiàn)存量大于0,則借出一本,登記借閱者的書證號和
3、歸還期限,改變現(xiàn)存量;*歸還:注銷對借閱者的登記,改變該書的現(xiàn)存量。二、總體結(jié)構(gòu)設(shè)計有八個模塊1)圖書初始化輸入圖書的一些信息,編號、作者、書名、數(shù)量,使有一定的庫存。2)新書入庫新書采編入庫,輸入編號后如果有次數(shù)只需輸入數(shù)量,沒有則繼續(xù)輸入書名、作者、數(shù)量。3)添加讀者信息讀者信息初始化,輸入讀書證號和姓名,只有輸入書證號和姓名才能進行借書還書4)借書模塊讀者輸入讀書證號,證號存在輸入要借的圖書編號,不能借同一本書,如果借書數(shù)量以達到最大也不能借書。5)還書模塊歸還已借的圖書,要先輸入讀者書證號,書證號存在繼續(xù)輸入要還的圖書編號,圖書編號存在并且借來此書,歸還成功。6)查詢圖書信息7)查詢讀
4、者信息可查詢讀者姓名書證號,借了幾本書,都是什么書和還書日期,還可以借幾本書。8)退出退出讀書管理系統(tǒng)并保存讀者和圖書信息。圖書管理系統(tǒng) 查詢操作模塊讀者管理模塊借閱操作模塊圖書管理模塊理退出圖書信息查詢讀者信息查詢還書系統(tǒng)借書系統(tǒng)輸入讀者信息采編入庫初始化圖書信息圖2-1 主控模塊三、各子模塊設(shè)計3.1 初始化圖書信息進入系統(tǒng)后首先進行圖書初始化,輸入圖書的信息。開始輸入圖書編號、名稱、作者和圖書數(shù)量進入系統(tǒng)圖3-1 初始化圖書信息流程圖3.2 系統(tǒng)主界面初始化之后,進入系統(tǒng),顯示功能列表,可選擇任意系統(tǒng),但在借書之前先要輸入讀者信息。開始輸入功能所對應(yīng)的數(shù)字輸入的數(shù)字小于0大于6 否錯誤!
5、請重新輸入 是執(zhí)行所選功能圖3-2 系統(tǒng)主界面流程圖3.3 采編入庫選擇采編入庫的功能后,先輸入圖書編號判斷是否存在,若存在,則在原有記錄上加上添加的圖書數(shù)量;若不存在,則加入新的記錄。錄入圖書信息判斷是否有此圖書是在原有的紀錄上加上現(xiàn)有的圖書數(shù)量否向系統(tǒng)中加入新紀錄圖3-3 采編入庫流程圖3.4 輸入讀者信息選擇讀者登記后,輸入讀者編號跟姓名。開始輸入讀者信息:讀者書證號、姓名結(jié)束圖3-4 輸入讀者信息流程圖3.5 借閱圖書選擇借閱圖書功能后,輸入讀者證號,判斷該讀者是否存在,若存在則輸入借閱圖書的編號,判斷該圖書編號是否存在,若存在,則判斷讀者借閱的圖書數(shù)量是否滿了和是否借閱了相同的書籍,
6、判斷成功后,則輸入歸還該圖書的日期,該圖書現(xiàn)有量減一,借閱成功;若讀者不存在則返回。輸入讀者書證號判斷讀者是否存在否輸出次讀者編號不存在!按任意鍵返回是輸入要借的圖書編號判斷圖書編號是否存在否輸出此圖書編號不存在!按任意鍵返回是看是否還有此圖書否輸出此書已借完,按任意鍵返回是看讀者的借書數(shù)目是否滿了是輸出借書數(shù)目已滿不能借書,按任意鍵返回否看讀者是否借了相同的書是輸出同一讀者不能借相同的兩本書否輸入歸還圖書的日期圖書現(xiàn)有數(shù)量減1輸出讀者結(jié)束成功,按任意鍵返回結(jié)束圖3-5 借閱圖書流程圖3.6 歸還圖書實現(xiàn)歸還圖書功能時,首先輸入讀者編號,并判斷是否存在,若不存在就按任意鍵返回,;若存在輸入歸還
7、的圖書編號并判斷是否存在,若歸還圖書編號不存在,則返回。存在后,將讀者借閱該圖書的信息清空,該圖書的現(xiàn)有量加一。最后按任意鍵返回輸入要還書的讀者編號判斷讀者編號是否存在 否輸出讀者編號不存在按任意鍵返回是輸入讀者還書編號判斷圖書編號是否存在否輸出此圖書編號不存在按任意鍵返回 是此圖書編號和還書日期等于0現(xiàn)有圖書數(shù)量加1輸出讀者還書完畢,按任意鍵返回結(jié)束圖3-6 歸還圖書流程圖3.7 查詢圖書信息查詢圖書信息時,輸入圖書的編號,判斷是否存在。不存在則返回;存在則輸出圖書的編號,書名,作者,現(xiàn)有量,跟庫存量。判斷圖書信息是否為空 是輸出此圖書編號不存在按任意鍵返回 否輸出圖書信息:編號、名稱、作者
8、、現(xiàn)有和庫存結(jié)束圖3-7 查詢圖書信息流程圖3.8 查詢讀者信息查詢讀者信息時,首先判斷讀者的編號是否存在,不存在就按任意鍵返回。若存在,則輸出讀者的證號,姓名,和借閱的圖書編碼及其還書日期。判斷讀者信息是否為空 是輸出此讀者編號不存在按任意鍵返回否輸出讀者書證號、姓名、圖書編碼和還書日期輸出讀者信息打印完畢結(jié)束圖3-8 查詢讀者信息流程圖四、程序設(shè)計調(diào)試情況分析在整個課程設(shè)計中,我們遇到了許多的問題。有些問題吧,我們在苦思冥想的時候,突然我們的編譯器顯示出了正確的結(jié)果,當我們欣喜若狂的在運行下一次的時候又會出現(xiàn)相同的問題,在借閱的過程中,在一個讀者借閱了兩本書以上的時候,上一本書的歸還日期上
9、還有下一本書上的編號,最后一本書輸出的才是正確的結(jié)果。下圖是借閱了兩本書的截圖:圖4-1看到這里我們也知道是第一本書的還書日期的地址空間跟第二本書的編號連接在了一起導(dǎo)致輸出的時候一直到第二本書編號的的字符串后面的/0結(jié)束。最后發(fā)現(xiàn)是我們在定義還書日期這個字符串的時候開辟的空間太小。我們把char limit_date8;改為char limit_date10就好了。圖4-2五、測試結(jié)果5.1 歡迎界面程序運行顯示“歡迎使用圖書管理系統(tǒng)”,按任意鍵進入到主菜單如圖5-1所示。圖5-1 歡迎界面5.2 初始化圖書信息在沒有文件的時候會進入到初始化界面,需要輸入一本圖書的相關(guān)信息,如圖5-2所示。圖
10、5-2 初始化圖書信息5.3 系統(tǒng)主界面接著進入的系統(tǒng)的主菜單,如圖5-3所示。圖5-3 系統(tǒng)主界面5.4 采編入庫實現(xiàn)采編入庫功能按照系統(tǒng)提示輸入信息。如圖5-4。如果該圖書已存在,則直接輸入圖書的數(shù)量如圖5-5所示。圖5-4 采編入庫(書不存在)圖5-5 采編入庫(書已存在)5.5 輸入讀者信息按照要求輸入讀者信息,如圖5-6所示。圖5-6 輸入讀者信息5.6 借閱圖書按照要求先輸入讀者證號,在輸入借閱的圖書編號如圖5-7所示。如果讀者已經(jīng)借閱了一本書之后不能借閱同一本圖書如圖5-8所示。圖5-7 借閱圖書圖5-8 同一個讀者不能借閱同一本圖書5.7 歸還圖書歸還圖書的要求按著圖5-9輸入
11、即可。圖5-9 歸還圖書5.8 查詢圖書信息圖5-10 是沒有借閱之前的圖書的相關(guān)信息,圖5-11是讀者借閱了圖書之后的信息,只改變了現(xiàn)有量。圖5-10 借閱登記后圖5-11 歸還圖書后5.9 查詢讀者信息查詢讀者的信息時,會輸出相關(guān)借閱的圖書編號以及還書日期如圖5-12,5-13所示。圖5-12 查詢讀者信息(一)圖5-13 查詢讀者信息(二)5.10 保存文件,退出在系統(tǒng)的主菜單后,按0 功能保存并退出系統(tǒng)。圖5-14 文件保存六、總結(jié)個人覺得課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程. 在生活中可以
12、說得是無處不在。因此作為新世紀的大學(xué)來說能夠分析,并解決程序中出現(xiàn)的問題是十分重要的。課程設(shè)計就能體現(xiàn)到這一方面。能夠?qū)⒛闼鶎W(xué)到的理論跟實際結(jié)合在一起。通過本次課程設(shè)計感慨良多。從課堂上聽到的到課后應(yīng)用到的根本就不是一回事。課堂上,老師在上面說,自己在下面聽,到也能聽懂??墒堑搅藨?yīng)用上,自己倒也是知道要用到哪方面的內(nèi)容,但是偏偏不知道從何處下手;好不容易寫好的一小段代碼,還要跟其他功能不相沖突,這又需要我們自己去想辦法去兼容好他們。通過本次課程設(shè)計試我懂得理論要跟實踐相結(jié)合。正所謂“臺上十分鐘,臺下十年功”,別人在臺上表演了十分鐘,你覺得很容易,可那里知道別人在下面做的努力呢。同樣的,我們在課
13、堂上聽老師講確實覺得是那么回事,但是真正做下去,也只有自己知道是何種滋味。理論始終是理論,不能都熟練應(yīng)用自己所學(xué)到的知識,到頭來也是一場空。在這次的課程設(shè)計過程中,我們也遇到了不能解決的難題,比如說在讀者查詢的時候,第二個讀者始終會覆蓋第一個讀者的數(shù)據(jù)。我們始終沒有搞明白問題的所在,只知道不是在輸出讀者信息的問題,應(yīng)該是添加讀者過程中指針始終指在第一個地址,沒有移動。我們按照查詢圖書的函數(shù)重新編寫了一次還是同樣問題。一直到答辯前一天晚上還沒有解決,之后只能放棄。還有在最開始的時候我們的程序功能并沒有清屏功能,整個界面看起來并不是那么整潔。于是我用用getch();system(“cls”);來
14、進行清屏,最后會出先一個小問題,在我們查詢了一些資料后,又再次基礎(chǔ)上加上了goto end;這個函數(shù)來加以完善。這次課程設(shè)計,我們也遇到了很多問題,比如說,我們再輸入第二個讀者的信息后會覆蓋第一個讀者的信息,想了半天沒有弄懂是哪里錯了,最后才看出來我們定義的結(jié)構(gòu)體指針沒有移動,導(dǎo)致我們輸入的讀者信息一直存放在同一個地址中。也有些不懂需要在網(wǎng)上查詢的代碼,組員之間相互配合,不懂就詢問其他同學(xué)或者查詢資料亦或者自己去弄懂問題的根結(jié),團結(jié)協(xié)作的精神在這次課程設(shè)計中表現(xiàn)的淋漓盡致。我們不僅將以前的知識復(fù)習(xí)一遍;同時也弄懂了一些平常自己似懂非懂的;最后同學(xué)之間的友誼也慢慢變的深厚起來小組分工:孫澤銘:采
15、編入庫、查詢圖書信息、查詢讀者信息黃響:添加讀者、借閱圖書、歸還圖書七、參考文獻1 嚴蔚敏 吳偉民編著 數(shù)據(jù)結(jié)構(gòu) 清華大學(xué)出版社,20002 黃國瑜 葉乃菁編著 數(shù)據(jù)結(jié)構(gòu) 清華大學(xué)出版社,2001 3 胡學(xué)鋼編著 數(shù)據(jù)結(jié)構(gòu)算法設(shè)計指導(dǎo) 清華大學(xué)出版社,19994 王士元編著 數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫系統(tǒng) 南開大學(xué)出版社,20005 李強根主編 數(shù)據(jù)結(jié)構(gòu)(C+描述) 中國水利水電出版社, 20016 楊正宏編著 數(shù)據(jù)結(jié)構(gòu) 中國鐵道出版社,20027 胡學(xué)鋼編著 數(shù)據(jù)結(jié)構(gòu)算法設(shè)計指導(dǎo) 清華大學(xué)出版社,19998 殷人昆 徐孝凱編著 數(shù)據(jù)結(jié)構(gòu)習(xí)題解析 清華大學(xué)出版社,20029 李春葆編著 數(shù)據(jù)結(jié)構(gòu)習(xí)題與解
16、析 清華大學(xué)出版社,200110 咨訊教育小組編著 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)版 中國鐵道出版社,2002八、附錄(源代碼)#include#include #include #include#define Max 4 typedef struct bookchar book_num10;char book_name20;char book_writer10;int book_xy;int book_kc;int n;struct book *next;BK;typedef struct borrowchar borrow_book_num10;char limit_date10;BO;typedef
17、struct readerchar reader_num10;char reader_name10;int right;int m;BO borrowMax;struct reader *next;RD;BK *h_book;RD *h_reader;int n=0;int m=0;void Login(); int Menu(); void Init(); void Menu_select(); void Insert_New_Book(); void add_reader();void Print_reader(); void Print_book(); void Borrow_Book(
18、); void Return_Book(); void Save(); void Save_Book(); void Save_Reader(); void Load();void Load_Reader(); void Load_Book(); void Login()system(cls);printf(nnntt*n);printf(nnntt* 歡迎使用圖書管理系統(tǒng) *n);printf(nnntt*n);printf(nnntt 按任意鍵進入系統(tǒng).);getch(); system(cls);int Menu() /*主菜單*/ int dm;printf(ntt圖書管理系統(tǒng)主菜單n
19、);printf(=n);printf(*t1-采編入庫 n);printf(*t2-登記讀者 n); printf(*t3-借閱登記 n);printf(*t4-還書管理 n);printf(*t5-查詢圖書信息 n);printf(*t6-查詢讀者信息 n);printf(*t0-退出系統(tǒng) n);printf(=n);printf(請選擇相應(yīng)的代碼:); for(;) scanf(%d,&dm); /dm輸入的數(shù)字if(dm6)printf(n錯誤!請重新輸入:);else break;return dm; void Menu_select()/*主菜單選擇函數(shù)*/for(;) switc
20、h(Menu() /*功能選擇*/ case 0: system(cls); Save();printf(nnt文件保存成功!n); printf(nnt歡迎下次使用本系統(tǒng)!n); getch(); exit(0);case 1: Insert_New_Book();break; case 2: add_reader();break;case 3: Borrow_Book();break;case 4: Return_Book();break;case 5: Print_book();break;case 6: Print_reader();break;default:printf(n錯誤!)
21、;exit(0);void Init() /*初始化*/BK *p0;printf(n圖書初始化開始,請輸入圖書信息.n包括編號.書名.數(shù)量.n);p0=(BK*)malloc(sizeof(BK);h_book=p0;printf(n請輸入圖書信息:n);printf(圖書編號:); /*輸入圖書編號(唯一)*/scanf(%s,p0-book_num);printf(圖書名稱:); /*輸入圖書名稱*/scanf(%s,p0-book_name);printf(圖書作者:); /*輸入圖書作者*/scanf(%s,p0-book_writer);printf(圖書數(shù)量:); /*輸入圖書數(shù)
22、量*/scanf(%d,&p0-book_kc);p0-book_xy=p0-book_kc; /*開始時圖書現(xiàn)有量和庫存量相等*/p0-next=NULL;p0-n=+n;printf(n圖書信息初始化完畢!按任意鍵繼續(xù)下一步操作.n);getch();system(cls);void Insert_New_Book()/*新書入庫*/BK *p,*p0,*p1; p=p1=h_book;printf(n新書入庫模塊.n);printf(n請輸入新書信息.n包括書號.書名.數(shù)量.n);p0=(BK *)malloc(sizeof(BK);printf(圖書編號:);scanf(%s,p0-b
23、ook_num);while(strcmp(p0-book_num,p1-book_num)!=0&p1-next!=NULL)p1=p1-next;if(strcmp(p0-book_num,p1-book_num)=0) /*此處分兩種情況,若圖書編號存在,則直接進庫,只須輸入書的數(shù)量*/printf(n此編號圖書已存在!直接入庫!n); printf(圖書數(shù)量:); scanf(%d,&p0-book_kc); p1-book_kc+=p0-book_kc; p1-book_xy+=p0-book_kc;else/*若不存在,則需要輸入其他的信息,然后在進行插入操作*/printf(圖書
24、名稱:);scanf(%s,p0-book_name);printf(圖書作者:);scanf(%s,p0-book_writer);printf(圖書數(shù)量:);scanf(%d,&p0-book_kc);/庫存數(shù)量while(p-next) p=p-next;if(h_book=NULL) h_book=p0; /*此處分兩種情況,鏈表中沒有數(shù)據(jù),head直接指向p0處*/else p-next=p0; /*此處分兩種情況,鏈表中有數(shù)據(jù),鏈表中最后元素的next指向p0處*/ p0-next=NULL; p0-book_xy=p0-book_kc; p0-n=+n; printf(n新書入庫
25、完畢!按任意鍵繼續(xù)下一步操作.n);getch();system(cls);void add_reader()/*添加讀者*/ RD *p0; int i; printf(n讀者初始化開始,請輸入讀者信息.n包括書證號.姓名.n);p0=(RD*)malloc(sizeof(RD); /*申請新結(jié)點存儲空間*/h_reader=p0;printf(n請輸入讀者的信息:n); printf(讀者書證號:); scanf(%s,p0-reader_num); printf(讀者姓名:); scanf(%s,p0-reader_name); p0-right=0; for(i=0;iborrowi.
26、borrow_book_num,0); /*所借圖書直接置為(即沒有借書)*/strcpy(p0-borrowi.limit_date,0); p0-next=NULL;p0-m=+m;printf(n讀者信息初始化完畢!按任意鍵繼續(xù)下一步操作.n); getch();system(cls);void Borrow_Book() /*借書模塊*/BK *p0; RD *p1;char bo_num10,rea_num10,lim_date8;int i;p0=h_book; p1=h_reader;printf(n借書模塊.n);printf(n請輸入借書的讀者書證號:); scanf(%s,
27、rea_num);while(p1-next!=NULL&strcmp(rea_num,p1-reader_num)!=0) p1=p1-next; if(p1-next=NULL&strcmp(rea_num,p1-reader_num)!=0) printf(n此讀者編號不存在!按任意鍵返回.n);goto END; printf(n請輸入你要借的書的編號:); scanf(%s,bo_num);while(strcmp(bo_num,p0-book_num)!=0&p0-next!=NULL) p0=p0-next; if(p0-next=NULL&strcmp(bo_num,p0-bo
28、ok_num)!=0) printf(n此圖書編號不存在!按任意鍵返回.n);goto END;else if(p0-book_xyrightMax|p1-right=Max) printf(n不好意思,借書數(shù)目已滿!不能借書!n按任意鍵返回.);goto END;else if(strcmp(p1-borrow0.borrow_book_num,0)!=0) for(i=0;iborrowi.borrow_book_num,bo_num)=0)printf(n抱歉!同一個讀者不能同借兩本相同的書!n按任意鍵返回.);goto END;else if(strcmp(p1-borrowi.bor
29、row_book_num,0)=0) printf(n請輸入你要歸還圖書的日期:); scanf(%s,lim_date); strcpy(p1-borrowp1-right+.borrow_book_num,bo_num); strcpy(p1-borrowp1-right-1.limit_date,lim_date); p0-book_xy-; printf(n讀者編號%s借書完畢!按任意鍵繼續(xù)下步操作.,p1-reader_num); goto END; else printf(n請輸入你要歸還圖書的日期:); scanf(%s,lim_date); strcpy(p1-borrowp1
30、-right+.borrow_book_num,bo_num); strcpy(p1-borrowp1-right-1.limit_date ,lim_date ); p0-book_xy-;p0-book_kc-; printf(n讀者編號%s借書完畢!按任意鍵繼續(xù)下步操作.,p1-reader_num); goto END; END:getch(); system(cls); void Return_Book() /*還書模塊*/BK *p; RD *q;int i,j,find=0;char return_book_num10,return_reader_num10;p=h_book;
31、q=h_reader;printf(n還書模塊.n);printf(n請輸入要還書的讀者編號:); scanf(%s,return_reader_num); while(q-next!=NULL&strcmp(return_reader_num,q-reader_num)!=0) q=q-next; if(q-next=NULL&strcmp(return_reader_num,q-reader_num)!=0)find=2;printf(n此讀者編號不存在!按任意鍵返回.n);goto end;printf(n請輸入讀者還書的編號:);scanf(%s,return_book_num); w
32、hile(p-next!=NULL&strcmp(return_book_num,p-book_num)!=0)p=p-next; if(p-next=NULL&strcmp(return_book_num,p-book_num)!=0)find=2;printf(n錯誤!此圖書編號不存在!按任意鍵返回.n);goto end; for(i=0;iborrowi.borrow_book_num)=0) /*如果此讀者借了此書*/find=1; for(j=i;jborrowj.borrow_book_num,q-borrowj+1.borrow_book_num); strcpy(q-borr
33、owj.limit_date,q-borrowj+1.limit_date); strcpy(q-borrowMax-1.borrow_book_num,0);strcpy(q-borrowMax-1.limit_date,0); p-book_xy+; q-right-; printf(n編號%s的讀者還書完畢!按任意鍵繼續(xù)下步操作.,return_reader_num); goto end; if(find=0) printf(n錯誤!此讀者未借此書!按任意鍵返回.n); end: getch(); system(cls); void Print_book() /*查詢圖書信息*/BK *
34、p;int i;char e10; p=h_book;printf(輸入查詢的圖書編號:);scanf(%s, e);for(i=0;ibook_num,e)=0)printf(n圖書信息如下:nn);printf(圖書編號t圖書名稱t圖書作者t現(xiàn)有t庫存n);printf(%stt%stt%stt%dt%dn,p-book_num,p-book_name,p-book_writer,p-book_xy,p-book_kc);break;elsep=p-next;printf(n圖書信息打印完畢!按任意鍵繼續(xù)下一步操作.);getch();system(cls);void Print_read
35、er() /*查詢讀者信息*/RD *p;int i, j;char e10;p=h_reader;printf(輸入查詢的讀者編號:);scanf(%s, e);for(j=0;jreader_num,e)=0)printf(n讀者信息如下:nn);printf(讀者書證號t讀者姓名n); printf(%stt%s,p-reader_num,p-reader_name);for(i=0;iborrowi.borrow_book_num);printf(tt%s,p-borrowi.limit_date); printf(n);break;elsep=p-next;printf(n讀者信息打
36、印完畢!按任意鍵繼續(xù)下一步操作.);getch();system(cls);void Save() /*保存信息*/Save_Reader();Save_Book();void Save_Reader() /*保存讀者信息*/FILE *fp_reader; RD *p,*p0;p=h_reader;if(fp_reader=fopen(Reader.txt,wb)=NULL) /*創(chuàng)建文件,進行保存*/printf(n文件保存失敗!n請重新啟動本系統(tǒng).n);exit(0);while(p!=NULL) if(fwrite(p,sizeof(RD),1,fp_reader)!=1) /*將鏈表中的信息寫入文件中*/printf(n寫入文件失敗!n請重新啟動本系統(tǒng)!n);p0=p;p=p-next;free(p0); /*釋放所有結(jié)點*/h_reader=NULL;
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中校級課題申報書
- 發(fā)票供銷合同范本
- 南匯家電運輸合同范本
- 保時捷合同范本
- 網(wǎng)球課題申報書格式要求
- 公司交保險合同范本
- 全國合同范本模板
- 合同范本是幾號字體
- 買賣小型合同范本
- 中介簽獨家合同范本
- 《社會應(yīng)急力量建設(shè)基礎(chǔ)規(guī)范 第2部分:建筑物倒塌搜救》知識培訓(xùn)
- 2024年河南省鄭州市二七區(qū)四中小升初數(shù)學(xué)試卷(含答案)
- 國有企業(yè)管理人員處分條例培訓(xùn)2024
- 浙江省寧波市2025屆高三上學(xué)期一模考試數(shù)學(xué)試卷 含解析
- 代理記賬業(yè)務(wù)內(nèi)部規(guī)范(三篇)
- 腰椎間盤突出癥課件(共100張課件)
- 委托調(diào)解民事糾紛協(xié)議書合同
- 中醫(yī)四季養(yǎng)生之道課件
- 消防安全教育主題班會課件
- 《營養(yǎng)配餐》(教學(xué)設(shè)計)-2024-2025學(xué)年北師大版數(shù)學(xué)六年級上冊
- 《無機化學(xué)》課件-第6章 分子結(jié)構(gòu)和晶體結(jié)構(gòu)
評論
0/150
提交評論