c語言課程設(shè)計(jì)—圍甲比賽信息管理系統(tǒng)_第1頁
已閱讀1頁,還剩123頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p>  《C語言程序設(shè)計(jì)》課程設(shè)計(jì)</p><p><b>  實(shí)驗(yàn)報(bào)告</b></p><p>  題目: 圍甲比賽信息管理系統(tǒng) </p><p>  專業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) </p><p>  班級: &l

2、t;/p><p>  學(xué)號: </p><p>  姓名: </p><p>  成績: </p><p>  指導(dǎo)教師:

3、 </p><p>  完成日期: 2010年 3月 28日</p><p>  題目:圍甲比賽信息管理系統(tǒng)</p><p>  對本年度舉辦的全國圍棋甲級聯(lián)賽比賽信息進(jìn)行管理,主要包括參賽俱樂部基本信息,參賽棋手基本信息,圍棋對局基本信息等三類信息。</p><p>  中國圍棋甲級聯(lián)賽是中國圍棋協(xié)會1999年開始舉辦的圍棋賽

4、,由各地圍棋俱樂部參加。每年度由12個(gè)俱樂部參賽,比賽兩輪共22場。每場比賽,每個(gè)俱樂部可以派出6名隊(duì)員之中的4名參賽,其中有一局主將賽、一局快棋和兩局普通比賽。</p><p>  比賽計(jì)分辦法:比賽每場勝一局得2分,負(fù)一局得0分。局分高者場分記3分,局分少者得0分,局分相同時(shí),則主將勝方場分得2分;負(fù)方得1分。</p><p>  名次計(jì)算:場分多者名次列前,場分相同則比較局分,局分相

5、同則比較主將勝率,再相同則比較各隊(duì)第一勝率(出場15場以上者)高者名次列前,依次比較直至比出名次。</p><p>  甲級聯(lián)賽的最后兩名降入中國圍棋乙級聯(lián)賽,乙級聯(lián)賽前兩名升入甲級聯(lián)賽。</p><p>  參賽俱樂部基本信息參考:</p><p>  參賽棋手基本信息參考:</p><p>  圍棋對局基本信息參考:</p>

6、<p><b>  要求實(shí)現(xiàn)的功能</b></p><p><b>  1.?dāng)?shù)據(jù)維護(hù)</b></p><p>  本模塊實(shí)現(xiàn)參賽俱樂部基本信息,參賽棋手基本信息,圍棋對局基本信息等三方面基本信息的數(shù)據(jù)維護(hù)功能,又分為三個(gè)子模塊。</p><p>  1)參賽俱樂部基本信息維護(hù)</p><p&

7、gt;  包括對參賽俱樂部基本信息的錄入、修改和刪除等功能。</p><p>  2)參賽棋手基本信息維護(hù)</p><p>  包括對參賽棋手基本信息的錄入、修改和刪除等功能。</p><p>  3)圍棋對局基本信息維護(hù)</p><p>  包括對圍棋對局基本信息的錄入、修改和刪除等功能。</p><p><b

8、>  2.?dāng)?shù)據(jù)查詢</b></p><p>  本模塊實(shí)現(xiàn)參賽俱樂部基本信息,參賽棋手基本信息,圍棋對局基本信息等三方面基本信息的數(shù)據(jù)查詢功能,又分為三個(gè)子模塊。</p><p>  1)參賽俱樂部基本信息查詢</p><p><b>  實(shí)現(xiàn)兩個(gè)功能。</b></p><p> ?、僖跃銟凡棵Q中所包

9、含的字符子串為條件查詢參賽俱樂部基本信息。例如,查找并顯示俱樂部名稱中包含“集團(tuán)”所有參賽俱樂部基本信息。</p><p>  2)參賽棋手基本信息查詢</p><p><b>  實(shí)現(xiàn)兩個(gè)功能。</b></p><p> ?、僖云迨中彰麨闂l件查找并顯示滿足條件的參賽棋手基本信息。例如,查找并顯示棋手姓名為“古力”的參賽棋手基本信息。</

10、p><p>  ②以所屬俱樂部和勝局?jǐn)?shù)為條件查找并顯示滿足條件的參賽棋手基本信息。例如,查找并顯示所屬俱樂部為“中國移動上海”且勝局?jǐn)?shù)為10的所有參賽棋手基本信息。</p><p>  3)圍棋對局基本信息查詢</p><p><b>  實(shí)現(xiàn)兩個(gè)功能。</b></p><p> ?、僖詧龃魏蛨?zhí)黑或執(zhí)白棋手為條件查找并顯示滿

11、足條件的圍棋對局基本信息。例如,查找并顯示場次為3且執(zhí)黑或執(zhí)白棋手為“常昊”的圍棋對局基本信息。</p><p> ?、谝詤①惼迨謩儇?fù)情況為條件查找并顯示滿足條件的所有圍棋對局基本信息。例如,查找并顯示執(zhí)黑棋手為“孔杰”且勝負(fù)為0(黑勝)或執(zhí)白棋手為“孔杰”且勝負(fù)為1(白勝)的所有圍棋對局基本信息。</p><p><b>  3.?dāng)?shù)據(jù)統(tǒng)計(jì)</b></p>

12、<p>  本模塊實(shí)現(xiàn)五個(gè)方面的數(shù)據(jù)統(tǒng)計(jì)功能,前四個(gè)功能需求已給出,第五個(gè)自行設(shè)計(jì)。</p><p> ?、俜謩e統(tǒng)計(jì)各俱樂部的場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù),按場分和局分對統(tǒng)計(jì)結(jié)果按降序排序(先按場分降序排序,對場分相同的俱樂部再按局分降序排序),排序后輸出每個(gè)俱樂部名稱、教練、場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)。</p><p>  ②分別統(tǒng)計(jì)各棋手的參賽局?jǐn)?shù)、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)、勝率(勝

13、局?jǐn)?shù)比參賽局?jǐn)?shù)),按勝率降序排序后,輸出棋手姓名、所屬俱樂部、參賽局?jǐn)?shù)、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)、勝率。</p><p> ?、郯炊挝唤y(tǒng)計(jì)參賽棋手中九段、八段至初段(對應(yīng)段位為:'9'、'8'、...、'1')等各段位棋手的人數(shù),輸出統(tǒng)計(jì)結(jié)果。</p><p>  ④分別統(tǒng)計(jì)各俱樂部主將局勝局?jǐn)?shù)、快棋局勝局?jǐn)?shù)、棋手執(zhí)黑對局?jǐn)?shù)及黑勝局?jǐn)?shù)、棋手執(zhí)白對局?jǐn)?shù)及

14、白勝局?jǐn)?shù),輸出統(tǒng)計(jì)結(jié)果。</p><p>  ⑤有關(guān)圍甲比賽其他方面的數(shù)據(jù)統(tǒng)計(jì)。</p><p><b>  系統(tǒng)功能模塊結(jié)構(gòu)圖</b></p><p>  圖 1.1圍甲比賽信息管理系統(tǒng)的功能模塊</p><p>  本圍甲比賽信息管理系統(tǒng),按相關(guān)性對系統(tǒng)功能進(jìn)行分解組合和補(bǔ)充,形成如圖1.1所示的5個(gè)系統(tǒng)功能模塊:文

15、件,數(shù)據(jù)維護(hù),數(shù)據(jù)查詢,數(shù)據(jù)統(tǒng)計(jì)和幫助。</p><p>  下面分別描述這5個(gè)模塊及其子模塊的功能。</p><p><b>  文件</b></p><p>  文件模塊包括一系列與系統(tǒng)啟動運(yùn)行和系統(tǒng)結(jié)束運(yùn)行相關(guān)的環(huán)境維護(hù)和數(shù)據(jù)保障操作。進(jìn)一步劃分為6個(gè)子模塊:界面初始化、數(shù)據(jù)加載、數(shù)據(jù)保存、數(shù)據(jù)備份、數(shù)據(jù)恢復(fù)和退出系統(tǒng)。結(jié)構(gòu)功能如圖3.2

16、所示。</p><p>  圖1.2文件模塊的子模塊劃分</p><p>  界面初始化子模塊:用于設(shè)置控制臺窗口顯示模式,將屏幕設(shè)置成80列25行的文本字符界面,設(shè)置窗口標(biāo)題欄,清屏并顯示系統(tǒng)菜單欄和系統(tǒng)狀態(tài)欄。</p><p>  數(shù)據(jù)加載子模塊:用于將存放在多個(gè)數(shù)據(jù)文件中的代碼數(shù)據(jù)和基礎(chǔ)數(shù)據(jù)讀入內(nèi)存,構(gòu)造數(shù)據(jù)鏈表,同時(shí)輸出相關(guān)加載信息。。</p>

17、<p>  數(shù)據(jù)保存子模塊:用于將內(nèi)存中代碼表數(shù)據(jù)以及鏈表數(shù)據(jù)按設(shè)置路徑分別保存到各個(gè)數(shù)據(jù)文件中。</p><p>  數(shù)據(jù)備份子模塊:用于將存放在多個(gè)數(shù)據(jù)文件中的各種數(shù)據(jù)按指定路徑存到一個(gè)數(shù)據(jù)文件中,供用戶在系統(tǒng)數(shù)據(jù)被破壞后用來恢復(fù)。</p><p>  系統(tǒng)恢復(fù)子模塊:與數(shù)據(jù)備份子模塊相對應(yīng),能從備份文件中將數(shù)據(jù)恢復(fù)到內(nèi)存中。用于提高系統(tǒng)的安全性和可靠性。</p>

18、;<p>  退出程序子模塊:釋放程序運(yùn)行過程中申請的動態(tài)存儲區(qū),關(guān)閉控制臺標(biāo)準(zhǔn)輸入與輸出設(shè)備句柄,將標(biāo)題欄設(shè)置為“運(yùn)行結(jié)束”,清除屏幕窗口信息,結(jié)束系統(tǒng)運(yùn)行。</p><p><b>  數(shù)據(jù)維護(hù)</b></p><p>  此模塊包括對三種基礎(chǔ)信息的錄入、修改以及刪除功能,保證數(shù)據(jù)的有效性、完整性和準(zhǔn)確性。該模塊按信息種類劃分為俱樂部信息維護(hù),棋手信

19、息維護(hù)和對局信息維護(hù)三個(gè)子模塊。如圖1.3所示。</p><p>  圖1.3數(shù)據(jù)維護(hù)模塊的子模塊劃分</p><p>  俱樂部信息維護(hù):俱樂部信息的錄入、修改和刪除。</p><p>  棋手信息維護(hù):棋手信息的錄入、修改和刪除。</p><p>  對局信息維護(hù):對局信息的錄入修改和刪除。</p><p><

20、;b>  數(shù)據(jù)查詢</b></p><p>  數(shù)據(jù)查詢模塊提供對系統(tǒng)代碼信息以及三種基礎(chǔ)數(shù)據(jù)信息按多種條件進(jìn)行查詢的功能。該模塊按信息種類分為勝負(fù)代碼查詢,局別代碼查詢,俱樂部信息查詢,棋手信息查詢,對局信息查詢。如圖1.4所示。</p><p>  圖1.4 數(shù)據(jù)查詢模塊的子模塊劃分</p><p>  局別代碼以及勝負(fù)代碼查詢子模塊:分別用來

21、在屏幕窗口中顯示這兩類代碼的完整內(nèi)容。</p><p>  俱樂部信息查詢子模塊:以俱樂部名稱中所包含的字符子串為條件查詢參賽俱樂部基本信息。例如,查找并顯示俱樂部名稱中包含“集團(tuán)”所有參賽俱樂部基本信息。</p><p>  棋手信息查詢:兩個(gè)功能:①以棋手姓名為條件查找并顯示滿足條件的參賽棋手基本信息。例如,查找并顯示棋手姓名為“古力”的參賽棋手基本信息。②以所屬俱樂部和勝局?jǐn)?shù)為條件查

22、找并顯示滿足條件的參賽棋手基本信息。例如,查找并顯示所屬俱樂部為“中國移動上?!鼻覄倬?jǐn)?shù)為10的所有參賽棋手基本信息。</p><p>  對局信息查詢:兩個(gè)功能:①以場次和執(zhí)黑或執(zhí)白棋手為條件查找并顯示滿足條件的圍棋對局基本信息。例如,查找并顯示場次為3且執(zhí)黑或執(zhí)白棋手為“常昊”的圍棋對局基本信息。②以參賽棋手勝負(fù)情況為條件查找并顯示滿足條件的所有圍棋對局基本信息。例如,查找并顯示執(zhí)黑棋手為“孔杰”且勝負(fù)為0(

23、黑勝)或執(zhí)白棋手為“孔杰”且勝負(fù)為1(白勝)的所有圍棋對局基本信息。</p><p><b>  數(shù)據(jù)統(tǒng)計(jì)</b></p><p>  數(shù)據(jù)統(tǒng)計(jì)模塊提供對三種基礎(chǔ)數(shù)據(jù)進(jìn)行多方面的統(tǒng)計(jì)的功能。按統(tǒng)計(jì)條件,該模塊劃分為俱樂部信息統(tǒng)計(jì),棋手信息統(tǒng)計(jì),段位情況統(tǒng)計(jì),各種棋局情況統(tǒng)計(jì),以及教練成果統(tǒng)計(jì)。如圖1.5所示。</p><p>  圖1.5數(shù)據(jù)統(tǒng)

24、計(jì)模塊的子模塊劃分</p><p>  俱樂部信息統(tǒng)計(jì)子模塊:分別統(tǒng)計(jì)各俱樂部的場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù),按場分和局分對統(tǒng)計(jì)結(jié)果按降序排序(先按場分降序排序,對場分相同的俱樂部再按局分降序排序),排序后輸出每個(gè)俱樂部名稱、教練、場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)。</p><p>  棋手信息統(tǒng)計(jì)子模塊:分別統(tǒng)計(jì)各棋手的參賽局?jǐn)?shù)、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)、勝率(勝局?jǐn)?shù)比參賽局?jǐn)?shù)),按勝率降序排序后,輸出棋

25、手姓名、所屬俱樂部、參賽局?jǐn)?shù)、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)、勝率。</p><p>  段位情況統(tǒng)計(jì):按段位統(tǒng)計(jì)參賽棋手中九段、八段至初段(對應(yīng)段位為:'9'、'8'、...、'1')等各段位棋手的人數(shù),輸出統(tǒng)計(jì)結(jié)果。</p><p>  各種棋局統(tǒng)計(jì):分別統(tǒng)計(jì)各俱樂部主將局勝局?jǐn)?shù)、快棋局勝局?jǐn)?shù)、棋手執(zhí)黑對局?jǐn)?shù)及黑勝局?jǐn)?shù)、棋手執(zhí)白對局?jǐn)?shù)及白勝局?jǐn)?shù),輸出統(tǒng)計(jì)

26、結(jié)果。</p><p>  教練成果統(tǒng)計(jì):輸出教練所在俱樂部,統(tǒng)計(jì)帶隊(duì)局?jǐn)?shù),以及帶隊(duì)的勝率并輸出。</p><p><b>  幫助</b></p><p>  幫助模塊為用戶使用系統(tǒng)提供幫助信息,同時(shí)還提供系統(tǒng)版本信息和系統(tǒng)版權(quán)信息,分幫助主題子模塊和關(guān)于子模塊。分別輸出程序員想讓使用者看到的使用指南,以及版權(quán)信息。</p>&

27、lt;p>  數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)及用法說明</p><p>  按照任務(wù)要求,系統(tǒng)需要處理的基礎(chǔ)信息有三種:俱樂部信息,棋手信息,以及對局信息。三種信息存在這樣的關(guān)聯(lián):俱樂部信息中的俱樂部名稱與棋手信息中的俱樂部名稱存在關(guān)聯(lián);棋手信息中的棋手姓名又與對局信息中的棋手姓名存在關(guān)聯(lián)。三種信息通過錄入成為系統(tǒng)的基礎(chǔ)數(shù)據(jù)。</p><p>  而在進(jìn)行統(tǒng)計(jì)時(shí)需要使用以上三種數(shù)據(jù),統(tǒng)計(jì)結(jié)果形成新的數(shù)

28、據(jù),稱為生成數(shù)據(jù),產(chǎn)生五種,俱樂部統(tǒng)計(jì)信息;棋手統(tǒng)計(jì)信息;段位人數(shù)統(tǒng)計(jì)信息;對局情況統(tǒng)計(jì)信息;教練統(tǒng)計(jì)信息。</p><p><b>  俱樂部信息</b></p><p><b>  棋手信息</b></p><p><b>  對局信息</b></p><p><b&

29、gt;  棋手統(tǒng)計(jì)信息</b></p><p><b>  段位統(tǒng)計(jì)信息</b></p><p><b>  對局情況統(tǒng)計(jì)信息</b></p><p>  該系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)是采用三個(gè)方向的十字鏈表。</p><p><b>  模型如下:</b></p>

30、<p>  圖1.5圍甲比賽信息管理系統(tǒng)三個(gè)方向的十字交叉鏈表</p><p>  用法說明:以后進(jìn)先出的方式建立俱樂部信息主鏈,再以后進(jìn)先出方式建立棋手基本信息支鏈,最后以后進(jìn)先出方式建立對局信息支鏈。每一個(gè)結(jié)點(diǎn)都可以單獨(dú)修改、刪除。</p><p>  維護(hù)功能是以后進(jìn)先出的方式創(chuàng)建鏈表,</p><p>  查詢功能遍歷鏈表找到相應(yīng)的節(jié)點(diǎn),<

31、;/p><p>  插入功能和刪除功能分別在指定地方增加或刪除節(jié)點(diǎn),</p><p>  修改功能修改相應(yīng)的節(jié)點(diǎn)的信息或者對應(yīng)的位置,</p><p>  統(tǒng)計(jì)功能為遍歷鏈表對數(shù)據(jù)進(jìn)行計(jì)算并進(jìn)行排序和輸出。</p><p><b>  程序結(jié)構(gòu)</b></p><p><b>  四、各模塊

32、的功能</b></p><p><b>  1、文件</b></p><p>  文件模塊包括一系列與系統(tǒng)啟動運(yùn)行和系統(tǒng)結(jié)束運(yùn)行相關(guān)的環(huán)境維護(hù)和數(shù)據(jù)保障操作。進(jìn)一步劃分為6個(gè)子模塊:界面初始化、數(shù)據(jù)加載、數(shù)據(jù)保存、數(shù)據(jù)備份、數(shù)據(jù)恢復(fù)和退出系統(tǒng)。 </p><p>  界面初始

33、化子模塊:用于設(shè)置控制臺窗口顯示模式,將屏幕設(shè)置成80列25行的文本字符界面,設(shè)置窗口標(biāo)題欄,清屏并顯示系統(tǒng)菜單欄和系統(tǒng)狀態(tài)欄。</p><p>  數(shù)據(jù)加載子模塊:用于將存放在多個(gè)數(shù)據(jù)文件中的代碼數(shù)據(jù)和基礎(chǔ)數(shù)據(jù)讀入內(nèi)存,構(gòu)造數(shù)據(jù)鏈表,同時(shí)輸出相關(guān)加載信息。。</p><p>  數(shù)據(jù)保存子模塊:用于將內(nèi)存中代碼表數(shù)據(jù)以及鏈表數(shù)據(jù)按設(shè)置路徑分別保存到各個(gè)數(shù)據(jù)文件中。</p>

34、<p>  數(shù)據(jù)備份子模塊:用于將存放在多個(gè)數(shù)據(jù)文件中的各種數(shù)據(jù)按指定路徑存到一個(gè)數(shù)據(jù)文件中,供用戶在系統(tǒng)數(shù)據(jù)被破壞后用來恢復(fù)。</p><p>  系統(tǒng)恢復(fù)子模塊:與數(shù)據(jù)備份子模塊相對應(yīng),能從備份文件中將數(shù)據(jù)恢復(fù)到內(nèi)存中。用于提高系統(tǒng)的安全性和可靠性。</p><p>  退出程序子模塊:釋放程序運(yùn)行過程中申請的動態(tài)存儲區(qū),關(guān)閉控制臺標(biāo)準(zhǔn)輸入與輸出設(shè)備句柄,將標(biāo)題欄設(shè)置為“運(yùn)行

35、結(jié)束”,清除屏幕窗口信息,結(jié)束系統(tǒng)運(yùn)行。</p><p><b>  2、數(shù)據(jù)維護(hù)</b></p><p>  此模塊包括對三種基礎(chǔ)信息的錄入、修改以及刪除功能,保證數(shù)據(jù)的有效性、完整性和準(zhǔn)確性。該模塊按信息種類劃分為俱樂部信息維護(hù),棋手信息維護(hù)和對局信息維護(hù)三個(gè)子模塊。 </p><p

36、>  俱樂部信息維護(hù):俱樂部信息的錄入、修改和刪除。</p><p>  棋手信息維護(hù):棋手信息的錄入、修改和刪除。</p><p>  對局信息維護(hù):對局信息的錄入修改和刪除。</p><p><b>  3、數(shù)據(jù)查詢</b></p><p>  數(shù)據(jù)查詢模塊提供對系統(tǒng)代碼信息以及三種基礎(chǔ)數(shù)據(jù)信息按多種條件進(jìn)行查

37、詢的功能。該模塊按信息種類分為勝負(fù)代碼查詢,局別代碼查詢,俱樂部信息查詢,棋手信息查詢,對局信息查詢。</p><p>  局別代碼以及勝負(fù)代碼查詢子模塊:分別用來在屏幕窗口中顯示這兩類代碼的完整內(nèi)容。</p><p>  俱樂部信息查詢子模塊:以俱樂部名稱中所包含的字符子串為條件查詢參賽俱樂部基本信息。例如,查找并顯示俱樂部名稱中包含“集團(tuán)”所有參賽俱樂部基本信息。</p>

38、<p>  棋手信息查詢:兩個(gè)功能:①以棋手姓名為條件查找并顯示滿足條件的參賽棋手基本信息。例如,查找并顯示棋手姓名為“古力”的參賽棋手基本信息。②以所屬俱樂部和勝局?jǐn)?shù)為條件查找并顯示滿足條件的參賽棋手基本信息。例如,查找并顯示所屬俱樂部為“中國移動上?!鼻覄倬?jǐn)?shù)為10的所有參賽棋手基本信息。</p><p>  對局信息查詢:兩個(gè)功能:①以場次和執(zhí)黑或執(zhí)白棋手為條件查找并顯示滿足條件的圍棋對局基本信

39、息。例如,查找并顯示場次為3且執(zhí)黑或執(zhí)白棋手為“常昊”的圍棋對局基本信息。②以參賽棋手勝負(fù)情況為條件查找并顯示滿足條件的所有圍棋對局基本信息。例如,查找并顯示執(zhí)黑棋手為“孔杰”且勝負(fù)為0(黑勝)或執(zhí)白棋手為“孔杰”且勝負(fù)為1(白勝)的所有圍棋對局基本信息。</p><p><b>  4、數(shù)據(jù)統(tǒng)計(jì)</b></p><p>  數(shù)據(jù)統(tǒng)計(jì)模塊提供對三種基礎(chǔ)數(shù)據(jù)進(jìn)行多方面的

40、統(tǒng)計(jì)的功能。按統(tǒng)計(jì)條件,該模塊劃分為俱樂部信息統(tǒng)計(jì),棋手信息統(tǒng)計(jì),段位情況統(tǒng)計(jì),各種棋局情況統(tǒng)計(jì),以及教練成果統(tǒng)計(jì)。</p><p>  俱樂部信息統(tǒng)計(jì)子模塊:分別統(tǒng)計(jì)各俱樂部的場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù),按場分和局分對統(tǒng)計(jì)結(jié)果按降序排序(先按場分降序排序,對場分相同的俱樂部再按局分降序排序),排序后輸出每個(gè)俱樂部名稱、教練、場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)。</p><p>  棋手信息統(tǒng)計(jì)子

41、模塊:分別統(tǒng)計(jì)各棋手的參賽局?jǐn)?shù)、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)、勝率(勝局?jǐn)?shù)比參賽局?jǐn)?shù)),按勝率降序排序后,輸出棋手姓名、所屬俱樂部、參賽局?jǐn)?shù)、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù)、勝率。</p><p>  段位情況統(tǒng)計(jì):按段位統(tǒng)計(jì)參賽棋手中九段、八段至初段(對應(yīng)段位為:'9'、'8'、...、'1')等各段位棋手的人數(shù),輸出統(tǒng)計(jì)結(jié)果。</p><p>  各種棋局統(tǒng)計(jì):分別統(tǒng)

42、計(jì)各俱樂部主將局勝局?jǐn)?shù)、快棋局勝局?jǐn)?shù)、棋手執(zhí)黑對局?jǐn)?shù)及黑勝局?jǐn)?shù)、棋手執(zhí)白對局?jǐn)?shù)及白勝局?jǐn)?shù),輸出統(tǒng)計(jì)結(jié)果。</p><p>  教練成果統(tǒng)計(jì):輸出教練所在俱樂部,統(tǒng)計(jì)帶隊(duì)局?jǐn)?shù),以及帶隊(duì)的勝率并輸出。</p><p><b>  幫助</b></p><p>  幫助模塊為用戶使用系統(tǒng)提供幫助信息,同時(shí)還提供系統(tǒng)版本信息和系統(tǒng)版權(quán)信息,分幫助主題子

43、模塊和關(guān)于子模塊。分別輸出程序員想讓使用者看到的使用指南,以及版權(quán)信息。</p><p>  五、試驗(yàn)結(jié)果(包括輸入數(shù)據(jù)和輸出結(jié)果)</p><p><b>  主界面:</b></p><p>  文件、數(shù)據(jù)維護(hù)、數(shù)據(jù)查詢、數(shù)據(jù)統(tǒng)計(jì)、幫助各功能模塊的子菜單項(xiàng):</p><p><b>  俱樂部維護(hù):<

44、/b></p><p><b>  添加俱樂部信息 </b></p><p><b>  修改俱樂部信息 </b></p><p><b>  刪除俱樂部信息</b></p><p><b>  棋手信息維護(hù)</b></p><p

45、><b>  添加棋手信息</b></p><p><b>  修改棋手信息</b></p><p><b>  刪除棋手信息</b></p><p><b>  對局信息維護(hù)</b></p><p><b>  對局信息錄入</b&

46、gt;</p><p><b>  對局信息修改</b></p><p><b>  對局信息刪除</b></p><p><b>  俱樂部信息查詢</b></p><p><b>  棋手信息查詢</b></p><p><

47、;b>  棋局信息查詢</b></p><p><b>  俱樂部信息統(tǒng)計(jì)</b></p><p><b>  棋手信息統(tǒng)計(jì)</b></p><p><b>  段位信息統(tǒng)計(jì)</b></p><p><b>  棋局情況統(tǒng)計(jì)</b><

48、;/p><p><b>  教練成果統(tǒng)計(jì)</b></p><p><b>  六、體會</b></p><p>  這次課程設(shè)計(jì)的結(jié)束,在于我應(yīng)該算是很大很大的成功,很大很大的幸福了。在演示完的那個(gè)下午,真的有種如釋重負(fù)的成就感。整個(gè)課設(shè)真的貫穿了我學(xué)到的所有的C語言的知識,尤其鏈表、指針那一塊,真的是用到手軟了。甚至沒有學(xué)過

49、的東西,比如圖形界面的制作,我現(xiàn)在也略有所得。</p><p>  記得剛聽說課設(shè)有三四千行的時(shí)候,一下子就震驚了,那時(shí)候還在被指針虐得死去活來的自己感覺世界都灰暗了。而在寒假里也正是這種畏懼感讓我基本沒有做過什么進(jìn)展性的工作,整天對著老師給的菜單框架發(fā)發(fā)呆,然后玩別的分了神。</p><p>  直到聽說要中期檢查了,我這才硬著頭皮頂上去,發(fā)現(xiàn)上手了以后還真的感覺上就好了很多。所以課設(shè)的

50、第一條,就教給我:不能畏懼困難。于是一路高歌做了一部分工作,在中期檢查里表現(xiàn)的還挺突出了,老師還鼓勵(lì)我爭取評優(yōu),這給了我很大的信心。</p><p>  于是慢慢地我的CB上代碼行數(shù)到了3000,又破了4000,我自己都很難相信這些是我親手改編的東西。而其中的艱難困苦也不足為外人道。課設(shè)里洋洋灑灑幾千行代碼,出的問題不再是那些語法錯(cuò)誤導(dǎo)致不能編譯的問題了,往往讓人頭疼的是已經(jīng)運(yùn)行成功卻遇到死機(jī)、或者其他與預(yù)期情況

51、相違背的bug。而在編出基本功能的同時(shí),為了系統(tǒng)做的更出彩,我還要考慮很多用戶使用時(shí)的方便,總之已經(jīng)不僅僅是知識層次的問題了。</p><p>  這份課設(shè)由于用了文本界面,所以看起來比較清爽,操作也相對人性化一些,但由于對界面的知識還是掌握的不好,所以還是顯得比較粗糙。還有代碼還是不夠完善,有很多意外退出或輸入錯(cuò)誤的情況都沒有考慮到,界面也做得不夠精細(xì),這都是在調(diào)試的過程中發(fā)現(xiàn)的。</p><

52、;p>  現(xiàn)在做完了再從頭審視整個(gè)課程設(shè)計(jì),我覺得最開始的設(shè)計(jì)最重要,要考慮周全一些,細(xì)節(jié)什么的都要想的到,不要害怕做不出來,有句話說的好:只有想不到,沒有做不到。還有就是耐心了,不要被一個(gè)錯(cuò)誤引進(jìn)了死胡同,要靈活的運(yùn)用各種調(diào)試的手段。</p><p>  最后,感謝那些課設(shè)中給我提意見和建議的人,以及給我鼓勵(lì)的人。</p><p><b>  七、參考文獻(xiàn)</b&g

53、t;</p><p>  《C語言程序設(shè)計(jì)》曹計(jì)昌,盧萍,李開編著. 科學(xué)出版社</p><p>  《C語言實(shí)驗(yàn)與課程設(shè)計(jì)》曹計(jì)昌,盧萍,李開編著. 科學(xué)出版社</p><p>  附錄:程序清單及源程序光盤</p><p><b>  “game.h”</b></p><p>  #inclu

54、de <stdio.h></p><p>  #include <stdlib.h></p><p>  #include <windows.h></p><p>  #include <wincon.h></p><p>  #include <conio.h></p>

55、<p>  #include <string.h></p><p>  #include <io.h></p><p>  #include <fcntl.h></p><p>  #include <sys\stat.h></p><p>  #include <ctype

56、.h></p><p>  #include <time.h></p><p>  #ifndef TYPE_H_INCLUDED</p><p>  #define TYPE_H_INCLUDED</p><p>  #define SCR_ROW 25 /*屏幕行數(shù)*/</p>&l

57、t;p>  #define SCR_COL 80 /*屏幕列數(shù)*/</p><p><b>  /**</b></p><p>  *俱樂部信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p><p>  typedef struct club_info {

58、</p><p>  char name[15]; /**< 俱樂部名稱*/</p><p>  char coach[10]; /**< 教練姓名*/</p><p>  int changf; /**< 場分*/</p><p>  int

59、 juf; /**< 局分*/</p><p>  struct player_info *head ; /**< 指向棋手信息子結(jié)點(diǎn)*/</p><p>  struct club_info *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p>  int score;

60、 /**< 臨時(shí)分?jǐn)?shù)統(tǒng)計(jì)*/</p><p>  } Club_Info;</p><p><b>  /**</b></p><p>  *棋手基本信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p><p>  typedef struct

61、 player_info {</p><p>  char clubname[12]; /**< 俱樂部名稱*/</p><p>  char name[10]; /**< 姓名*/</p><p>  char level; /**< 段位*/</p&g

62、t;<p>  int join; /**< 參賽局?jǐn)?shù)*/</p><p>  int won; /**< 勝局?jǐn)?shù)*/</p><p>  struct game_info *head; /**< 指向?qū)中畔⒅ф湹闹羔?/</p><p>

63、  struct player_info *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p>  } Player_Info;</p><p><b>  /**</b></p><p>  *對局信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p>

64、;<p>  typedef struct game_info {</p><p>  int number; /**< 場次*/</p><p>  char style; /**< 局別*/</p><p>  char black[10]; /**< 執(zhí)黑姓名

65、*/</p><p>  char white[10]; /**< 執(zhí)白姓名*/</p><p>  char whoget; /**< 勝負(fù)情況*/</p><p>  struct game_info *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p>  } Ga

66、me_Info;</p><p><b>  /**</b></p><p>  *棋手統(tǒng)計(jì)信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p><p>  typedef struct master {</p><p>  char club[15];</

67、p><p>  char name[10]; /**< 俱樂部名稱*/</p><p>  int join; /**< 棋手名稱*/</p><p>  int won; /**< 勝局?jǐn)?shù)*/</p><p>  int lose;

68、 /**< 敗局?jǐn)?shù)*/</p><p>  float wonrate; /**< 勝率*/</p><p>  struct master *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p><b>  } MASTER;</b></p>

69、<p><b>  /**</b></p><p>  *段位統(tǒng)計(jì)信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p><p>  typedef struct level {</p><p>  int level; /**< 段位*/&l

70、t;/p><p>  int quantity; /**< 數(shù)量*/</p><p>  struct level *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p><b>  } LEVEL;</b></p><p><b>  /**</b>

71、</p><p>  *結(jié)果統(tǒng)計(jì)信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p><p>  typedef struct result_node {</p><p>  char club_name[15]; /**< 俱樂部名稱*/</p><p&g

72、t;  int main_win_num; /**< 主將局勝局?jǐn)?shù)*/</p><p>  int quick_win_num; /**< 快棋局勝局?jǐn)?shù)*/</p><p>  int black_match_num; /**< 棋手執(zhí)黑對局?jǐn)?shù)*/</p><

73、p>  int black_win_num; /**< 黑勝局?jǐn)?shù)*/</p><p>  int white_match_num; /**< 棋手執(zhí)白對局?jǐn)?shù)*/</p><p>  int white_win_num; /**< 白勝局?jǐn)?shù)*/</p><p&

74、gt;  struct result_node *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p>  } RESULT_NODE;</p><p><b>  /**</b></p><p>  *教練統(tǒng)計(jì)信息鏈結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b>&l

75、t;/p><p>  typedef struct coach {</p><p>  char name[10]; /**< 教練名稱*/</p><p>  char club[15]; /**< 俱樂部名稱*/</p><p>  int allgame; /**<

76、 帶隊(duì)局?jǐn)?shù)*/</p><p>  int wingame; /**< 勝局?jǐn)?shù)*/</p><p>  float alrate; /**< 帶隊(duì)勝率*/</p><p>  struct coach *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p><

77、b>  } COACH;</b></p><p><b>  /**</b></p><p>  *屏幕窗口信息鏈結(jié)點(diǎn)結(jié)點(diǎn)結(jié)構(gòu)</p><p><b>  */</b></p><p>  typedef struct layer_node {</p><p&g

78、t;  char LayerNo; /**< 彈出窗口層數(shù)*/</p><p>  SMALL_RECT rcArea; /**< 彈出窗口區(qū)域坐標(biāo)*/</p><p>  CHAR_INFO *pContent; /**< 彈出窗口區(qū)域字符單元原信息存儲緩沖區(qū)*/</p><p>  char *pScr

79、Att; /**< 彈出窗口區(qū)域字符單元原屬性值存儲緩沖區(qū)*/</p><p>  struct layer_node *next; /**< 指向下一結(jié)點(diǎn)的指針*/</p><p>  } LAYER_NODE;</p><p><b>  /**</b></p><p><b&g

80、t;  *標(biāo)簽束結(jié)構(gòu)</b></p><p><b>  */</b></p><p>  typedef struct labe1_bundle {</p><p>  char **ppLabel; /**< 標(biāo)簽字符串?dāng)?shù)組首地址*/</p><p>  COORD *pLoc;

81、 /**< 標(biāo)簽定位數(shù)組首地址*/</p><p>  int num; /**< 標(biāo)簽個(gè)數(shù)*/</p><p>  } LABEL_BUNDLE;</p><p><b>  /**</b></p><p><b>  *熱區(qū)結(jié)構(gòu)</b><

82、;/p><p><b>  */</b></p><p>  typedef struct hot_area {</p><p>  SMALL_RECT *pArea; /**< 熱區(qū)定位數(shù)組首地址*/</p><p>  char *pSort; /**< 熱區(qū)類別(按鍵、文本框、

83、選項(xiàng)框)數(shù)組首地址*/</p><p>  char *pTag; /**< 熱區(qū)序號數(shù)組首地址*/</p><p>  int num; /**< 熱區(qū)個(gè)數(shù)*/</p><p>  } HOT_AREA;</p><p>  unsigned long num_written;

84、 /* Win 7 中使用, 該變量用于某幾個(gè)控制臺輸出函數(shù) */</p><p>  LAYER_NODE *gp_top_layer = NULL; /*彈出窗口信息鏈鏈頭*/</p><p>  Club_Info *gp_head = NULL; /*主鏈頭指針*/</p

85、><p>  char *gp_sys_name = "圍甲比賽信息管理系統(tǒng)"; /*系統(tǒng)名稱*/</p><p>  char *gp_club_info_filename = "club.dat"; /*俱樂部基本信息數(shù)據(jù)文件*/</p><p>  char *gp_player_info_filenam

86、e = "player.dat"; /*棋手信息數(shù)據(jù)文件*/</p><p>  char *gp_game_info_filename = "game.dat"; /*對局信息數(shù)據(jù)文件*/</p><p>  char *gp_result_code_filename = "result.dat"; /

87、*勝負(fù)代碼數(shù)據(jù)文件*/</p><p>  char *gp_type_code_filename = "type.dat"; /*局別代碼數(shù)據(jù)文件*/</p><p>  char *gp_backup_filename= "backup.dat";</p><p>  char *ga_main_menu[] =

88、 {"文件(F)", /*系統(tǒng)主菜單名*/</p><p>  "數(shù)據(jù)維護(hù)(M)",</p><p>  "數(shù)據(jù)查詢(Q)",</p><p>  "數(shù)據(jù)統(tǒng)計(jì)(S)",</p><p><b>  "幫助(H)"

89、;</b></p><p><b>  };</b></p><p>  char *ga_sub_menu[] = {"[S] 數(shù)據(jù)保存", /*系統(tǒng)子菜單名*/</p><p>  "[B] 數(shù)據(jù)備份",</p><p>  "[R] 數(shù)

90、據(jù)恢復(fù)",</p><p>  "[X] 退出 Alt+X",</p><p>  "[D] 俱樂部信息",</p><p>  "[P] 棋手相關(guān)信息",</p><p>  "[C] 對局信息",</p><p>  &

91、quot;[S] 勝負(fù)場代碼",</p><p>  "[T] 棋局類別代碼",</p><p><b>  "",</b></p><p>  "[D] 俱樂部信息",</p><p>  "[P] 棋手相關(guān)信息",</p&

92、gt;<p>  "[C] 對局信息",</p><p>  "[F] 俱樂部排位狀況",</p><p>  "[T] 棋手排位情況",</p><p>  "[C] 各段人數(shù)統(tǒng)計(jì)",</p><p>  "[U] 主將戰(zhàn)況",

93、</p><p>  "[I] 教練の成果",</p><p>  "[T] 幫助主題",</p><p><b>  "",</b></p><p>  "[A] 關(guān)于..."</p><p><b>  

94、};</b></p><p>  int ga_sub_menu_count[] = {4, 3, 6, 5, 3}; /*各主菜單項(xiàng)下子菜單的個(gè)數(shù)*/</p><p>  int gi_sel_menu = 1; /*被選中的主菜單項(xiàng)號,初始為1*/</p><p>  int gi_sel_sub_me

95、nu = 0; /*被選中的子菜單項(xiàng)號,初始為0,表示未選中*/</p><p>  CHAR_INFO *gp_buff_menubar_info = NULL; /*存放菜單條屏幕區(qū)字符信息的緩沖區(qū)*/</p><p>  CHAR_INFO *gp_buff_stateBar_info = NULL; /*存放狀態(tài)條屏幕區(qū)字符信息的

96、緩沖區(qū)*/</p><p>  char *gp_scr_att = NULL; /*存放屏幕上字符單元屬性值的緩沖區(qū)*/</p><p>  char *gp_result_code = NULL; /*存放勝負(fù)代碼表的數(shù)據(jù)緩沖區(qū)*/</p><p>  char *gp_type_code = NULL; /*存放棋局類別代碼表的數(shù)據(jù)緩沖區(qū)*/<

97、;/p><p>  char gc_sys_state = '\0'; /*用來保存系統(tǒng)狀態(tài)的字符*/</p><p>  unsigned long gul_result_code_len = 0; /*勝負(fù)代碼表長度*/</p><p>  unsigned long gul_type_code_len = 0; /*棋局類別代碼表長度

98、*/</p><p>  HANDLE gh_std_out; /*標(biāo)準(zhǔn)輸出設(shè)備句柄*/</p><p>  HANDLE gh_std_in; /*標(biāo)準(zhǔn)輸入設(shè)備句柄*/</p><p>  int LoadCode(char *filename, char **ppbuffer); /*代碼表加載*/</p>

99、<p>  int CreatList(Club_Info **pphead); /*數(shù)據(jù)鏈表初始化*/</p><p>  void InitInterface(void);</p><p>  void Scene(void); /*系統(tǒng)界面初始化*/</p><p>  void C

100、learScreen(void); /*清屏*/</p><p>  void ShowMenu(void); /*顯示菜單欄*/</p><p>  void PopMenu(int num); /*顯示下拉菜單*/</p>

101、<p>  void PopPrompt(int num); /*顯示彈出窗口*/</p><p>  void PopUp(SMALL_RECT *, WORD, LABEL_BUNDLE *, HOT_AREA *); /*彈出窗口屏幕信息維護(hù)*/</p><p>  void PopOff(void);

102、 /*關(guān)閉頂層彈出窗口*/</p><p>  void DrawBox(SMALL_RECT *parea); /*繪制邊框*/</p><p>  void LocSubMenu(int num, SMALL_RECT *parea); /*主菜單下拉菜單定位*/</p><p>  voi

103、d ShowState(void); /*顯示狀態(tài)欄*/</p><p>  void TagMainMenu(int num); /*標(biāo)記被選中的主菜單項(xiàng)*/</p><p>  void TagSubMenu(int num); /*標(biāo)記被選中的子菜

104、單項(xiàng)*/</p><p>  int DealConInput(HOT_AREA *phot_area, int *pihot_num); /*控制臺輸入處理*/</p><p>  void SetHotPoint(HOT_AREA *phot_area, int hot_num); /*設(shè)置熱區(qū)*/</p><p>  void RunSys(Club

105、_Info **pphd); /*系統(tǒng)功能模塊的選擇和運(yùn)行*/</p><p>  BOOL ExeFunction(int main_menu_num, int sub_menu_num); /*功能模塊的調(diào)用*/</p><p>  void CloseSys(Club_Info *phd); /*退出系統(tǒng)*/<

106、;/p><p>  BOOL LoadData(void); /*數(shù)據(jù)加載*/</p><p>  BOOL SaveData(void); /*保存數(shù)據(jù)*/</p><p>  BOOL BackupData(void); /*備份數(shù)據(jù)*/</p><p>  BOOL RestoreDa

107、ta(void); /*恢復(fù)數(shù)據(jù)*/</p><p>  BOOL ExitSys(void); /*退出系統(tǒng)*/</p><p>  BOOL HelpTopic(void); /*幫助主體*/</p><p>  BOOL AboutSystem(void); /*關(guān)于系統(tǒng)*/</p&

108、gt;<p>  BOOL MaintainResultCode(void); /*維護(hù)勝負(fù)代碼*/</p><p>  BOOL MaintainTypeCode(void); /*維護(hù)棋局類別代碼*/</p><p>  BOOL MaintainClubInfo(void); /*維護(hù)俱樂部信息*/</p><p>  BOOL M

109、aintainPlayerInfo(void); /*維護(hù)棋手基本信息*/</p><p>  BOOL MaintainGameInfo(void); /*維護(hù)對局繳費(fèi)信息*/</p><p>  BOOL QueryResultCode(void); /*查詢勝負(fù)代碼*/</p><p>  BOOL QueryTypeCode(void);

110、 /*查詢棋局類別代碼*/</p><p>  BOOL QueryClubInfo(void); /*查詢俱樂部信息*/</p><p>  BOOL QueryPlayerInfo(void); /*查詢棋手基本信息*/</p><p>  BOOL QueryGameInfo(void); /*查詢對局信息*/</p&

111、gt;<p>  BOOL StatScore(void); /*俱樂部信息統(tǒng)計(jì)*/</p><p>  BOOL StatMaster(void); /*棋手信息統(tǒng)計(jì)*/</p><p>  BOOL StatLevel(void); /*段位信息統(tǒng)計(jì)*/</p><p>  BOOL StatMainma

112、n(void); /*結(jié)果信息統(tǒng)計(jì)*/</p><p>  void StatCOACHInfo(Club_Info *hd); /*教練信息統(tǒng)計(jì)函數(shù)*/</p><p>  void StatClubMatchInfo(Club_Info **hd); /*統(tǒng)計(jì)各俱樂部的場分、局分、勝局?jǐn)?shù)、負(fù)局?jǐn)?shù),并排序*/</p><p>  v

113、oid SortClubMatchInfo(Club_Info **match_hd); /*按場分和局分對統(tǒng)計(jì)結(jié)果對俱樂部比賽信息按降序排序*/</p><p>  void StatPlayerMatchInfo(Club_Info *hd); /*統(tǒng)計(jì)各棋手的參賽局?jǐn)?shù)、勝、負(fù)局?jǐn)?shù)、勝率,按勝率降序排序后輸出各數(shù)據(jù)*/</p><p>  void SortPlayerMatchInf

114、o(MASTER *pplayer_hd); /*按棋手的勝率進(jìn)行降序排序*/</p><p>  void StatLevelInfo(Club_Info *hd); /*按段位統(tǒng)計(jì)參賽棋手中各段位的人數(shù),并輸出結(jié)果*/</p><p>  void StatResultInfo(Club_Info *hd); /*分別統(tǒng)計(jì)各俱樂部各局勝數(shù)和參賽數(shù)以及黑白選手比賽情況并輸出*/</

115、p><p>  Club_Info *StatListInfo(Club_Info *hd); /*遍歷信息,統(tǒng)計(jì)數(shù)據(jù)*/</p><p>  Club_Info *insclub(Club_Info *hd); /*添加俱樂部*/</p><p>  BOOL mofclub(Club_Info *hd); /*修改俱樂部*/</p>

116、<p>  BOOL delclub(Club_Info *hd); /*刪除俱樂部*/</p><p>  BOOL insplayer(Club_Info *hd); /*添加棋手*/</p><p>  BOOL mofplayer(Club_Info *hd); /*修改棋手*/</p><p>  BOOL de

117、lplayer(Club_Info *hd); /*刪除棋手*/</p><p>  BOOL insgame(Club_Info *hd); /*添加對局*/</p><p>  BOOL mofgame(Club_Info *hd); /*修改棋手*/</p><p>  BOOL delgame(Club_Info *hd

118、); /*刪除棋手*/</p><p>  Club_Info *SeekClubInfo(Club_Info *hd,char *name); /*按姓名找到俱樂部結(jié)點(diǎn)指針*/</p><p>  BOOL SeekClubNode(Club_Info *hd, char *string); /*查找俱樂部并且輸出*/</p><p>  

119、Club_Info *SeekClubNode1(Club_Info *hd, char *name);/*按棋手姓名尋找該棋手所屬的俱樂部信息結(jié)點(diǎn)*/</p><p>  Club_Info *SeekClubNode2(Club_Info *hd, int number); /*按場次尋找該場比賽主將局失敗的棋手所屬的俱樂部信息鏈表*/</p><p>  void SeekGameN

120、ode1(Club_Info *hd, char *name, char winner); /*按棋手姓名以及勝負(fù)情況查找對局信息并且輸出*/</p><p>  Player_Info *SeekPlayerInfo1(Club_Info *hd, char *player); /*按姓名查找棋手*/</p><p>  int SeekPlayerInfo2(Club_Info

121、*hd, char *player,int number); /*按俱樂部名以及勝局?jǐn)?shù)查找棋手*/</p><p>  Game_Info *SeekGameInfo(Club_Info *phd, char *player, int number); /*按棋手姓名以及場次查找對局信息*/</p><p>  RESULT_NODE *SeekResultNode(RESULT_NODE

122、 *hd4, char *club_name); /*按俱樂部名查找結(jié)果信息結(jié)點(diǎn)*/</p><p>  BOOL Fill_Info(Game_Info *pgame); /*插入棋局(同時(shí)插入兩位棋手的結(jié)點(diǎn)之中)*/</p><p>  BOOL SaveSysData(Club_Info *phd); /*保存系統(tǒng)數(shù)據(jù)

123、*/</p><p>  BOOL BackupSysData(Club_Info *phd, char *filename); /*備份系統(tǒng)數(shù)據(jù)*/</p><p>  BOOL RestoreSysData(Club_Info **phd, char *filename); /*恢復(fù)系統(tǒng)數(shù)據(jù)*/</p><p>  BOOL ShowModule(ch

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論