vc++運(yùn)動(dòng)會(huì)成績管理系統(tǒng).doc_第1頁
vc++運(yùn)動(dòng)會(huì)成績管理系統(tǒng).doc_第2頁
vc++運(yùn)動(dòng)會(huì)成績管理系統(tǒng).doc_第3頁
vc++運(yùn)動(dòng)會(huì)成績管理系統(tǒng).doc_第4頁
vc++運(yùn)動(dòng)會(huì)成績管理系統(tǒng).doc_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡介

第頁共22頁運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)程序設(shè)計(jì)與實(shí)現(xiàn)學(xué)生姓名:XX指導(dǎo)老師:XXX摘要本文詳細(xì)介紹了運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)程序的設(shè)計(jì)與實(shí)現(xiàn),該程序具有運(yùn)動(dòng)會(huì)成績的輸入,統(tǒng)計(jì)與輸出等功能。在課程設(shè)計(jì)中,程序設(shè)計(jì)語言采用VisualC+,程序運(yùn)行平臺(tái)為Windows98/2000/XP。對(duì)于獲得名次的同學(xué)在存儲(chǔ)其成績的時(shí)候采用了鏈表的結(jié)構(gòu),有利于數(shù)據(jù)的存儲(chǔ)與查找。程序通過調(diào)試運(yùn)行,實(shí)現(xiàn)了最初的設(shè)計(jì)目標(biāo),并且經(jīng)過適當(dāng)完善后,在實(shí)際中可以解決更多的問題。關(guān)鍵詞運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì);程序設(shè)計(jì);C+;1引言本課程設(shè)計(jì)主要解決在運(yùn)動(dòng)會(huì)上,將各個(gè)比賽項(xiàng)目所有獲得名次的同學(xué)的成績輸入;成績查詢;成績修改;成績刪除;以及成績輸出。1.1課程設(shè)計(jì)目的進(jìn)一步鞏固CC+程序,VC+課程所學(xué)的知識(shí),特別加強(qiáng)數(shù)組,指針,結(jié)構(gòu)體,文件數(shù)據(jù)類型的應(yīng)用,熟悉面向過程的結(jié)構(gòu)化和面向?qū)ο罂梢暬绦蛟O(shè)計(jì)方法,通過本次課程設(shè)計(jì)的實(shí)踐,鍛煉程序設(shè)計(jì)的能力以及用C/C+C+解決實(shí)際問題的能力,為以后后續(xù)課程的學(xué)習(xí)打好基礎(chǔ)。1.2程序功能說明該程序用于運(yùn)動(dòng)會(huì)上,涉及到比賽項(xiàng)目成績的錄入,某個(gè)學(xué)校在某個(gè)項(xiàng)目中獲得成績的查詢,某個(gè)學(xué)校在某個(gè)運(yùn)動(dòng)項(xiàng)目中獲得的成績的修改,某個(gè)學(xué)校在某個(gè)運(yùn)動(dòng)項(xiàng)目中獲得的成績的刪除,以及某個(gè)學(xué)校所有獲得成績的得分報(bào)表以及團(tuán)體成績的得分報(bào)表。其中比賽成績的錄入可以按照運(yùn)動(dòng)項(xiàng)目舉行的次序輸入,也可以輸入自己指定的運(yùn)動(dòng)項(xiàng)目的成績;自己擴(kuò)展的功能是“某個(gè)學(xué)校在某個(gè)項(xiàng)目中獲得成績的查詢,某個(gè)學(xué)校在某個(gè)運(yùn)動(dòng)項(xiàng)第頁共22頁目中獲得的成績的修改,某個(gè)學(xué)校在某個(gè)運(yùn)動(dòng)項(xiàng)目中獲得的成績的刪除”三項(xiàng),這三項(xiàng)都要求輸入學(xué)校以及運(yùn)動(dòng)項(xiàng)目編號(hào),通過這兩項(xiàng)作為參數(shù)具體的函數(shù)可以查詢、修改成績或者是刪除某項(xiàng)成績記錄,進(jìn)而影響到最后得分報(bào)表的輸出。2原理分析2.1開發(fā)語言本課程涉及主要采用了C+。C+語言是在C語言的基礎(chǔ)上發(fā)展起來的,不僅繼承了C語言的所有特點(diǎn),而且引入了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法1。C+改進(jìn)了程序涉及思路,將編程方式進(jìn)化到面向?qū)ο筮M(jìn)行程序設(shè)計(jì)這一新的思維過程2。C+語言代表著對(duì)以往語言之精華的發(fā)展和提煉,并能很好的與C語言兼容,既支持面向?qū)ο蟮某绦蛟O(shè)計(jì),也支持結(jié)構(gòu)化的程序設(shè)計(jì)。它修補(bǔ)了C語言中的一些漏洞,提供更好的類型檢查和編譯時(shí)的分析,提供了異常處理機(jī)制,簡化了程序的出錯(cuò)處理,利用throw、try和catch關(guān)鍵字,出錯(cuò)處理程序不必與正常的代碼緊密結(jié)合,提高了程序的可靠性和可讀性。函數(shù)重載允許相同的函數(shù)名具有不同參數(shù)表,系統(tǒng)根據(jù)參數(shù)的個(gè)數(shù)和類型匹配相應(yīng)的函數(shù)。提供了模板機(jī)制。摸板包括類摸板和函數(shù)模板兩種,它們將數(shù)據(jù)類型作為參數(shù)。對(duì)于具體數(shù)據(jù)類型,編譯器自動(dòng)生成模板類或模板函數(shù),它提供了源代碼復(fù)用的一種手段。2.2運(yùn)行環(huán)境MicrosoftVisualC+6.0。VisualC+(簡稱VC)是Microsoft公司推出的目前使用極為廣泛的基于Windows平臺(tái)的C+可視化開發(fā)環(huán)境。VisualC+6.0提供的控制臺(tái)應(yīng)用程序?qū)W(xué)習(xí)和掌握標(biāo)準(zhǔn)C+內(nèi)容非常有利?!翱梢暋钡馁Y源編輯器與MFC類以及應(yīng)用程序向?qū)?,為快速高效地開發(fā)出功能強(qiáng)大的Windows應(yīng)用程序提供了極大的方便。利用VisualC+6.0進(jìn)行Internet、數(shù)據(jù)庫及多媒體等多方面的程序開發(fā)也很容易3。第頁共22頁3系統(tǒng)體系結(jié)構(gòu)3.1流程圖圖3.1系統(tǒng)流程圖用一個(gè)dowhile循環(huán)語句執(zhí)行完標(biāo)號(hào)為16的某個(gè)分支之后,重新回到操作目錄,選擇要進(jìn)行的操作,直到選擇標(biāo)號(hào)為7的分支退出程序。1234560輸入運(yùn)動(dòng)會(huì)的一些基本信息(參賽學(xué)校數(shù),男女的項(xiàng)目數(shù))開始列出一個(gè)操作目錄,選擇要操作的編號(hào)成績輸入具成體績項(xiàng)查目詢查詢修成改績項(xiàng)目刪記除錄錯(cuò)誤的輸?shù)某雒鞔蝹€(gè)記項(xiàng)錄目輸體出成學(xué)績校團(tuán)退出程序列出一個(gè)操作目錄選擇要操作的編號(hào)結(jié)束第頁共22頁3.2算法說明該程序先采用了一個(gè)嵌套在dowhile循環(huán)語句中的switch語句來控制要執(zhí)行操作的編號(hào),用戶可以有多種選擇,根據(jù)不同的需要選擇不同的操作。其中具體的操作主要采用的是一個(gè)鏈表的結(jié)構(gòu),涉及到了鏈表的插入,鏈表的查找,以及鏈表的刪除等知識(shí)點(diǎn)。鏈表的插入解決了各個(gè)項(xiàng)目中獲得名次的同學(xué)的成績的錄入問題,具體為:為每個(gè)學(xué)校建立一個(gè)頭結(jié)點(diǎn),若該學(xué)校有同學(xué)取得名次,建立一個(gè)新的結(jié)點(diǎn)來存儲(chǔ)該同學(xué)的信息,并將其插到該學(xué)校所在鏈表的最后一個(gè)結(jié)點(diǎn)后面。鏈表的查找解決了運(yùn)動(dòng)項(xiàng)目成績的查詢,以及后面的成績的輸出、刪除都要用到鏈表的查找,查找時(shí)先將頭結(jié)點(diǎn)的地址賦給查找函數(shù),根據(jù)查找的條件依次與每個(gè)結(jié)點(diǎn)中相應(yīng)的比較,若相等則輸出所需要的信息,否則返回“查找的元素不存在”信息。而成績的刪除,先查找到其所在的結(jié)點(diǎn),然后將該結(jié)點(diǎn)前后結(jié)點(diǎn)相連,再刪除該結(jié)點(diǎn);成績的修改要先查找到其所在的結(jié)點(diǎn),然后再重新錄入數(shù)據(jù);至于學(xué)校所獲得的各項(xiàng)成績的輸出,將該校所在的頭結(jié)點(diǎn)的地址賦給控制輸出的函數(shù),利用指針的移動(dòng)依次將各項(xiàng)成績輸出,而團(tuán)體成績的輸出,先要根據(jù)運(yùn)動(dòng)項(xiàng)目編號(hào)來確定是男生還是女生項(xiàng)目,然后再依次累加,分別得到男女生的團(tuán)體得分,最后將兩者相加,得到學(xué)校的團(tuán)體得分。3.3函數(shù)及變量說明voidinsertlist(intiterm,intn);該函數(shù)用來添加成績記錄,iterm是運(yùn)動(dòng)項(xiàng)目的編號(hào),n為參加比賽的學(xué)??倲?shù),需要注意地是根據(jù)運(yùn)動(dòng)項(xiàng)目是奇數(shù)還是偶數(shù)來判定最后結(jié)果取前三還是前五名,這里用(iterm%2)是否為零來判斷。RE*findlist(intsnum,intfiterm);該函數(shù)用來查找指定的學(xué)校的某項(xiàng)目成績并返回該成績所在節(jié)點(diǎn)的前一個(gè)節(jié)點(diǎn)的地址,其中snum是要查找的學(xué)校的編號(hào),而fiterm為要查找的運(yùn)動(dòng)項(xiàng)目編號(hào),返回一個(gè)指向RE型的指針,RE為定義的一個(gè)結(jié)構(gòu)體類型,用來存儲(chǔ)獲得名次的學(xué)生的基本信息(包括學(xué)生姓名,取得的名次,獲得的分?jǐn)?shù),所在的學(xué)校編號(hào)以及運(yùn)動(dòng)項(xiàng)目編號(hào))RE*findend(intsnum);查找并返回每個(gè)學(xué)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論