運動會計分系統(tǒng)課程設(shè)計報告_第1頁
運動會計分系統(tǒng)課程設(shè)計報告_第2頁
運動會計分系統(tǒng)課程設(shè)計報告_第3頁
運動會計分系統(tǒng)課程設(shè)計報告_第4頁
運動會計分系統(tǒng)課程設(shè)計報告_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、廿算機科學(xué)與工程學(xué)院數(shù)字媒休與技術(shù)專業(yè)數(shù)據(jù)結(jié)枸與算法課程設(shè)廿報告學(xué)生班級:學(xué)生學(xué)號:學(xué)生:指導(dǎo)教卵:2011年9月1日第一章課程披廿的目的利要求11.1課程設(shè)it的目的11.2«程設(shè)itro描述11.3 程設(shè)it基本要求21.4 S程設(shè)計測試數(shù)據(jù)2第二章課程披廿任務(wù)容3第三章詳糾披廿說明43.1數(shù)據(jù)類里定義43.2程序功能圖及功能說明53.2.1程序功能圖63.2.2程序功能說明63.3程序流程圖73.4算法設(shè)廿8第四章程序雷試94.1名組數(shù)搖輸人與輸出94.2 «作過程13第五章課程與體會14第兀章致16附錄一參考文獻17附錄二程序清單18可修編.運動會廿分學(xué)校纜第一章課

2、程設(shè)it的目的和要求1.1課程設(shè)廿目的數(shù)據(jù)結(jié)溝作為一門學(xué)科主要研究數(shù)據(jù)的各種逆輯結(jié)溝和存儲結(jié)溝,以員對數(shù)據(jù)的 各種操作。因此,主要有三個方面的容:數(shù)據(jù)的逆輯結(jié)構(gòu);數(shù)據(jù)的物理存儲結(jié)枸; 對數(shù)據(jù)的操作(或算法)。通常,算法的設(shè)廿取決于數(shù)據(jù)的週輯給構(gòu),算法的實 觀取決THUS的物J!存儲結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)是信息的一種組級方式,其目的是為了 提高算法的效率,它通常與一組算法的集合相對應(yīng),通il迪組算法集合可以對數(shù) 據(jù)結(jié)構(gòu)中的»1611?某種操作。在肖今信息時代,信息技術(shù)己成為當(dāng)代知識經(jīng)濟的核心技術(shù)。我們時刻都在 和數(shù)據(jù)打交道。比如人們在外出工作時找最短路徑,在銀行査詢存款、iiil互聯(lián) 網(wǎng)查新聞

3、、ttfiis程教育報名等,所有這些郡在與數(shù)據(jù)發(fā)生關(guān)學(xué)校。實際上,現(xiàn) 實世界中的實體經(jīng)11抽象以后,就可以成為it算機上所處理的數(shù)據(jù)。數(shù)據(jù)結(jié)構(gòu)課程主要是研究非數(shù)值it算的程序設(shè)廿冋題中所岀現(xiàn)的it算機操 作湘象以員它們之間的關(guān)學(xué)校和操作的學(xué)科。數(shù)弼箱構(gòu)是介干數(shù)學(xué)、it算機軟件 和廿算機硬件之同的一門廿算機專業(yè)的核心課程,它是廿算機程序設(shè)廿、數(shù)據(jù)庫、 操作學(xué)校貌、編譯原理及人工智能等的重要基礎(chǔ),廣泛的應(yīng)用于信息學(xué)、學(xué)校貌 工程等各種領(lǐng)域。學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)是為了箱實際間題中所澇及的對象在廿算機中表示岀來并對它們2H亍處理。通過課程設(shè)計可以提高學(xué)生的思維能力,促進學(xué)生的塚合應(yīng)用能力和專業(yè)素質(zhì)的提高。課程

4、設(shè)廿的目的:1)要求學(xué)生這到熟練掌握ci§言的基本知識和技能。2)了解并掌握數(shù)據(jù)結(jié)構(gòu)與算法的設(shè)it方法,具備初步的獨立分折和設(shè)廿能力。3)提高程序設(shè)廿和調(diào)試能力。學(xué)生通過上機實習(xí),騎址自己設(shè)廿的算法的正確性。學(xué)會有效利用基本調(diào)試方法,迅速找岀程序代碼中的路炭并目修改。4) 培養(yǎng)算法分tfi能力。分橋所設(shè)廿算法的時間夏雜度和空間復(fù)雜度,進一步提 高程序設(shè)廿水平。5) 初步掌握軟件開發(fā)il程的冋題分析、學(xué)校貌設(shè)廿、程序編網(wǎng)、測試等基本方 法和技能。1.2課程設(shè)itIO描述參加運動會的學(xué)校有n個,其中學(xué)校編號從1至n。比賽分成w個女子頂目 和m個男子項目。運動會比賽頂目編號是:男子1m,女

5、子m+1m+wo在比賽的結(jié)果中,不同的頂目取前五名或者取前三名的枳分;取前五名的枳分分 別為:7、5、3、2、1,前三名的枳分分別為:5、3、2;哪些取前五名或前三名 由學(xué)生自己設(shè)定。(m<u20,n“20 )1.3課程設(shè)廿基本要求(1) 能昵方便快捷的輸人各彳、頂目的前三名或前五名的成績(2) 能服按學(xué)校編號、學(xué)??偡?、男女01體總分亍排序并輸岀(3) 能昵帚確的統(tǒng)廿各學(xué)校的總分(4) 能夠按學(xué)校編號查則學(xué)校某個頂目的基本悄況,能舉按項目編號査詢?nèi)〉们叭蚯拔迕膶W(xué)校1.4課程設(shè)廿測試數(shù)據(jù)a)按1建進人添加學(xué)校的界面,根據(jù)提示,再輸人:汽車學(xué)校。再輸人:8, 成功添加了一彳、學(xué)校。再輸

6、人:2進人運動頂目添加界面,根據(jù)提示, 再輸人:跳高;1; 0; 1; 2; 3O之后輸入0。再次進人學(xué)校統(tǒng)界面b)按3建查看學(xué)校統(tǒng)中輸出的結(jié)果0按4建查看學(xué)校統(tǒng)中輸出的結(jié)果d)按5建查看學(xué)校統(tǒng)中輸出的結(jié)果e)按6建查看學(xué)校貌中輸岀的結(jié)果f)按7建根弼提示輸入頂目編號并查看學(xué)校統(tǒng)中輸岀的箱果9)按8建根據(jù)提示輸人學(xué)校編號并查看學(xué)校貌中輸出的結(jié)果第二章課程設(shè)廿任務(wù)容A. 可以輸人各個頂目的前三各或前五各的成績B. 可以按學(xué)校編號、學(xué)校總分、男女01體總分排序輸出C. 可以貌it岀各學(xué)校的總分D. 可以按學(xué)校編號査詢學(xué)校某個頂目的怕況E. 可以按項目編號查則取得前三或前五名的學(xué)校F. 數(shù)船存人文件

7、中,并且可以隧時查溝G. 學(xué)校統(tǒng)操作規(guī)定:輸人數(shù)據(jù)形式和圍:可以輸人學(xué)院(學(xué)校)的名稱和運動會頂目的名稱 輸岀形式:有中文提示,各學(xué)院(學(xué)校)分?jǐn)?shù)為整形H. 界面要求:有合理的操作提示,每個功能部可以設(shè)立菜單,并且根據(jù)提示, 可以完成相關(guān)的功能要求i. 存Bi結(jié)構(gòu):學(xué)生自己可以根據(jù)學(xué)校統(tǒng)功能要求自己設(shè)it, (0是要求運動會的相關(guān)數(shù)據(jù)要存惆在數(shù)弼文件中,實時保存第三章詳細(xì)玻廿說明3.1數(shù)據(jù)類型定義運動頂目定義:typedef struct Sport /運動頂目結(jié)構(gòu)char name20;運動頂目名稱int isboy;0為女10,1為男項目int is3;0為取前五名,1為取前五名int n

8、umber;頂目編號int second;第二名學(xué)校的編號int third;第三名學(xué)校的編號int fourth;第E1名學(xué)校的編號int fifth;第五名學(xué)校的編號int first;/第一名學(xué)校的編號Sport *next;)Sport;K運動項目給枸體定義如下:char型的數(shù)組,int塑的number, first, second,third, fourth, fifth 以及 sport 類塑的指打 nexto(2) 學(xué)校的定義:char name20;int number;int boy;int girl;學(xué)校的名稱學(xué)校的編號男子01體總分女子01體總分typedef struc

9、t Department學(xué)校的結(jié)構(gòu)Department *next;JDepartment;將學(xué)校自定義為一個結(jié)枸體命名為Department ;學(xué)校的結(jié)構(gòu)休定義如下:char 塑的數(shù)SI, int 塑的變量 unmber , int 型的變量 boy.girl 及 Department 類型的捋針nexto3.2程序功能圖及助能說明3.2.1程序功能圖圖2程序功能圖3.2.2程序功能說明如上圖標(biāo)示:1貞接輸入學(xué)校別名號2直接輸入運動頂目的名稱,編號,及男女頂目代碼,以便之后執(zhí)行的簡單快提3貞接跳轉(zhuǎn)到“按學(xué)校別輸岀總分”的界面,查看按學(xué)校別編號輸出的總分4直接跳轉(zhuǎn)到“按總分井序”的界面,查看按

10、總分排列的噸序5直接跳轉(zhuǎn)到“按男囲體聯(lián)出總分”的界面,查看按男0!體總分排列的噸序6直接跳轉(zhuǎn)舅“按女團體輸出總分”的界面,查看按女0!體總分排列的H序7輸入所要查出的項目的編號,即可查看所排列的觸序8輸入所要查岀的學(xué)校別的標(biāo)號,即可查看所排列的噸序 0退岀建,保存文本,關(guān)岡程序3.3程序流程圖開始如上圖所示:本學(xué)校貌在第一次運行時,將直接輸岀菜單,如果不是第一次 運行,則在學(xué)校鋭運行的初期會進行數(shù)據(jù)的讀取。然后,可以根鋸輸出的菜單對 需要進行的功能進行選擇,選擇完畢后將該功能進行運ffoM®:輸入運動頂目, 輸人學(xué)校別,按學(xué)校別編號岀總分,按男女01體總分?jǐn)?shù)輸岀,按頂目標(biāo)號查陶, 按

11、學(xué)校別標(biāo)號查詢,退出。運行完畢后,將數(shù)弼輸出到屏幕,如果要結(jié)東學(xué)校貌 則自動將數(shù)據(jù)保存到相應(yīng)的文本,否則進續(xù)輸岀菜單。3.4算法設(shè)廿主要算法的設(shè)廿思想:本程序主要是使用缺表來實現(xiàn)操作。一個運動會色括運動頂目和參加運動會的 成員。因此枸造兩個!8表Department.Sporto根據(jù)輸入的不同選擇不同的功能,有輸 入運動項目,輸人學(xué)校別,按學(xué)校別編號輸岀總分,按總分排序,按男團體總分排 序,按女團體總分排序,按頂目標(biāo)號査詢,按學(xué)校別標(biāo)號查詢,退岀。為了操作的 方便,并且能夠保存輸入數(shù)據(jù),所以通過文件操作來實現(xiàn)數(shù)據(jù)的寫和讀。毎次M 新的數(shù)據(jù)后部要輸入0退出,數(shù)據(jù)才能保存。對于總分的排序使用了冒泡

12、排序。為 了使整個程序看起來更加友好,Q添加了程序啟動畫面。3.5相關(guān)知識鏈表是一種物理存儲單元上非連續(xù)、非噸序的存儲給構(gòu),數(shù)據(jù)元素的®ft1 序是通過旌表中的指針次序?qū)崿F(xiàn)的。銖表由一學(xué)校列給點(璉表中毎一個元素稱 為結(jié)點)組成,結(jié)慮可以在運行時動態(tài)生成。毎個結(jié)點色括兩個部分:一個是存 齢數(shù)據(jù)元素的數(shù)據(jù)域,另一個是存倔下一個結(jié)點地址的JHtMo相比于線性表順序給構(gòu),璉表比較方便插人和刪除操作。冒泡排序,是指廿算機的一種排序方法,它的時同復(fù)雜度為0 (rT2),雖然不及堆排序、快速排序的0 (Mow,底數(shù)為2) , (1是有兩個優(yōu)點:1"編程 夏雜度"很低,很容易寫

13、出代碼;2.具有穩(wěn)定性,這里的穩(wěn)定性是指原序列中相 同元素的相對觸序仍然保持到排序后的序列,而堆排序、快速排序均不具有樽定 性。不il, 一路、二路歸并排序、不平何二叉M排序的速度均比冒泡排序快,目 具有隱定性,但速度不及堆排序、快速排序。冒泡排序是經(jīng)iln-1 a子排序完 成的,第i趟子排序從第1個數(shù)至第n-i個數(shù),若第i個數(shù)比后一個數(shù)大(則升 序,小則降序)則交換兩數(shù)。第皿章程序鴻試4.1多組數(shù)據(jù)輸人與輸出p<DAtyWcbugty.exe*OOOOOOOOO 程序讀取中詣啊心等待 50z Loading.程序設(shè)計員:數(shù)字媒體09702班田野圖3程序頁面圖圖3為本程序的頁面因,為了使

14、槨序更加人性化,加人了 “桿床頂取,i青耐心等待”的字樣。圖4 f?序菜單圖圖4為本程序的菜單,顯示了本槨序的壬要勸能,nJUil使用者輕松,快捷的,選擇所iifilT的操作。 -O<* 4-SfyDebugyundonghuixe* _- .瘧3 回-=rii -'壬門左材:,三/II,壬成功痰加了一釈oO我迎使用運動會分?jǐn)?shù)統(tǒng)什系統(tǒng)0。»X 編入系別;2 輸入運就1項目K»7按系別編翎岀總分f4 按總分排序;4CM1«<5 按男團依總分排序;6 技女團休總分排序;XW*1? 按項呂編號査詢;8 技系別編號査詢;WtcT«0 退岀M&

15、#171; 提示:頁先輔入系別后才能輸入運動項目請選i壬:半:圖5 f?序輸人學(xué)校別圖如圖5兩示,在菜單屮選擇鋼按回車扯,牌出輸人一個學(xué)校,輸人Tt算機",編號Mr單擊回車邃,返回菜單?;?Jg Jnanc?Nuri B/G3/Sfirstsecond third fourth F iftli總 B前S.頂取:1 男 rhFlr.號 米女編:1:1<»售T糸 粽號跖亠留的 若編矣名名名 li -二f AAAAA.Asss.圖6f?序輸人運朋攻目圖J. i /'壬T.m ,1 : 刖2名取刖£名:。0歡迎使用運動主分做統(tǒng)計系統(tǒng)0。.9 退岀提示;制謙人

16、系別后才能輔人運動項目"D:c* 今程序Debugy5 donghuLexe"貢取12 3 女芻絹需 筠暑翟- 目目一二三了:輸入系別;:3 枝系別集號輔岀總分;:5 按男團悴總分排后:7 按項目編號查詢?2 輸人運動項目4 找總分排庁;6 拎女團體總分排序;R 按系別編號宜詢;*f5,?Debugyundonghui.exe*圖7f?iria人運動項目圖如圖6,圖7兩示,在菜單中選擇2',按回車扯,禪出T倉人一個運動頂IT,輸K鋼00米”,編號叩 類型©等操作之后。按回車進,返回菜單。 0:< - *rDebugyundoAghui.exe*幽蹲鵜

17、團啓辭鯛瑟.2 輸入運幼項目4 按總分排序?& 按女團依總分排序;8 技系別塢號譽詢;* 輸人系別;* ? 按系別細(xì)號輸出總和* 5 按男團體總分排序;? 撈項目縮號査詢;0退岀握示:需先備人系別后才能輸入運動頂目請選擇:圖8程序輸人學(xué)校別編號査詢圖如圖8所示,在菜單中選擇8 ,按回車扯,禪出“輸人學(xué)校的編號”,輸人V ,按回車邃,牌回菜單。(1 )輸入:4輸出:學(xué)校名編號男0!總分女0!總分總分法律學(xué)校4101數(shù)學(xué)學(xué)校56511旅游學(xué)校15914歷史學(xué)校297中文學(xué)校6151126廿算機學(xué)校72111326法律學(xué)校400電子學(xué)校3314數(shù)學(xué)學(xué)校5639族游學(xué)校17714歷史學(xué)校299

18、18中文學(xué)校6151126廿算機學(xué)校7211132電子學(xué)校3279(2)輸人:輸出:16(3) «A: 8輸出:i青輸人學(xué)校的編號:再輸人2回車學(xué)校名:中文學(xué)校男子0II*總分:女子團體部10(4)輸人:0退岀4.2操作過程(1) 用戶進人程序啟動界面,等load完成后進人主菜單.主菜單有以下9個選頂。1輸入學(xué)校別2. 輸入運動項目3按學(xué)校別編號輸出總分4按總分排序5按男0|體總分排序6按女0!體總分排序7按頂目編號查則8.按學(xué)校別編號查詢0退岀(2) 輸入0至8中的一個數(shù)。(3) 輸人1,進行M學(xué)校操作,分別輸入學(xué)校的名稱和編號。(4) 輸人2,進行M運動項目操作,分別輸人頂目名稱

19、,編號,頂目類塑,名次選 取,排名悄況。(5) 輸人0,則退岀學(xué)校統(tǒng),并且尿存輸人的信息.每次添加完都要輸人0退岀學(xué)校貌 才有效。(6) 輸人3,綸出按學(xué)校編號總分排名。(7) 輸入4,輸出按總分排名。(8) 輸入5,輸出按男團値總分排序。(9) 輸入6,輸出按女團體思分排序。(10) »人7,進人按頂目編號查購界面.輸人要査詢的頂目編號。(11) 輸人8,進人按學(xué)校別編號查肉界面,輸入要查詢的學(xué)枝的編號。第五章課程毀廿心得與體會二周的課程設(shè)廿結(jié)東了,在這次的課程設(shè)廿中不僅檢騎了我所學(xué)習(xí)的知識, 也培養(yǎng)了我血何去把握一件事悄,如何去做一件事悄,Q如何完成一件事悄。經(jīng)過二周的課程設(shè)廿,

20、過程曲折可謂一培難盡。整天都是對著電腦,不然就 是翻閱資料。在此期間我失落11,也曾一度熱悄高濫。點直湎湎令我回味無長。 這次課程設(shè)計使我It會到只有做到細(xì)心耐心,恒心才能做好事悄。這次的課程設(shè)廿,加強了我們動手、思考和解決冋!S的能力。鞏固和加深了 對數(shù)據(jù)結(jié)溝的理解,提高綜合運用本課程所學(xué)BI識的能力。培養(yǎng)了我選用參考書, 查閱手冊員文獻資料的能力。培養(yǎng)如立思考,深人研究,分析冋題、齡決問體的 能力。通過實際編譯學(xué)校貌的分橋設(shè)廿、編程調(diào)試,掌握應(yīng)用狀件的分折方法和 工程設(shè)計方法。通ilj果程設(shè)it,培養(yǎng)了找嚴(yán)肅認(rèn)真的工作作風(fēng),逐步建立正確的 生產(chǎn)觀念、經(jīng)濟觀念和全局觀念。而fllfliU程設(shè)

21、汁同時也是對課本識的JH固和 加強,平時看課本時,有些冋J(rèn)S就不是很能理解,做完課程設(shè)it, W些問題就誣 刃而解了。而冃11可以記住很多東西。認(rèn)識來源于實裁,實裁是認(rèn)識的動力和最 終目的,實跌是檢驗真理的唯一標(biāo)準(zhǔn)。所以這個期末il試之后的課程設(shè)廿對我fl 的作用是非常大的。這次的課程設(shè)it使我懂得了理論與實麻相結(jié)合是很非常重要的,只有理論知 識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論, 才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在整個 設(shè)計11程中,構(gòu)思是很花費時間的。調(diào)試時經(jīng)常會謖到逆樣那樣的錯誤,有的是 因為81心造成的培法踏炭。當(dāng)然,很

22、名也時用錯了方法,總是實現(xiàn)不了。同時在 設(shè)廿的il程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)11的知識理解得不敞深刻,掌 握得不夠牢固。根據(jù)我在課程設(shè)廿中遇到得問題,我將在以后的學(xué)習(xí)11程中注恿以下幾點:1、認(rèn)真上好專業(yè)實驗課,多在實踐中眾煉自己。2、寫程序的11程中要考慮周到,嚴(yán)密。3、在做設(shè)廿的時候要有信心,有時心,切勿浮躁。4、認(rèn)真的學(xué)習(xí)課本知識,掌握課本中的知識點,并在此基礎(chǔ)上學(xué)會靈活運 用。5、在課余時同里名寫程序,熟練掌握在調(diào)試程序的過程中所謹(jǐn)?shù)降某R婂e 溟,以便能節(jié)省調(diào)試程序的時間。毎個實豔通常都要花費很久的時間才能理清一個程序的思路,而且要不斷的 調(diào)試程序才能把程序調(diào)試正確,同時還要

23、做到界面的輸岀也是需要美化的。這次 課程設(shè)計終干順利完成了,在設(shè)廿中遇到了很多專業(yè)知識冋題,最后在老帥的辛 勤指導(dǎo)下,也完成了課程into通il這次的課程設(shè)it, il我更加了解到數(shù)據(jù)結(jié)溝的重要性。以員它對我們 專業(yè)的發(fā)展發(fā)禪的作用。對我1而言,知識上的收獲很重要,但精神上的豐收更 加可喜川我知道了學(xué)無止境的道理。我們每一個人永遠(yuǎn)不能滿足干現(xiàn)有的成就, 人生就像在爬山,一座山峰的后面還有更高的山峰在等著你??卣凼且粌rIM富, 經(jīng)歷是一價擁有。這次課程設(shè)計必將成為我人生ffiiil一個非常美好的回憶!同 時在做課程設(shè)廿時要能服從名方面去考慮,去研究,用多種算法去實現(xiàn)要求。m 次課程設(shè)it,學(xué)到了

24、很多課學(xué)不到的東西,比如獨立思考解決問題,岀現(xiàn)差備的 師機應(yīng)變,這些都辻我受益非淺,今后的制作應(yīng)該能協(xié)更輕松,自己也都能昵解 決并髙質(zhì)量的完成項目。第穴章致在此感對我?guī)蚮fllil的同學(xué)們,你們對我的幫助和支持,its感受到兄弟的友 Ho課程設(shè)廿強化了我的對于數(shù)摒給枸的基礎(chǔ)知識的認(rèn)識,并且將知識逐步實裁 IL使得自己對c有了更深刻的理解。并真誡地感我的數(shù)襦結(jié)構(gòu)任課老師一曽老師。附錄一參考文獻譚浩強.C+程序設(shè)廿.:涓華大學(xué),2004年嚴(yán)爵敏,吳偉民數(shù)據(jù)結(jié)構(gòu)與算法分析(C+版)(第2版).:清華大學(xué),2006 年3 Clifford A. Shaffer,銘著數(shù)據(jù)結(jié)梅與算法分折(C+版)(第2版

25、)電子 lit,2010 年4網(wǎng)址:.chinadforce.附錄二程序清單學(xué)校的結(jié)構(gòu)學(xué)校的名稱學(xué)校的編號 男子團體總分#include<iostream.h> #include<iomanip.h> #include<string.h> #include<fstream.h> #include<stdlib.h> #include<ctype.h> #include<stdio.h> #include<conio.h> typedef struct Departmentchar name20; i

26、nt number; int boy;女子團體思分Department;/運動項目結(jié)枸/運動頂目名標(biāo)/0為女頂目,1為男項目0為取前五名,1為取前五白 頂目編號第一名學(xué)校的編號/第二名學(xué)校的編號 第三名學(xué)校的編號第四名學(xué)校的編號第五名學(xué)校的編號int girl; Department *next; typedef struct Sport char name20; int isboy;int is3;int number;int first;int second;int third;int fourth;int fifth; Sport *next;ISport;/字符轉(zhuǎn)換成數(shù)字int get

27、int(int a)return (int)(aO); Department * headl; /啟動酉面函數(shù)void Cover() systemfcolor 1b-);charline=rf? I?取中 請耐心等侍;char bar=,.,l;int i,j,k=O,x=Oty=O;for(i=0;i<=strlen(line)/2;)system("cls,');for(j=0;j<9;j+)/S 變行坐標(biāo)cout«endl;for(j=0;j<(75-strlen(line)/2;j+) / ® 變列坐標(biāo) cout«B

28、M;for(j=1;j<=i;j+)il 度顯示器coutcC”;for(x=strlen(line)/2;x>i;x)coutcC;if(k=4)i+;cout«endl;for(j=0;j<(75-strlen(line)/2;j+) 行坐標(biāo)定 E cout«f M;cout«line;輸出線條cout«endl;for(j=0;j<(65-strlen(bar)/2;j+)cout«":cout«(i+7)*5«M% Loading11;cout.write(bar,k);cout&#

29、171;endl;for(j=0;j<10;j+) cout«endl;for(j=0;j<24;j+)cout«*M;cout«"g序設(shè)計員:數(shù)字媒體09702冊田野H«endl;for(j=0;j<24;j+)cout«B:for(j=0;j<=18;j+)cout«B;cout«endl;for(j=0;j<10000000;j+);/a 時效果k+;if(k>4)k=0;Ivoid department_add()添加學(xué)校Department * p;int mark=0

30、;p=new Department;cout«Mai入學(xué)校的名稱:"cin»p->name;char c;v/hile (mark!=1)cout«-a«入學(xué)校的編號:;cin»c;if (!isdigit(c)/是否為數(shù)字 cout«MSS 非 SM«endl;elsemark=1;p->number=c;p->boy=0;P->girl=O;p->next=head1->next;head1->next=p;cout«"ffi助添加了一個學(xué)校*

31、71;endl;Iint department_getlong(D epartment * first)/10 到錐表長度int i=0;while (first->next!=NULL)i+;first=first->next;return i;void department_write()/H 學(xué)校數(shù)尿耳人文本Department * p;P=head1;p=p->next;ofstream outfileCDepartment.txt*,ios:out);outfile«department_getlong(p)+1«"M;while (p

32、!=NULL)outfile«p->name«,' ,«p->number«M ,«p->boy«M ,«p->girl«,*: p=p->next;outfile.close();cout«nWrite Success!*«endl;Ivoid department_read()/U文本讀人學(xué)校數(shù)據(jù)int i;ifstream infile (,Department.txt,lios:in);infile»i;while(i>0)Depar

33、tment * p;p=new Department;infile»p->name»p->number»p->boy»p->girl;p->next=head1->next;head1->next=p;i;cout«MDepartment Data Read Success'endl;void department_output(Department *p)/# 出學(xué)校cout<<"學(xué)枝名編號 男團忠分 女團忠分 總分tn;while(p)cout«p->n

34、ame«, t,«getint(p->number)«,t,«p->boy«,t,«p->girl«,tB«(p->girl+p->boy)«endl;p=p->next;int departmentJsexist(int a)/檢勁學(xué)校是否存在int b=0;Department *p;P=head1;p=p->next;while(p)if(p->number=a)return 1;p=p->next;return 0;void departmen

35、t_show(int a)輸出所有學(xué)校Department *p;P=head1;p=p->next;while(p)if(p->number=a)cout«p->name«0 : return;p=p->next;cout«M 無 :void department_search(int a)按編號捜索學(xué)校Department *p;P=head1;p=p->next;while(p)if(p->number=a)cout«H學(xué)校名:,«p->name«,1 M«*男子囲體總分:,&

36、#171;p->boy«,1 女子團體 總分:"«p->girl«":,«(p->boy+p->girl)«*return;p=p->next;cout«M無此編號";Ivoid department_addmark(int ajnt bjnt c)/a 為分?jǐn)?shù),b 為學(xué)校編號,c=1 表示男,c=0 表示女Department *p;P=head1;p=p->next;v/hile(p)if(p->number=b)if(c=T)p->boy=p->

37、boy+a;elsep->girl=p->girl+a;p=p->next;void department_order(Department *temp,int type) /type=O 按忠分,type=1 按男總分 ftype=2 按女 總分,Department *p,*q,*small,*temp1;temp1=new Department;tempi->next=NULL;p=temp;while(p)small=p;q=p->next;while(q)switch(type)case 0:if(q->boy+q->girl)<(sm

38、all->girl+small->boy)small=q;break;case 1:if(q->boy<small->boy)small=q;break;case 2:if(q->girl<small->girl)small=q;break;default:coukerrorendl;if(small!=p)tempi->boy=p->boy;p->boy=small->boy;small->boy=temp1 ->boy;tempi->girl=p->girl;p->girl=small-&

39、gt;girl;small->girl=temp1->girl;strcpy(temp1 ->name?p->name);strcpy(p->name,small->name); strcpy(small->name,tempi->name); temp1->number=p->number; p->number=small->number;small->number=temp1 ->number; 將學(xué)校的名字互換 q=q->next;p=p->next;Sport * head2;int spo

40、rt_isexist(int a) /檢査運動頂目(編號)是否巳經(jīng)存在int b=0;Sport *p;p=head2;p=p->next;while(p)if(p->number=a)return 1;p=p->next;return 0;void sport_add()/添加頂目Sport * p;int mark=0;p=new Sport;cout«-a#入隕目名稱:;cin»p->name;char c;while (mark!=1)人JI目編號:;cin»c;if (!isdigit(c)elseif(sport_isexist

41、(c)cout<<該編號已存ttH«endl;elsemark=1;p->number=c;mark=O;v/hile (mark!=1)cout«-a«人Ji目類里(o為女子頂目,1力男子項目):"; cin»c;p->isboy=(int)(c-0,);/字符轉(zhuǎn)換成數(shù)字if (!isdigit(c)cout«"數(shù)據(jù)非 SM«endl;else if(p->isboy<0|p->isboy>1) cout«MSS 非 SM«endl;elsema

42、rk=1; p->isboy=c;mark=0;v/hile (mark!=1)cout«-請揄人J(目名次情況(0為取前3 g,1為取前5名):" cin»c;p->is3=(int)(c-,0,);if (!isdigit(c)coukS® 非法 H«endl;elseImark=1;p->is3=c;mark=0;while (mark!=1)cout«-請輸人第一名的學(xué)校的編號:: cin»c;if (!isdigit(c)cout«u 數(shù)據(jù)非法 H«endl;elseIif(!

43、departmentjsexist(c)cout<<域?qū)W校不存在青先添加:elsemark=1;p->first=c;if(p->is3=,0,)department_addmark(5,c,p->isboy);elsedepartment_addmark(7tc,p->isboy);mark=0;while (mark!=1)cout«-請輸人第二名的學(xué)校的編號: cin»c;if (!isdigit(c)coutvv 犧據(jù)非法 H«endl;可修編.elseif(!departmentjsexist(c)cout«

44、'g學(xué)校不存在,請先添加:elsemark=1;p->second=c;if(p->is3=,0,) department_addmark(3tc,p->isboy);elsedepartment_addmark(5,c->isboy);mark=O;while (mark!=1)coutm 入第三名的學(xué)校的編號:cin»c;if (!isdigit(c)cout<<"數(shù)據(jù)非法"«endl;elseif(!departmentjsexist(c)cout«e®學(xué)校不存在,i青先添加:else

45、mark=1; p->third=c;if(p->is3=,0,)department_addmark(2fc,p->isboy); elsedepartment_addmark(3,c,p->isboy);mark=O;if(p->is3=,1,)cin»c;cin»c;while (mark!=1)coutm 人第四名的學(xué)校的編號::if (!isdigit(c)cout«M 數(shù)據(jù)非 SH«endl;elseif(!departmentjsexist(c)cout«"i<學(xué)校不存在青先添加:el

46、semark=1;p->fourth=c;department_addmark(2!c!p->isboy);mark=O;while (mark!=1)cout«-a«入第五名的學(xué)校的編號:;if (!isdigit(c)cout«MS 據(jù)非法 u«endl;elseif(!departmentjsexist(c)cout«*i|學(xué)校不存在,請先S iH"«endl;elsemark=1;p->fifth=c;department_addmark(1 cp->isboy);elsep->four

47、th=,0,;p->fifth=,O,;p->next=head2->next;head2->next=p;cout«H®助添加了 一個運動項0"«endl;int sport_getlong(Sport *first)得到項目飪表長度int i=0;while (first->next!=NULL)i+;first=first->next;return i;Ivoid sport_write()將項目數(shù)據(jù)寫人文本文檔Sport * p;P=head2;p=p->next;ofstream outfile(iSp

48、ort.txtM,ios:out);outfile«sport_getlong(p)+1 «* :while (p!=NULL)outfile«p->name«,' ,«p->number«, ,«p->isboy«MM«p->first«M,«p->second«,'”p->foiirth<x幺卩-汕仙*” :p=p->next;outfile.closeO;cout«nWrite Success!

49、«endl;void sport_read()int i;ifstream infile CSport.txtios:in); intile»i;while(i>0)Sport * p; p=new Sport;infile»p->name»p->number»p->isboy»p->is3»p->first»p->second»p->third»p->fourth>>p->fifth;p->next=head2-&g

50、t;next;head2->next=p;cout«MSport Data Read Success!"«endl;void sport_output(Sport *p)輸岀項目的情況cout«Mname3/5N,«u firsts«Msecond,«i,«tfourth,«M UfthU M«endl;while(p)cout« p->name «*th «u M «Qetint(p->number)d 1«getint(p-

51、>isboy)«M - «getint(p->is3)«,' ,«M :department_show(p->first);department_show(p->second);department_show(p->third);department_show(p->fourth);department_show(p->fifth);/printKV);p=p->next;cout«*n,'cout«endl;void sport_search(int a)搜索項目Spo

52、rt *p;p=head2;p=p->next;while(p)if(p->number=a)cout«"l 目 g :,«p->name«endl«,J 目類型:if(p->isboy=1)COUt«*男子壩目:elsecout«*女子項目: coukcendk'第一名:: department_show(p->first); cout«endl«h 第二名:"department_show(p->second); cout«endl«h 第三名:: department_show(p->third);cout«endl«"第四名:: department_show(p->fourth);cout«endl«"第五名: department_show(p->fifth); return;p=p->next;cout«"無此編號";Ivoid main()運動會程序主函數(shù)Cover();systemC'color 2b"); 改變背鼠

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論