資源描述:
《學(xué)生考勤管理報(bào)告》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、個(gè)人收集整理勿做商業(yè)用途一.需求分析功能需求:1、錄入學(xué)生地缺勤記錄;2、修改某個(gè)學(xué)生地缺勤記錄;3、查詢某個(gè)學(xué)生地缺勤情況;4、統(tǒng)計(jì)某段時(shí)間內(nèi),缺勤學(xué)生學(xué)號(hào)及缺勤次數(shù),按缺勤權(quán)值統(tǒng)計(jì)學(xué)生地負(fù)分值,并能進(jìn)行排序;5、統(tǒng)計(jì)某段時(shí)間內(nèi),有學(xué)生曠課地課程及曠課人次,按曠課人次由多到少排序;?6、系統(tǒng)以菜單方式工作數(shù)據(jù)需求本系統(tǒng)主要涉及地?cái)?shù)據(jù)有學(xué)生缺課信息類和有關(guān)信息排序類.學(xué)生缺課信息包括缺課時(shí)間,學(xué)生姓名,課程名稱,第幾節(jié),學(xué)生遲到次數(shù),早退次數(shù),請(qǐng)假次數(shù),曠課次數(shù).有關(guān)信息排序類包括對(duì)課程排序和對(duì)姓名排序.文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí)性能需求要求系統(tǒng)具有可靠性,速度要快二、系統(tǒng)地主要功能(1
2、)、錄入學(xué)生地缺課記錄,函數(shù)代碼voidinput(records*r){}模塊中.首先提示用戶按照正確地格式進(jìn)行學(xué)生缺課記錄地錄入,這個(gè)步驟比較簡(jiǎn)單,只需要不斷地將記錄地每個(gè)數(shù)據(jù)項(xiàng)存入結(jié)構(gòu)體對(duì)應(yīng)地成員中.文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí)(2)、修改某個(gè)學(xué)生地缺課記錄,函數(shù)代碼voidedt(records*r){}模塊中.首先必須查找到你所需要修改地那位地學(xué)生全部缺課記錄.這個(gè)模塊不需要定義新地結(jié)構(gòu)體.在修改前當(dāng)然要檢查記錄是否為空了,不為空地話,可以設(shè)置下面這五個(gè)菜單供用戶選擇:1、缺課日期2、第幾節(jié)課3、課程名稱4、學(xué)生姓名5、缺課類型6、退出修改程序并返回系統(tǒng)主菜單.修改很簡(jiǎn)單,僅需要
3、對(duì)該學(xué)生地某個(gè)部分進(jìn)行替換即可.采用switch語(yǔ)句很快就解決.最后實(shí)現(xiàn)對(duì)所選記錄地修改,完成后更新原有地學(xué)生記錄.文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí)(3)、查詢某個(gè)學(xué)生地缺課情況,函數(shù)代碼voidsearch(records*r){}模塊中.達(dá)到查詢結(jié)果按照日期升序排序,同一天內(nèi)按照所缺課程地時(shí)間升序排序地目地,文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí)(4)、統(tǒng)計(jì),函數(shù)代碼為voidorder_c(){}和voidorder_s(){}地類模塊中.其中實(shí)現(xiàn)對(duì)課程排序和對(duì)學(xué)生姓名地排序.文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí)三、流程圖學(xué)生考勤系統(tǒng)結(jié)構(gòu)圖:基類地?cái)?shù)據(jù)成員和成員描述recordStringdate,c
4、name,sname;intcno,type;21/21個(gè)人收集整理勿做商業(yè)用途voidset();stringtostr();類名/函數(shù)名描述類名/函數(shù)名描述record基類edt()修改學(xué)生信息records實(shí)現(xiàn)學(xué)生曠課情況排序地類del()刪除學(xué)生信息wt/rd()實(shí)現(xiàn)對(duì)文件地輸入和輸出search()查找學(xué)生信息input()錄入學(xué)生地缺課記錄search_s()一定范圍查找學(xué)生信息edt()修改學(xué)生信息main()主函數(shù)四、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)此程序運(yùn)用多種條件語(yǔ)句,主體采用地是動(dòng)態(tài)數(shù)組、指針.系統(tǒng)地設(shè)計(jì)采用了數(shù)組語(yǔ)句、選擇語(yǔ)句和循環(huán)語(yǔ)句,在需要處理大量同類數(shù)據(jù)時(shí),這樣就使程序書寫更加簡(jiǎn)潔
5、.程序使用了布爾函數(shù).選擇語(yǔ)句多采用if多分支選擇結(jié)構(gòu)與switch語(yǔ)句.首先計(jì)算switch表達(dá)式,然后在caes子句中尋找值相等地常量表達(dá)式,并以此為入口符號(hào),由此開始順序執(zhí)行.循環(huán)語(yǔ)句采用了for語(yǔ)句等、do-while語(yǔ)句,for語(yǔ)句用于已知循環(huán)次數(shù)地循環(huán)結(jié)構(gòu),括號(hào)中地三個(gè)量分別用來(lái)表示循環(huán)變量初值、循環(huán)終值和循環(huán)增量.do-while語(yǔ)句先循環(huán)后判斷,Break語(yǔ)句在switch語(yǔ)句中,保證多分支情況地正確執(zhí)行,在循環(huán)語(yǔ)句中,強(qiáng)制終止本層循環(huán).保存和讀取函數(shù)是典型地函數(shù)功能,一個(gè)程序是由若干個(gè)函數(shù)組成地,保存和讀取函數(shù)是和其他函數(shù)互相調(diào)用地文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí)再有使用有關(guān)
6、類地設(shè)計(jì),學(xué)生缺課信息類和有關(guān)信息排序類,如下:classrecord//學(xué)生缺課信息類{public:voidset(stringd,intcno,stringc,strings,inttype)文檔收集自網(wǎng)絡(luò),僅用于個(gè)人學(xué)習(xí){date.assign(d);//日期cname.assign(c);//課程名字sname.assign(s);//學(xué)生姓名this->cno=cno;//對(duì)缺課類型地選擇為int型this->type=type;//缺課類型}voidset(recordre){date.assign(re.date);cname.assign(re.cname);sname.a
7、ssign(re.sname);this->cno=re.cno;this->type=re.type;}21/21個(gè)人收集整理勿做商業(yè)用途stringdate,cname,sname;intcno,type;};classrecords//實(shí)現(xiàn)學(xué)生曠課情況排序地類{public:records()//構(gòu)造函數(shù){r=newrecord[100];n=0;}voidorder_s()//姓名地排序{inti;i