運動會計分系統課程設計報告_第1頁
運動會計分系統課程設計報告_第2頁
運動會計分系統課程設計報告_第3頁
運動會計分系統課程設計報告_第4頁
運動會計分系統課程設計報告_第5頁
已閱讀5頁,還剩41頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

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

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

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

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

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

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

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

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

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

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

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

15、#171; 提示:頁先輔入系別后才能輸入運動項目請選i壬:半:圖5 f?序輸人學校別圖如圖5兩示,在菜單屮選擇鋼按回車扯,牌出輸人一個學校,輸人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歡迎使用運動主分做統計系統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 技系別塢號譽詢;* 輸人系別;* ? 按系別細號輸出總和* 5 按男團體總分排序;? 撈項目縮號査詢;0退岀握示:需先備人系別后才能輸入運動頂目請選擇:圖8程序輸人學校別編號査詢圖如圖8所示,在菜單中選擇8 ,按回車扯,禪出“輸人學校的編號”,輸人V ,按回車邃,牌回菜單。(1 )輸入:4輸出:學校名編號男0!總分女0!總分總分法律學校4101數學學校56511旅游學校15914歷史學校297中文學校6151126廿算機學校72111326法律學校400電子學校3314數學學校5639族游學校17714歷史學校299

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

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

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

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

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

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

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

25、)電子 lit,2010 年4網址:.chinadforce.附錄二程序清單學校的結構學校的名稱學校的編號 男子團體總分#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;/運動項目結枸/運動頂目名標/0為女頂目,1為男項目0為取前五名,1為取前五白 頂目編號第一名學校的編號/第二名學校的編號 第三名學校的編號第四名學校的編號第五名學校的編號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;/字符轉換成數字int get

27、int(int a)return (int)(aO); Department * headl; /啟動酉面函數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 變行坐標cout«endl;for(j=0;j<(75-strlen(line)/2;j+) / ® 變列坐標 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+) 行坐標定 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序設計員:數字媒體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()添加學校Department * p;int mark=0

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

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 學校數尿耳人文本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文本讀人學校數據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)/# 出學校cout<<"學枝名編號 男團忠分 女團忠分 總分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)/檢勁學校是否存在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)輸出所有學校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)按編號捜索學校Department *p;P=head1;p=p->next;while(p)if(p->number=a)cout«H學校名:,«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 為分數,b 為學校編號,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; 將學校的名字互換 q=q->next;p=p->next;Sport * head2;int spo

40、rt_isexist(int a) /檢査運動頂目(編號)是否巳經存在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,);/字符轉換成數字if (!isdigit(c)cout«"數據非 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«-請輸人第一名的學校的編號:: cin»c;if (!isdigit(c)cout«u 數據非法 H«endl;elseIif(!

43、departmentjsexist(c)cout<<域學校不存在青先添加: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«-請輸人第二名的學校的編號: cin»c;if (!isdigit(c)coutvv 犧據非法 H«endl;可修編.elseif(!departmentjsexist(c)cout«

44、'g學校不存在,請先添加: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 入第三名的學校的編號:cin»c;if (!isdigit(c)cout<<"數據非法"«endl;elseif(!departmentjsexist(c)cout«e®學校不存在,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 人第四名的學校的編號::if (!isdigit(c)cout«M 數據非 SH«endl;elseif(!departmentjsexist(c)cout«"i<學校不存在青先添加:el

46、semark=1;p->fourth=c;department_addmark(2!c!p->isboy);mark=O;while (mark!=1)cout«-a«入第五名的學校的編號:;if (!isdigit(c)cout«MS 據非法 u«endl;elseif(!departmentjsexist(c)cout«*i|學校不存在,請先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()將項目數據寫人文本文檔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()運動會程序主函數Cover();systemC'color 2b"); 改變背鼠

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論