數(shù)據(jù)結(jié)構(gòu)--學(xué)生成績管理系統(tǒng)_第1頁
數(shù)據(jù)結(jié)構(gòu)--學(xué)生成績管理系統(tǒng)_第2頁
數(shù)據(jù)結(jié)構(gòu)--學(xué)生成績管理系統(tǒng)_第3頁
數(shù)據(jù)結(jié)構(gòu)--學(xué)生成績管理系統(tǒng)_第4頁
數(shù)據(jù)結(jié)構(gòu)--學(xué)生成績管理系統(tǒng)_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

課程設(shè)計課程名稱_ _ _ _數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)標題名_學(xué)生成績管理系統(tǒng)學(xué)生學(xué)院_專業(yè)班學(xué)號_學(xué)生名指導(dǎo)老師_ _ _ _ _ _ _ _ _目錄1系統(tǒng)分析11.1系統(tǒng)配置文件11.2系統(tǒng)功能需求分析11.3數(shù)據(jù)分析12系統(tǒng)設(shè)計22.1總體設(shè)計22.2詳細設(shè)計32.2.1接口設(shè)計32.2.2各功能模塊的設(shè)計32.2.2系統(tǒng)代碼設(shè)計83.1預(yù)處理指令和結(jié)構(gòu)類型聲明83.2 main函數(shù)83.3程序代碼95總結(jié)37361系統(tǒng)分析1.1系統(tǒng)配置文件1、操作畫面美麗、友好、必要的容錯處理(例如,僅由學(xué)號的位數(shù)和09的數(shù)字構(gòu)成,能夠判定合理的成績的0100等)。2、查詢應(yīng)根據(jù)查詢條件合理選擇先進的查詢方法3 .排序算法要求通過迭代來實現(xiàn)4、分級統(tǒng)計結(jié)果要求保存在不同的文件中1.2系統(tǒng)功能的需求分析此系統(tǒng)需要以下功能1 .提供認證并使用系統(tǒng)權(quán)限設(shè)置判定。2、(教師用戶)本班同學(xué)各學(xué)期各科目成績的輸入編輯可以實現(xiàn),為了重用數(shù)據(jù)必須保存在文件中。3、(學(xué)生用戶)查詢學(xué)校號碼、名字、各學(xué)科的成績。4、(學(xué)生和教師用戶)各學(xué)期,可以按各學(xué)科的分數(shù)對輸出進行排序(各科可以對輸出進行排序)。5、(教師用戶)能夠統(tǒng)計并輸出各科室成績分級的分布(60以下、6070、7080、8090、90100 )。1.3數(shù)據(jù)分析1.3.1 .問題分析和任務(wù)定義:根據(jù)設(shè)計主題的要求,充分分析和理解問題,明確問題要求,做什么? (不是怎么辦) )限制條件是什么?1.3.2 .邏輯設(shè)計:為與問題描述相關(guān)的操作對象定義適當?shù)臄?shù)據(jù)類型,按照以數(shù)據(jù)結(jié)構(gòu)為中心的原則分割模塊,定義主程序模塊和各抽象數(shù)據(jù)類型。 邏輯設(shè)計的結(jié)果應(yīng)該是各抽象數(shù)據(jù)類型的定義(包括數(shù)據(jù)結(jié)構(gòu)的描述和各基本操作的功能說明),寫出各主要模塊的算法,描繪模塊之間的調(diào)用關(guān)系圖1.3.3 .詳細設(shè)計:定義適當?shù)拇鎯Y(jié)構(gòu),編寫各函數(shù)的偽代碼算法。 在此過程中,綜合考慮系統(tǒng)的功能,系統(tǒng)結(jié)構(gòu)清晰、合理、簡單、調(diào)試容易,抽象數(shù)據(jù)類型的實現(xiàn)盡可能實現(xiàn)數(shù)據(jù)封裝,基本操作規(guī)范說明盡可能具體。 詳細的設(shè)計結(jié)果是進一步精簡了數(shù)據(jù)結(jié)構(gòu)和基本操作,導(dǎo)出數(shù)據(jù)存儲結(jié)構(gòu)的類型定義,導(dǎo)出函數(shù)形式的算法框架1.3.4 .程序代碼:進一步精煉詳細設(shè)計結(jié)果設(shè)計編程語言程序。 添加一些評論和斷言,闡明過程中的邏輯概念1.3.5 .程序調(diào)試和測試:自底向上、按模塊進行,即調(diào)試低級函數(shù)。 熟練使用調(diào)試工具的各種功能,設(shè)計測試數(shù)據(jù),確定疑問點,通過修改程序可以證明或繞過它。 調(diào)試準確后,認真組織源程序及其注釋,形成形式和風(fēng)格良好的源程序列表和結(jié)果2系統(tǒng)設(shè)計2.1整體設(shè)計根據(jù)系統(tǒng)分析的功能要求,將系統(tǒng)分為以下主要功能模塊1-學(xué)生記錄輸入2-學(xué)生成績查詢:按學(xué)號查詢,按姓名查詢3-刪除記錄4-排序5-修改數(shù)據(jù)6-顯示所有學(xué)生的記錄7-統(tǒng)計8-交換用戶9-保存記錄0-退出系統(tǒng)2.2詳細設(shè)計2.2.1接口設(shè)計1 .菜單設(shè)計菜單主要采用學(xué)生的成績輸入、成績查詢、成績排名、用戶交換設(shè)計時主要采用switch-case的結(jié)構(gòu),選擇適當?shù)暮瘮?shù)進行調(diào)用。 子菜單也是利用這個原理設(shè)計的2 .信息顯示接口的設(shè)計信息顯示主要有for (; 循環(huán),輸出信息,設(shè)定輸出格式。 運行時應(yīng)如下:2.2.2各功能模塊的設(shè)計主函數(shù)的主要作用是控制調(diào)用其他函數(shù)的協(xié)作。 流程圖如下所示查詢窗口排序窗口按總分排序修改窗口刪除窗口統(tǒng)計窗口統(tǒng)計結(jié)果2.2.2系統(tǒng)代碼設(shè)計3.1預(yù)處理指令和結(jié)構(gòu)類型的宣言#includestdio.h #includestdlib.h #includestring.h #includewindows.h #define M 1003.2 main函數(shù)void main ()裝模作樣welcome ();IO_ReadInfo ()Login ();以下稱為3.3程序代碼#includestdio.h #includestdlib.h #includestring.h #includewindows.h #define M 100void Login ();/*學(xué)生結(jié)構(gòu)*/typedef struct stuchar StuID12;char StudName12;float Score5;浮點視頻;浮動索引;int tag;Stud;Stud studM;int num=0;/*總分*/浮動索引(studies )裝模作樣int j;浮點sum=0;for(j=0; j5; j )裝模作樣sum=stud.Scorej;以下稱為return sum;以下稱為/*數(shù)組的下標*/int student _ searchbyindex (charid )裝模作樣int i;for (i=0; i*/int student _ search by name (charname )裝模作樣int i;for (i=0; i*/intconflictid(student,int n,char ID )裝模作樣int i;for(i=0; i*/void student _ display single (intindex )裝模作樣printf (n *卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡653printf(tt名稱: %st學(xué)習(xí)編號: % s ,studindex.StudName,studindex.StuID;printf(ntt計算機操作系統(tǒng): %.2f ,(studindex)-Score0 )printf(ntt大學(xué)英語: %.2f ,(studindex)-Score1 )printf(ntt基礎(chǔ)會計: %.2f ,(studindex)-Score2 )printf(ntt數(shù)據(jù)結(jié)構(gòu): %.2f ,(studindex)-Score3 )printf(nttJava語言設(shè)計: %.2f ,(studindex)-Score4 )printf(ntt總計: %.2f ,(studindex)-Sum )printf(ntt平均分數(shù): %.2fnnn ,(studindex)-Av;以下稱為/*查看學(xué)生信息*/void Student_Display ()裝模作樣int i;printf (n %-4 s % st %-8 s %-10 s %-10 s %-10 s %-9 sn ,編號,學(xué)校編號,名稱,操作系統(tǒng),大學(xué)英語,會計基礎(chǔ),數(shù)據(jù)結(jié)構(gòu), Java設(shè)計,總計;printf (-n );for(i=0; ist uid (stud I )-stud name (stud I )-score 0,(studi)-Score1,(studi)-Score2,(studi)-Score3,(studi)-Score4,(studi)-Sum );printf (-n );以下稱為以下稱為/*插入學(xué)生信息*/void Student_Insert ()裝模作樣char c;printf(n );printf(nnn );while(1)裝模作樣printf (學(xué)校編號: );scanf(%s”,studnum.StuID;while(ConflictID(stud,num,studnum.StuID ) )裝模作樣getchar ();printf (學(xué)號已經(jīng)存在2n學(xué)號: );scanf(%s”,studnum.StuID;getchar ();printf (學(xué)生姓名: );scanf(%s”,studnum.StudName )getchar ();printf (計算機操作系統(tǒng)成績0100: );scanf(%f”,studnum.Score0 )while (stud num .score 0 100| stud num .score 00)裝模作樣getchar ();printf (輸入錯誤2計算機操作系統(tǒng)成績0100: );scanf(%f”,studnum.Score0 )以下稱為getchar ();printf (大學(xué)英語成績0100: );scanf(%f”,studnum.Score1 )while (stud num .score 1 100| stud num .score 10)裝模作樣getchar ();printf (輸入錯誤2大學(xué)英語成績0100: );scanf(%f”,studnum.Score1 )以下稱為getchar ();printf (基礎(chǔ)會計成績0100: );scanf(%f”,studnum.Score2 )while (stud num .score 2 100| st

溫馨提示

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

評論

0/150

提交評論