資源描述:
《c語言課程設(shè)計-學(xué)生成績管理系統(tǒng)(》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、題目:學(xué)生成績管理系統(tǒng)(1)一、課程設(shè)計時間20010~11第2學(xué)期第15周,共計1周,20學(xué)時。二、課程設(shè)計內(nèi)容用C語言編寫軟件完成以下任務(wù):1錄入學(xué)生數(shù)據(jù)信息(不用考慮學(xué)期),學(xué)生信息至少包括姓名、學(xué)號、數(shù)學(xué)成績?nèi)矫?學(xué)生信息應(yīng)及時保存在文件中;2根據(jù)學(xué)號查詢某生成績;3插入新的學(xué)生數(shù)據(jù)信息。4統(tǒng)計分析:要求能夠?qū)⒊煽兣判?,并統(tǒng)計及格人數(shù)及及格率。三、課程設(shè)計要求:1.程序質(zhì)量:l貫徹結(jié)構(gòu)化程序設(shè)計思想。l用戶界面友好,功能明確,操作方便;可以加以其它功能或修飾。l用戶界面中的菜單至少應(yīng)包括“錄入學(xué)生信息”、“查詢某學(xué)生
2、成績”、“插入新生信息”、“統(tǒng)計分析”、“退出”5項。l代碼應(yīng)適當(dāng)縮進,并給出必要的注釋,以增強程序的可讀性。2.課程設(shè)計說明書:課程結(jié)束后,上交課程設(shè)計說明書和源程序。課程設(shè)計說明書的格式和內(nèi)容參見提供的模板。四、指導(dǎo)教師和學(xué)生簽字指導(dǎo)教師:________學(xué)生簽名:________五、成績六、教師評語沈陽航空航天大學(xué)設(shè)計用紙目錄一、需求分析1二、設(shè)計分析2三、主要界面截圖3四、技術(shù)要點17五、個人總結(jié)20六、參考文獻20七、源程序2131沈陽航空航天大學(xué)設(shè)計用紙一、需求分析根據(jù)任務(wù)書給定的“課程設(shè)計內(nèi)容”和“課程設(shè)計要求”
3、作如下的需求分析。該系統(tǒng)是一個較典型的數(shù)據(jù)管理系統(tǒng),其使用者被假定為某辦公室的學(xué)生成績管理人員,系統(tǒng)應(yīng)該具有安全、穩(wěn)定、功能齊全的特點。1.安全性分析系統(tǒng)管理的數(shù)據(jù)涉及到學(xué)院的所有同學(xué),數(shù)據(jù)量較大且是一種基礎(chǔ)性數(shù)據(jù),能夠為其它方面的學(xué)生管理工作提供重要參考,所以要通過設(shè)置密碼等手段確保數(shù)據(jù)不能被隨意的刪減和修改。2.穩(wěn)定性分析指系統(tǒng)比較健壯,只要是用戶的合理操作,系統(tǒng)都應(yīng)給出合理正確的回應(yīng),而不是出現(xiàn)令用戶感到意外的系統(tǒng)錯誤或系統(tǒng)崩潰。3.主要功能分析(1)數(shù)據(jù)錄入:允許用戶輸入學(xué)號、姓名、數(shù)學(xué)成31沈陽航空航天大學(xué)設(shè)計用紙績
4、。對用戶由于疏忽錄入的非法數(shù)據(jù),能夠及時提示并更正。(2)數(shù)據(jù)保存:對于輸入的數(shù)據(jù),或被修改的數(shù)據(jù)應(yīng)該保存到某個磁盤文件中,實現(xiàn)永久存儲。文件的具體格式題目未作具體要求,所以可采用隨機文件,也可采用文本文件。不管采用哪種文件形式,文件中的數(shù)據(jù)應(yīng)有固定的格式,以便于程序自動讀取或人工閱讀。(3)數(shù)據(jù)查詢:用戶輸入查詢條件,系統(tǒng)規(guī)則地在界面顯示查詢結(jié)果,且顯示的數(shù)據(jù)盡量全面。當(dāng)輸入學(xué)號時,可查詢到該學(xué)生的學(xué)號、姓名、數(shù)學(xué)課程成績信息。(4)統(tǒng)計分析:將錄入學(xué)生成績排序,統(tǒng)計及格率,且使顯示盡量簡潔,操作盡量簡單。二、設(shè)計分析主要有
5、6個功能模塊,每個模塊對應(yīng)一個C語言自定義函數(shù)。這些函數(shù)原型及其功能簡述如下:錄入函數(shù)(newrecord),查詢函數(shù)(searchmenu),統(tǒng)計函數(shù)(listmenu),添加函數(shù)(addrecord31沈陽航空航天大學(xué)設(shè)計用紙),寫入函數(shù)(writetofile),以及顯示目錄的主函數(shù)(main)。解決本題首先要解決兩個問題:首先是錄入文件或者讀取文件,錄入相對,讀取文件這一步我是參照書上可用FILE*fp=fopen(),但是這一步又是非常麻煩,稍有不慎很可能就不能打開。其次,在讀取文件時要先做一個循環(huán),再構(gòu)造一個主菜單
6、的程序,即在用戶界面首頁輸出簡單的操作界面,為了能使用戶在使用更加明了方便,可再構(gòu)造子菜單。1、主函數(shù)流程voidmain(){readfromfile();while(1){mainmenu();}}圖2-1主函數(shù)流程圖31沈陽航空航天大學(xué)設(shè)計用紙2.主要功能菜單流程圖(1)主菜單流程voidmainmenu()//主菜單{charchoic;system("cls");printf("tt*******************主菜單********************");printf("tt*****
7、******1-錄入學(xué)生信息2-查詢學(xué)生信息************");printf("tt***********3-插入新生信息************");printf("tt***********4-統(tǒng)計分析************");printf("tt***********5-保存退出6-不保存退出***********");printf("tt************************************************");printf("tt請選擇:
8、");choic=getch();switch(choic){case'1':newrecord();break;case'2':searchmenu();break;case'3':addrecord();break;case'4':listmenu();break;cas