版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程設(shè)計報課程名稱C語言課程設(shè)計課題名稱運動會分數(shù)統(tǒng)計系統(tǒng)專 業(yè)班 級學 號姓 名指導教師王穎2012年 6月25 日湖南工程學院課程設(shè)計任務書課程名稱C語言課程設(shè)計課 題 運動會分數(shù)統(tǒng)計系統(tǒng)專業(yè)班級 電氣工程及其自動化 學生姓名 學 號 指導老師 王穎 審 批任務書下達日期2012年6月16日任務完成日期2012年6月25日運動會分數(shù)統(tǒng)計系統(tǒng)一、問題描述:參加運動會的n個學校編號為In。比賽分成m個男子項目和w個女子項目, 項目編號分別為Im和m 1m w。由于各項目參加人數(shù)差別較大,有些項目取 前五名,得分順序為7, 5, 3, 2, 1;還有些項目只取前三名,得分順序為 5, 3, 2。
2、設(shè)計一個統(tǒng)計程序按名次產(chǎn)生各種成績單、得分報表。二、基本要求:1. 產(chǎn)生各學校的成績單,內(nèi)容包括各校所取得的每項成績的項目號、名次、成績、姓名和得分;產(chǎn)生團體總分報表,內(nèi)容包括校號、男子團體總分、女子團體總分和團體總分;均按名次排序。2. 比賽項目既要有徑賽,又要有田賽。三、測試數(shù)據(jù):對于n=4, m=3 w=2,編號為奇數(shù)的項目取前五名,編號為偶數(shù)的項目取前三 名,設(shè)計一組實例數(shù)據(jù)。四、實現(xiàn)提示:1 數(shù)據(jù)結(jié)構(gòu):線性表2數(shù)據(jù)庫結(jié)構(gòu):下面四張表構(gòu)成該系統(tǒng)的基本數(shù)據(jù)庫,全部輸出報表由系統(tǒng)根 據(jù)基本表自動生成。運動員編號姓名學校編號校名項目編號項目名初始化時完成錄入運動員編號學校編號項目編號性別類型
3、成績charcharcharcharcharfloat3.可以假設(shè)nW20, m<30, w< 20,姓名長度不超過20個字符。每個項目結(jié)束時,將其編號、類型符(區(qū)分取前五名還是前三名)輸入,并輸入運動員編號、學 校編號和成績等。五、選作內(nèi)容:允許用戶指定某項目采取其他名次取法、八前言C語言程序設(shè)計課程設(shè)計是對學生的一種全面綜合訓練,它包括問題分析,總體結(jié)構(gòu)設(shè)計,用戶界面設(shè)計,程序設(shè)計基本技能和技巧,多人合作,以至 一整套軟件工作規(guī)范的訓練和科學作風的培養(yǎng)。 是與課堂聽講、 自學和練習相輔相成的 必不可少的一個教學環(huán)節(jié)。通常,課程設(shè)計的課題比平時的習題復雜得多,也更接近實際。 課程
4、設(shè)計著眼于與應用的結(jié)合點, 使學生學會如何把書上學到的知識用于解決實際問題, 培 養(yǎng)軟件工作所需要的動手能力;另一方面,能使書上的知識變“活” ,使學生更好地深化理 解和靈活掌握教學內(nèi)容。 為了達到上述目的, 本課程設(shè)計安排了八個設(shè)計課題, 訓練重點在 于基本的程序設(shè)計方法和分析問題的能力, 而不強調(diào)面面俱到。 學生可任選其中一題進行設(shè) 計,設(shè)計完畢寫出課程設(shè)計報告,用 A4 紙打印成冊;并將課程設(shè)計報告與源程序存盤。學 習委員將課程設(shè)計報告與磁盤收齊后交指導老師。一、目的全面熟悉、掌握C語言基本知識,掌握 C程序設(shè)計中的順序、 分支、循環(huán)三種結(jié)構(gòu)及數(shù) 組、函數(shù)和 C 語言基本圖形編程等方法,
5、 把編程和實際結(jié)合起來, 增強對不同的問題運用和 靈活選擇合適的數(shù)據(jù)結(jié)構(gòu)以及算法描述的本領(lǐng), 熟悉編制和調(diào)試程序的技巧, 掌握分析結(jié)果 的若干有效方法, 進一步提高上機動手能力, 培養(yǎng)使用計算機解決實際問題的能力, 養(yǎng)成提 供文檔資料的習慣和規(guī)范編程的思想, 為以后在專業(yè)課程中應用計算機系統(tǒng)解決計算、 分析、 實驗和設(shè)計等學習環(huán)節(jié)打下較扎實的基礎(chǔ)。二、設(shè)計要求掌握結(jié)構(gòu)化程序設(shè)計的主體思想, 以自頂向下逐步求精的方法編制程序解決一些實際的 問題,為將來編寫軟件積累一些典型的案例處理經(jīng)驗。1. 設(shè)計正確,方案合理。2. 界面友好,使用方便。3. 程序精煉,結(jié)構(gòu)清晰。4. 設(shè)計報告 5000 字以上
6、,含程序設(shè)計說明,用戶使用說明,源程序清單及程序框圖。5. 上機演示。6. 按學號順序選課題號,并在規(guī)定的時間內(nèi)獨自完成相關(guān)課題的C 源程序編寫、調(diào)整和運行。源程序及編譯生成各文件均保存在軟盤中;7. 按本任務書的要求,按附錄的要求編寫課程設(shè)計報告(Word 文檔格式)。并用 A4 的復印紙打印并裝訂;8. 在 2012年 6月 25日之前,請各班學習委員收齊課程設(shè)計報告和源程序軟盤交 王穎老師 ,聯(lián)系電話: 8883238。三、進度安排第一周 星期四: 課題講解,查閱資料第二周 星期一 : 總體設(shè)計,詳細設(shè)計星期二:編程,上機調(diào)試、修改程序星期三:上機調(diào)試、完善程序星期四:上機調(diào)試、完善程序
7、星期五:答辯星期六-星期天:撰寫課程設(shè)計報告目錄第一章 問題描述 31.1 問題描述 31.2 基本要求 31.3 測試數(shù)據(jù) 41.4 實現(xiàn)提示 41.5 選作內(nèi)容 4第二章 需求分析 52.1 需求陳述 52 11 開發(fā)語言 52 12 運行環(huán)境 52.2 建立對象模型 52.3 建立功能模型 6第三章 概要設(shè)計 73.1 系統(tǒng)設(shè)計 73.1.1 系統(tǒng)分析 73.1.2 系統(tǒng)設(shè)計思想 73.2 系統(tǒng)類層次及結(jié)構(gòu)圖 8第四章 詳細設(shè)計 94.1 類與對象的設(shè)計 94.1.1 類屬性的詳細設(shè)計 10第五章 測試與維護 11第六章 用戶手冊 15設(shè)計總結(jié) 17參考文獻 17致 謝. 18附錄:源代
8、碼 . 19第一章 問題描述本課程設(shè)計主要解決在運動會上, 將各個比賽項目所有獲得名次的同學的成 績輸入,成績查詢,成績修改,成績刪除,以及成績輸出。 該程序用于運動會 上,涉及到比賽項目成績的錄入, 某個學校在某個項目中獲得成績的查詢, 某個 學校在某個運動項目中獲得的成績的修改, 某個學校在某個運動項目中獲得的成 績的刪除, 以及某個學校所有獲得成績的得分報表以及團體成績的得分報表。 其 中比賽成績的錄入可以按照運動項目舉行的次序輸入, 也可以輸入自己指定的運 動項目的成績; 自己擴展的功能是 “某個學校在某個項目中獲得成績的查詢, 某 個學校在某個運動項目中獲得的成績的修改, 某個學校在
9、某個運動項目中獲得的 成績的刪除” 三項,這三項都要求輸入學校以及運動項目編號, 通過這兩項作為 參數(shù)具體的函數(shù)可以查詢、 修改成績或者是刪除某項成績記錄, 進而影響到最后 得分報表的輸出。1.1 問題描述參加運動會的n個學校編號為In。比賽分成m個男子項目和w個女 子項目,項目編號分別為Im和1m+ w。由于各項目參加人數(shù)差別較 大,有些項目取前五名,得分順序為 7, 5, 3, 2, 1 ;還有些項目只取前三 名,得分順序為 5, 3, 2。設(shè)計一個統(tǒng)計程序按名次產(chǎn)生各種成績單、得分 報表。1.2 基本要求1. 產(chǎn)生各學校的成績單, 內(nèi)容包括各校所取得的每項成績的項目號、 名 次、成績、姓
10、名和得分;產(chǎn)生團體總分報表,內(nèi)容包括校號、男子團 體總分、女子團體總分和團體總分;均按名次排序。2. 比賽項目既要有徑賽,又要有田賽。1.3測試數(shù)據(jù)對于n=4, m=3 w=2編號為奇數(shù)的項目取前五名,編號為偶數(shù)的項目 取前三名,設(shè)計一組實例數(shù)據(jù)。1.4實現(xiàn)提示3 數(shù)據(jù)結(jié)構(gòu):線性表4數(shù)據(jù)庫結(jié)構(gòu):下面四張表構(gòu)成該系統(tǒng)的基本數(shù)據(jù)庫,全部輸出報表由 系統(tǒng)根據(jù)基本表自動生成。運動員編號學校編號項目編號性別類型成績charcharcharcharcharfloat運動員編號姓名學校編號校名項目編號項目名>初始化時完成錄入3.可以假設(shè)nW20, m< 30, w<20,姓名長度不超過20
11、個字符。每個項目 結(jié)束時,將其編號、類型符(區(qū)分取前五名還是前三名)輸入,并輸入 運動員編號、學校編號和成績等。1.5選作內(nèi)容允許用戶指定某項目采取其他名次取法第二章 需求分析2.1 需求陳述本課程設(shè)計主要解決在運動會上, 將各個比賽項目所有獲得名次的同學的成 績輸入,成績查詢,成績修改,成績刪除,以及成績輸出。2 11 開發(fā)語言本課程涉及主要米用了 C+ o C+語言代表著對以往語言之精華的發(fā)展和提 煉,既支持面向?qū)ο蟮某绦蛟O(shè)計,也支持結(jié)構(gòu)化的程序設(shè)計。它修補了 C 語言 中的一些漏洞, 提供更好的類型檢查和編譯時的分析, 提供了異常處理機制, 簡 化了程序的出錯處理,利用throw、try
12、和catch關(guān)鍵字,提高了程序的可靠性和 可讀性。函數(shù)重載允許相同的函數(shù)名具有不同參數(shù)表,系統(tǒng)根據(jù)參數(shù)的個數(shù)和 類型匹配相應的函數(shù)。提供了模板機制。模板包括類模板和函數(shù)模板兩種,它們 將數(shù)據(jù)類型作為參數(shù)。2 12 運行環(huán)境Microsoft Visual C+ 6.0。Visual C+(簡稱 VC)是 Microsoft 公司推出的目 前使用極為廣泛的基于Windows平臺的C+可視化開發(fā)環(huán)境。 “可視”的資源 編輯器與 MFC 類以及應用程序向?qū)?,為快速高效地開發(fā)出功能強大的 Windows 應用程序提供了極大的方便。利用 Visual C+ 6.0進行Internet、數(shù)據(jù)庫及多媒體 等
13、多方面的程序開發(fā)也很容易。2.2 建立對象模型將各個比賽項目所有獲得名次的同學的成績輸入, 成績查詢, 成績修改, 成 績刪除,以及成績輸出封裝為一個類,通過函數(shù)調(diào)用將這些對象連接起來。2.3 建立功能模型1) 可以輸入各個項目的前三名或前五名的成績;2) 能統(tǒng)計各學??偡?;3) 可以按學校編號、學??偡帧⒛信畧F體總分排序輸出;4) 可以按學校編號查詢學校某個項目的情況;5) 可以按項目編號查詢?nèi)〉们叭蚯拔迕膶W校。第三章 概要設(shè)計3.1 系統(tǒng)設(shè)計3.1.1 系統(tǒng)分析1)首先進入成績錄入界面,先輸入學校編號 1,再輸入學校 1 各個項目成績 0或 1(0'表示沒獲得該項目的該名次,
14、1'表示獲得了該項目的該名次) 。然 后再輸入第二個學校編號 2,再輸入成績;當輸入其他的學校編號和成績會提示 錯誤輸入,重新輸入。2)然后進入總目錄,輸入 :1 統(tǒng)計各學??偡植⑤敵觯?)輸入: 2 按學校編號排序輸出;4)輸入: 3 按學校總分排序輸出;5)輸入: 4 按男團體總分排序輸出;6)輸入: 5 按女團體總分排序輸出 ;7)輸入: 6 按學校編號查詢學校某個項目情況;8)輸入: 7 按項目編號查詢?nèi)〉妹蔚膶W校;9)輸入: 0 退出系統(tǒng);10)輸入其他數(shù)據(jù)會提示錯誤輸入,重新輸入。3.1.2 系統(tǒng)設(shè)計思想本程序主要是使用順序表來實現(xiàn)操作。 一個運動會包括運動項目和參加運動
15、 會的學校。因此構(gòu)造順序表match,school。為了操作的方便,設(shè)計了一個總目錄, 選擇相應序號進入各個操作, 并有錯誤提示, 每完成一個操作程序會提示選擇返 回目錄或退出程序, 對于總分的排序使用了冒泡排序。 為了使整個程序界面看起 來更加愜意, 又添加了背景和字體顏色設(shè)置的程序語句。 每個操作前都有操作指 南,易于使用。3.2系統(tǒng)類層次及結(jié)構(gòu)圖退出系統(tǒng)寸按項目編號查詢?nèi)〉妹蔚膶W校按學校編號查詢學校某個項目情況查-統(tǒng)計各學??偡?按學校編號排序 .按學校總分排序按男團體總分排序.-按女團體總分排序一11* FF1.詢學校某個項目情況圖3.2系統(tǒng)流程圖第四章 詳細設(shè)計4.1 類與對象的設(shè)
16、計詳細設(shè)計 :宏定義:#define N 2#define bm 4#define gm 3數(shù)據(jù)類型定義 :運動項目的定義: struct match int matchnum; int rank3; matbm+gm; 學校的定義:struct schoolint schoolnum; struct match matbm+gm; int total;int boytotal;int girltotal;schN;函數(shù)之間的調(diào)用關(guān)系main hua nyingni inpu t system» totaljisua* xun hua n圖4.1函數(shù)調(diào)用關(guān)系圖4.1.1類屬性的詳細設(shè)
17、計類的屬性包括靜態(tài)屬性和動態(tài)屬性。 該程序用于運動會上,其中類的靜態(tài)屬 性包括:運動項目的編號,參加比賽的學??倲?shù),涉及到的動態(tài)屬性包括:比賽 項目成績的錄入,某個學校在某個項目中獲得成績的查詢, 某個學校在某個運動 項目中獲得的成績的修改,某個學校在某個運動項目中獲得的成績的刪除, 以及 某個學校所有獲得成績的得分報表以及團體成績的得分報表。其中比賽成績的錄入可以按照運動項目舉行的次序輸入,也可以輸入自己指定的運動項目的成績; 自己擴展的功能是“某個學校在某個項目中獲得成績的查詢, 某個學校在某個運 動項目中獲得的成績的修改,某個學校在某個運動項目中獲得的成績的刪除” 三 項,這三項都要求輸
18、入學校以及運動項目編號, 通過這兩項作為參數(shù)具體的函數(shù) 可以查詢、修改成績或者是刪除某項成績記錄,進而影響到最后得分報表的輸出。第五章測試與維護1數(shù)據(jù)輸入(輸入成績?nèi)鐖D)圖 5.1.1輸入:請輸入學校編號:1項目編號1第 1名:10第 2名:11第3名:00請輸入學校編號:2項目編號12第1名:01第2名:00第3名:1123401101001001134561001011011005670017110輸入成績后出現(xiàn)總目錄(下圖);請選萍t輸入0-巧序號:*系統(tǒng)目求*圖 5.1.2*- 1234567Hfc目學 項的出出取 總 分i& 亠甞靈杓總總冒p 畫總休體編編 備齧團0校目 龍盂
19、重辜項出圖 5.1.5輸入:1輸出:謫選暉怖人07啦空:1"Ir等彳擊 總卄MLJCJtMJCJCltXJClt*學校編號-*總分*3337 口 J 口 1口 J 口 口 a (M I" Bp圖 5.1.3(2) 輸入:1返回總目錄,再輸入:2 輸出:IhOfiaKKtOf WK M:*總分*«僅于伙彌壽*學校編號-*12I j i 3 I I X i E t I JI lilHtan(3) 輸入:1返回總目錄,再輸入:3 輸出:KHXKHX如乃安芋書£ 思彳亍羽RJ予“ 城H翼覽五*學校編號*十總分*23?133ttHtttttltttttltt 6:
20、退出;1:返回目錄。,*請窗弟:圖 5.1.5(4) 輸入:1返回總目錄,再輸入:4 輸出:圖 5.1.6(5) 輸入:1返回總目錄,再輸入:5 輸出:XJEU寸妥歲1 團(本亂分算算卿 用鵬1<>(二匚卄學校編號""總分"216114ItttttilttttttttU 0;退出;1:返回目錄。 *請選擇;圖 5.1.7(6) 輸入:1返回總目錄,再輸入:6,學校編號輸入:1,項目編號輸入:5 輸出:圖 5.1.8(7) 輸入:2,返回上一級,再輸入學校編號:2,項目編號:1 輸出:flttttitttttttttii H:退岀;1:返回 目錄;返回上
21、一級q *請送擇:圖 5.1.9(8) 輸入:1,返回總目錄;再輸入:7,輸入項目編號:7 輸出:圖 5.1.10(9) 如果輸入提示外的數(shù)字,例如輸入:4 則輸出錯誤提示:a:退出;1:返回目錄;2:返回上一級。衛(wèi)“請選擇 4俞入曙誤(貝能是?;騣或2),請重新輸人,圖 5.1.11(10)輸入:0輸出:W M fcf K Mb-1謝謝使用!R Hifli m1-w 1-* Ms:M Hi ui -a-r vlt i-r wv-r謝謝使用1JI JL M H. JI M JH.JV.M M. JI JK JH M圖 5.1.#第六章用戶手冊1、運行環(huán)境Win dows,VC+6.02 、用戶
22、界面輸入成績艸脯輸入猊明:牢狡編號為1-2;項目編號為一 T "-4為男子項目,片為女子項目.2-成績只罷是洵或士C紗 粽繰得該項目的該名況 fr表示荻得了該項目的該名次-以叫b謹前進a )*請輸入學校編號二請選萍t輸入0-巧序號:*系統(tǒng)目求*圖 6.2.1圖 6.2.2出出取 總分查& 亠琴1刃總總nzp- 畫總休體蝙編目學 項的務卷sa校目 Tt$HrK辛項出 12345G7H3、操作過程(1) 用戶進入運動會分數(shù)統(tǒng)計系統(tǒng)程序歡迎界面(2) 錄入成績,先輸入要輸入的學校編號,1或2;再輸入對應學校的1-7 項目的成績(成績用0或1: 0'表示沒獲得該項目的該名次,
23、1表示獲得了 該項目的該名次)當成績錄入錯誤時會有錯誤提示。(3) 進入總目錄,按提示,輸入 0-7中的一個數(shù);輸入:0則推出系統(tǒng);輸入:1統(tǒng)計各學校總分并輸出;然后選擇 0'或 1' ('0'表示退出系統(tǒng),1'表示返回總目錄);輸入: 2 按學校編號排序輸出;然后選擇0'或 1'( 0'表示退出系統(tǒng),1'表示返回總目錄);輸入:3 按學??偡峙判蜉敵?;然后選擇 0'或 1'(0'表示退出系 統(tǒng),1'表示返回總目錄);輸入: 4 按男團體總分排序輸出;然后選擇 0'或 1'(
24、0'表示退出 系統(tǒng),1'表示返回總目錄);輸入: 5 按女團體總分排序輸出;然后選擇 0'或 1'(0'表示退出 系統(tǒng),1'表示返回總目錄);輸入:6 按學校編號查詢學校某個項目編號;選擇學校編號1或 2;然后選擇項目編號 1-7 ;輸出項目成績;然后選擇 0或 1或2(0'表示退出系統(tǒng),1'表示返回總目錄,2'表示返回上一級);輸入:7 按項目編號查詢?nèi)〉妹蔚膶W校; 選擇項目編號 1-7 ;輸出成績; 然后選擇 0 或 1 或 2( 0'表示退出系統(tǒng),1'表示返回總目錄,2'表示返回設(shè)計總結(jié)本次
25、課程設(shè)計,使我對課程設(shè)計的設(shè)計方法、步驟、思路、有一定的了解與 認識。它相當于實際設(shè)計工作的模擬。 在課程設(shè)計過程中, 基本能按照規(guī)定的程 序進行,先針對表達式算法為背景, 通過調(diào)研、 分析現(xiàn)有的管理模式和已有的管 理軟件,建立系統(tǒng)模型;收集、調(diào)查有關(guān)資料,然后進入草案階段,其間與指導 教師進行幾次方案的討論、修改,再討論、再修改,最后定案。通過此次課程設(shè)計, 我了解了編寫應用軟件的一般步驟, 獲得了很多寶貴的 經(jīng)驗。特別是怎么樣通過理論與實踐相結(jié)合, 把書本上的內(nèi)容應用到我們做的程 序上去。怎樣使各個子模塊實施其的詳細功能,特別是各個子模塊之間的接口, 一定要相當清晰, 達到相互協(xié)調(diào)的作用其
26、次, 我熟悉了所學的各種知識。 學會了 很多關(guān)于程序設(shè)計的經(jīng)驗和技巧, 明白了程序的使用性和通用性是程序生存周期 長短的關(guān)鍵,學會了調(diào)試程序的一般方法。重要的是,通過這次設(shè)計,逐步我具 備了走向程序員的基本素質(zhì)。知道應如何在困難重重中一步一步細心的發(fā)現(xiàn)問 題,解決問題。 并深刻體會到了團體合作精神的重要性, 知道了在軟件設(shè)計中對 界面和功能如何平衡,如何達到相對的完美。參考文獻1 陳維興,林小茶 .c+ 面向?qū)ο蟪绦蛟O(shè)計教程 . 北京 : 清華大學出版社, 1996.2004.2 張國峰. C+ 程序設(shè)計實用教程 . 北京: 清華大學出版社, 1996.3 張松梅. C+ 語言教程 . 電子科
27、技大學出版社, 1993.4 閻龍.C程序員的C+旨南.北京航空航天大學出版社,1992.5 王博. 面向?qū)ο蟮慕!⒃O(shè)計技術(shù)與方法 . 北京希望電腦公司, 1990.6 汪成為. 面向?qū)ο蠓治?、設(shè)計及應用 . 國防工業(yè)出版社, 1992.7 江明德. 面向?qū)ο蟪绦蛟O(shè)計 . 電子工業(yè)出版社, 1993.8 呂鳳翥.C + +語言程序設(shè)計電子工業(yè)出版社,2001.致謝首先感謝我的指導老師王穎老師,他在我的課程設(shè)計過程中提出了指導性 的方案和架構(gòu), 并指引我閱讀相關(guān)的資料和書籍, 使我在不熟悉的領(lǐng)域中仍能迅 速掌握新的技術(shù)。在這幾節(jié)課程設(shè)計中 , 對課本中所學的各種知識進一步理解和掌握 , 學會了
28、 如何把學到的知識用于解決實際問題 , 鍛煉了自己動手的能力。一個人要完成所有的工作是非常困難和耗時的。 在以后的學習中我會更加注 意各個方面的能力的協(xié)調(diào)發(fā)展。 在課程設(shè)計時遇到了很多的問題, 在老師的幫助, 和對各種資料的查閱中,將問題解決,培養(yǎng)了我自主動手,獨立研究的能力,為 今后在學習工作中能更好的發(fā)展打下了堅實的基礎(chǔ)。 我的同學在我的課程設(shè)計中也給了我很多無私的幫助和支持,在此一并表示感 謝。printf("歡迎使用運動會分數(shù)統(tǒng)計系統(tǒng) nn");附錄:源代碼#include<stdio.h>#include<process.h> #defin
29、e N 100 / 學校個數(shù) #define bm 50 / 男團體個數(shù) #define gm 50 / 女團體個數(shù) void xuanze();void xunhuan();struct match / 項目int matchnum;int rank3;matbm+gm;struct school / 學校int schoolnum;struct match matbm+gm;int total; int boytotal;int girltotal;schN;void huanyingni() /* 開始界面,歡迎使用 */printf("nn湖 南 工 程 學 院 電 氣 11
30、82 班 趙 巖nnnnn");printf("t*A_AA A A A A A A A A A A A A A A A A A A A A A A AA_A*nn");printf("t* N AAAAAAAAAAAAAAAAAAAAAAAAAA 八*門門");void input() / 輸入成績int i,j,k;for(i=0;i<N;i+) / 初始化分數(shù)schi.total=0;schi.boytotal=0;schi.girltotal=0; for(k=0;k<bm+gm;k+)schi.matk.rank0=0;s
31、chi.matk.rank1=0;schi.matk.rank2=0;schi.matk.matchnum=k+1; printf("* 輸入成績 *n");printf("# 輸入說明: n");printf("1. 學校編號為 1-%d; 項目編號為 1-%d (1-%d 為男子項目 ,%d-%d為女子項目 ).n",N,bm+gm,bm,bm+1,bm+gm);printf("2.成績只能是'0'或'1'n('O'表示沒獲得該項目的該名次,'1'表示獲得了
32、該項目的該名次以'Tab'鍵前進。)n",N);for(i=0;i<N;i+)printf("* 請輸入學校編號 : ");loop3:scanf("%d",&schi.schoolnum);if(schi.schoolnum<0|schi.schoolnum>N)printf("輸入錯誤(只能是1-%d)請重新輸入:",N);goto loop3;printf(" 項目編號 ");for(k=0;k<bm+gm;k+)printf("%d &qu
33、ot;,schi.matk.matchnum); printf("n");for(j=0;j<3;j+)loop: printf(" 第(%d)名:",j+1);for(k=0;k<bm+gm;k+)scanf(" %d",&schi.matk.rankj);for(k=0;k<bm+gm;k+)if(schi.matk.rankj!=0&&schi.matk.rankj!=1)printf("輸入錯誤,請重新輸入,成績只能是'0'或'1'n"
34、;);goto loop;void totaljisuan()int i,k,b;for(i=0;i<N;i+)for(k=0,b=0;k<bm+gm;k+)b=schi.matk.rank0*5+schi.matk.rank1*3+schi.matk.r ank2*2;schi.total=schi.total+b;if(k<bm)schi.boytotal=schi.boytotal+b;if(k>=bm)schi.girltotal=schi.girltotal+b;系統(tǒng)目錄 *n"); / 目void mulu() printf("nn 錄p
35、rintf("tt*n");printf("tt* 1. printf("tt* 2. printf("tt* 3. printf("tt* 4. printf("tt* 5.統(tǒng)計各學??偡?*t n"); 按學校編號排序輸出*t n");按學校總分排序輸出*t n");按男團體總分排序輸出*t n");按女團體總分排序輸出*t n");printf("tt* 6.按學校編號查詢學校某個項目情況 *t n");printf("tt* 7.按項目編
36、號查詢?nèi)〉妹蔚膶W校 *t n");printf("tt* 0. 退出 *t n");printf("tt*n");void funct0() printf("ntt* printf("ntt* exit(0);/ 退出系統(tǒng)謝謝使用! *n");謝謝使用! *n");void funct1()/ 統(tǒng)計各學校總分int i,q;printf("* 統(tǒng)計各學??偡?*n");printf("* 學校編號 *tttt* 總分 *n");for(i=0;i<N;i+)
37、printf("t%dtttt%dn",schi.schoolnum,schi.total);printf("n");printf("n");printf("# 0:退出; 1:返回目錄。 n");printf("* 請選擇: ");loop2:scanf("%d",&q);if(q=0) funct0();if(q=1) xunhuan();elseprintf(" 輸入錯誤(只能是 0或 1),請重新輸入: "); goto loop2;voi
38、d funct2() / 按學校編號排序struct school sch1;int i,j,q;for(j=0;j<N-1;j+) for(i=0;i<N-j-1;i+)if(schi.schoolnum>schi+1.schoolnum)sch1=schi;schi=schi+1;schi+1=sch1;printf("*按學校編號排序 *n");printf("* 學校編號 *tttt*總分 *n");for(i=0;i<N;i+)printf("t%dtttt%dn",schi.schoolnum,sc
39、hi.total);printf("n");printf("n");printf("# 0:退出; 1:返回目錄。 n");printf("* 請選擇: ");loop2: scanf("%d",&q);if(q=0) funct0();if(q=1) xunhuan(); elseprintf(" 輸入錯誤(只能是 0 或 1),請重新輸入: "); goto loop2;void funct3() / 按學??偡峙判騭truct school sch1;int i
40、,j,q;for(j=0;j<N-1;j+)for(i=0;i<N-j-1;i+)if(schi.total<schi+1.total)sch1=schi; schi=schi+1; schi+1=sch1;printf("* 按學校總分排序 *n");printf("* 學校編號 *tttt*總分 *n");for(i=0;i<N;i+) printf("t%dtttt%dn",schi.schoolnum,schi.total);printf("n");printf("n&qu
41、ot;);printf("# 0 :退出; 1:返回目錄。 n"); printf("* 請選擇: ");loop2: scanf("%d",&q);if(q=0) funct0();if(q=1) xunhuan();elseprintf(" 輸入錯誤(只能是 0或 1),請重新輸入: "); goto loop2;void funct4() / 按男團體總分排序struct school sch1;int i,j,q;for(j=0;j<N-1;j+)for(i=0;i<N-j-1;i+)i
42、f(schi.boytotal<schi+1.boytotal)sch1=schi; schi=schi+1; schi+1=sch1; printf("* 按男團體總分排序 *n");printf(" * 學校編號 *tt* 總分 *n");for(i=0;i<N;i+)printf("t%dtttt%dn",schi.schoolnum,schi.boytotal);printf("n");printf("n");printf("# 0 :退出; 1:返回目錄。 n&q
43、uot;); printf("* 請選擇: ");loop2: scanf("%d",&q);if(q=0) funct0();if(q=1) xunhuan();elseprintf(" 輸入錯誤(只能是 0或1),請重新輸入: "); goto loop2;void funct5() / 按女團體總分排序struct school sch1;int i,j,q; for(j=0;j<N-1;j+) for(i=0;i<N-j-1;i+)if(schi.girltotal<schi+1.girltotal)
44、sch1=schi; schi=schi+1; schi+1=sch1; printf("* 按女團體總分排序 *n");printf(" * 學校編號 *tt* 總分 *n");for(i=0;i<N;i+)printf("t%dtttt%dn",schi.schoolnum,schi.girltotal);printf("n");printf("n");printf("# 0 :退出; 1:返回目錄。 n");printf("* 請選擇: ");
45、 loop2:scanf("%d",&q);if(q=0) funct0();if(q=1) xunhuan();elseprintf(" 輸入錯誤(只能是 0或1),請重新輸入: ");goto loop2;void funct6() / 按學校編號查詢學校某個項目情況int i,n,m,q;printf(" * 按學校編號查詢學校某個項目情況 *n"); loop1: printf("* 請輸入所要查詢的學校編號: ");scanf("%d",&n);if(n!=1&
46、&n!=2)printf("! 輸入錯誤,學校編號只能是 '0' 或'1' ,請重新輸入! ! n");goto loop1;printf("* 請輸入所要查詢的項目編號: "); scanf("%d",&m);for(i=0;i<N;i+)if(n=schi.schoolnum)printf(" 學校編號 : %d 項目編號: %dn",n,m); if(schi.matm.rank0=1)printf(" 第一名(獲得) ");if(schi.matm.rank1=1)printf(" 第二名(獲得) ");if(schi.matm.rank2=1)printf(" 第三名(獲得) ");elseprintf(" 本校該項目未進入前三名 ");printf("n");printf("n");n");printf("# 0 :退出; 1:返
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度建筑幕墻工程金屬幕墻清洗勞務分包合同樣本4篇
- 2025版智慧城市建設(shè)履約擔保合同模板4篇
- 2025年度二零二五年度木質(zhì)包裝材料銷售合同范本4篇
- 2025年度個人意外傷害保險借款合同范本3篇
- 2025版小程序功能開發(fā)授權(quán)合同模板3篇
- 2025年分期付款數(shù)碼產(chǎn)品購買合同
- 2025年機械設(shè)備加工合同
- 2025版外貿(mào)出口農(nóng)產(chǎn)品質(zhì)量安全合同3篇
- 2025年度環(huán)保認證木制品采購合同范本4篇
- 二零二五年度知識產(chǎn)權(quán)留置擔保協(xié)議書4篇
- 中國末端執(zhí)行器(靈巧手)行業(yè)市場發(fā)展態(tài)勢及前景戰(zhàn)略研判報告
- 北京離婚協(xié)議書(2篇)(2篇)
- 2025中國聯(lián)通北京市分公司春季校園招聘高頻重點提升(共500題)附帶答案詳解
- Samsung三星SMARTCAMERANX2000(20-50mm)中文說明書200
- 2024年藥品質(zhì)量信息管理制度(2篇)
- 2024年安徽省高考地理試卷真題(含答案逐題解析)
- 廣東省廣州市2024年中考數(shù)學真題試卷(含答案)
- 內(nèi)審檢查表完整版本
- 2024屆浙江寧波鎮(zhèn)海區(qū)中考生物全真模擬試題含解析
- 人教版八年級物理下冊 (功)教育教學課件
- 中藥的性能四氣五味課件
評論
0/150
提交評論