學(xué)生考勤系統(tǒng)_第1頁(yè)
學(xué)生考勤系統(tǒng)_第2頁(yè)
學(xué)生考勤系統(tǒng)_第3頁(yè)
已閱讀5頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、目錄一、系統(tǒng)開(kāi)發(fā)背景 1二、系統(tǒng)分析與設(shè)計(jì) 1(一)系統(tǒng)功能要求 1(二)系統(tǒng)模塊結(jié)構(gòu)設(shè)計(jì) 2三、系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 3(一)創(chuàng)建學(xué)生缺課記錄 3(二)修改學(xué)生缺課記錄: 4(三)查詢學(xué)生缺課記錄 6(四)統(tǒng)計(jì)學(xué)生缺課記錄: 10四、系統(tǒng)測(cè)試 15( 一 )main 函數(shù) 15( 二 )creat 函數(shù) 15( 三 )xiugai 函數(shù) 15(四)chaxun、stringfacl 、stringfac2 、intfac 函數(shù) 16(五) tongji 、tongjifacl、tongjifac2 、tongjilprintf、tongji2printf函數(shù) 17五、總結(jié) 18六、附件 191.

2、實(shí)驗(yàn)截圖 192. 程序源代碼 27學(xué)生考勤系統(tǒng)一、系統(tǒng)開(kāi)發(fā)背景程序?qū)嵺`是是重要教學(xué)環(huán)節(jié)之一。 通過(guò)程序?qū)嵺`, 強(qiáng)化計(jì)算機(jī)應(yīng) 用技能,從而鞏固和充實(shí)所學(xué)的理論知識(shí),加深對(duì)相關(guān)內(nèi)容的理解, 拓寬知識(shí)面,培養(yǎng)的創(chuàng)新精神和實(shí)踐能力。學(xué)生考勤管理程序是學(xué)校管理工作中一個(gè)比較重要的任務(wù), 過(guò)多 的學(xué)生考勤工作給學(xué)校管理人員帶來(lái)了很大麻煩的。 雖然原始的記錄 方法在一定的程度上可以解決問(wèn)題, 可是現(xiàn)在計(jì)算機(jī)已經(jīng)走到了我們 的生活,原始的記錄方法的不足之處就顯而易見(jiàn)了。 學(xué)生考勤管理程 序,是一個(gè)對(duì)于學(xué)生考勤的管理系統(tǒng), 不僅大大減少了考勤管理人員 的工作量,而且還方便了班級(jí)和學(xué)校對(duì)學(xué)生出課率的查詢, 只要

3、通 計(jì)算機(jī)登入本系統(tǒng)就能及時(shí)修改、 更正學(xué)生的考勤信息, 使信息真實(shí)、 有效。這樣節(jié)省了大量人力、物力和財(cái)力。節(jié)省了寶貴的時(shí)間,大大 提高了工作效率。用 C 語(yǔ)言進(jìn)行了該系統(tǒng)的編寫(xiě),可移植性高。操作 上力爭(zhēng)實(shí)現(xiàn)人性化、合理化,滿足學(xué)校、老師及非計(jì)算機(jī)管理人員的 使用和查看。二、系統(tǒng)分析與設(shè)計(jì)(一)系統(tǒng)功能要求設(shè)計(jì)一學(xué)生考勤系統(tǒng)。 考勤信息記錄了學(xué)生的缺課情況, 它包括:缺課日期、第幾節(jié)課、課程名稱、學(xué)生姓名、學(xué)生學(xué)號(hào)、缺課類型(遲 到、早退、請(qǐng)假及曠課)。系統(tǒng)具有以下功能:1、錄入學(xué)生的缺課記錄;2、修改某個(gè)學(xué)生的缺課記錄;3、查詢某個(gè)學(xué)生的缺課情況;4、統(tǒng)計(jì)某段時(shí)間內(nèi),曠課學(xué)生姓名及曠課次數(shù)

4、,按曠課次數(shù)由 多到少排序;5、統(tǒng)計(jì)某段時(shí)間內(nèi),有學(xué)生曠課的課程及曠課人次,按曠課人 次由多到少排序;6、系統(tǒng)以菜單方式工作。(二)系統(tǒng)模塊結(jié)構(gòu)設(shè)計(jì)通過(guò)對(duì)系統(tǒng)功能的分析,學(xué)生綜合測(cè)評(píng)系統(tǒng)功能如圖1 :統(tǒng)一考勤系統(tǒng)創(chuàng)建學(xué)生缺課記錄修改學(xué)生缺課記錄查詢學(xué)生缺課記錄統(tǒng)計(jì)學(xué)生缺課記錄圖1考勤系統(tǒng)功能圖通過(guò)上圖的功能分析,把整個(gè)系統(tǒng)劃分為 4個(gè)模塊:1、創(chuàng)建學(xué)生缺課記錄,該模塊主要實(shí)現(xiàn):學(xué)生基本信息(學(xué)號(hào)、姓名、課程名稱、上課時(shí)間、缺課日期、遲到次數(shù)、早退次數(shù)、請(qǐng)假 次數(shù)、曠課次數(shù))錄入,借助 creat()函數(shù)實(shí)現(xiàn)。2修改學(xué)生缺課記錄,該模塊主要實(shí)現(xiàn):學(xué)生缺課信息(包括: 姓名、課程名稱、上課時(shí)間、缺

5、課日期、遲到次數(shù)、早退次數(shù)、請(qǐng)假 次數(shù)、曠課次數(shù))的修改,借助 xiugai() 函數(shù)實(shí)現(xiàn)。3. 查詢學(xué)生缺課記錄,該模塊主要實(shí)現(xiàn):學(xué)生缺課信息的查詢(包 括:按學(xué)號(hào)查詢、按姓名查詢、按課程名稱查詢) ,借助 chaxun() , stringfac1() ,stringfac2() , intfac() 函數(shù)實(shí)現(xiàn)。4. 統(tǒng)計(jì)學(xué)生缺課記錄,該模塊主要實(shí)現(xiàn)以下功能:(1) 統(tǒng)計(jì)某段時(shí)間內(nèi),曠課學(xué)生姓名及曠課次數(shù)。(2) 統(tǒng)計(jì)某段時(shí)間內(nèi),有學(xué)生曠課的課程及曠課人次。 借助 tongji() ,tongjifac1() ,tongjifac2() , tongji1printf() , tongji

6、2printf() 函數(shù)實(shí)現(xiàn)。三、系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(一)創(chuàng)建學(xué)生缺課記錄分析:首先輸入需要?jiǎng)?chuàng)建缺課信息的總學(xué)生人數(shù), 然后參照樣例輸入缺課學(xué)生的信息,通過(guò) creat() 函數(shù)實(shí)現(xiàn)。流程圖如圖 2 :圖2 creat() 模塊流程圖(二)修改學(xué)生缺課記錄:分析:通過(guò)學(xué)號(hào)檢測(cè)找到相應(yīng)信息,再進(jìn)行單項(xiàng)修改。如圖sea nf(%d,&n um);開(kāi)始NNin;YYnum輸入信息錯(cuò)誤Y輸岀菜單breakNYK=2breakYK=3breakNYK=4sea nf stui.timebreakYbreakK=5NYK=6breakNK=7breakYK=8break退出菜單結(jié)束輸岀修改 后的信息輸入需耍修

7、改 信息的學(xué)號(hào)輸出該生信息scanf菜單選項(xiàng)sca nf stui. nameK!=9sca nf stui.less on _timesca nfstui.kua ngke_ numsca nf stui .l ess on_n amesca nf stui.zaotui_ nums tui.timesca nf stui.chidao_ num stui.timeNsca nf stui.q in gjia_ num圖3 xiugai()模塊流程圖(三) 查詢學(xué)生缺課記錄該模塊分別由 chaxun()、stringfac1()、stringfac2()、intfac()四個(gè)函數(shù)實(shí)現(xiàn)。其中:

8、chaxun()函數(shù)實(shí)現(xiàn)查詢菜單的輸出,調(diào)用與菜單相對(duì)應(yīng)的功能子 模塊。intfac()、stringfac1()、stringfac2()函數(shù)分別實(shí)現(xiàn)按學(xué)生學(xué) 號(hào)、姓名查詢、按課程名稱查詢功能。(1) chaxun()函數(shù)流程圖如圖4 :開(kāi)始輸出菜單scanf kK=1K=2printf請(qǐng)輸入_7學(xué)生學(xué)號(hào)in tfac()fbreak話printf請(qǐng)輸入/學(xué)生姓名stri ngfac1(break7breakV K=3二芝p課程常i湎gfac2(TY.k!=4,二 YN結(jié)束(2) intfac()函數(shù)流程圖如圖5 :幵始sca nf numi=1 &i=5i52退出系統(tǒng)選項(xiàng)i=5i!=5測(cè)試

9、用例:(i=1,i=4),(符合條件);(i=6),(無(wú)效輸入);(i=5),(符合條件);(二)creat 函數(shù)通過(guò)輸出檢測(cè)賦值是否正確(三) xiugai函數(shù)通過(guò)輸入正確和非正確的菜單選項(xiàng)測(cè)試xiugai()函數(shù)中的修改功能、錯(cuò)誤輸入下菜單的循環(huán)、以及退出修改菜單表格2修改信息功能等價(jià)類劃分輸入條件有效等價(jià)類無(wú)效等價(jià)類修改信息功能i=1 &i=1 &k=8i n k8測(cè)試用例:(i=1,k=3),(符合條件);(i=0),(無(wú)效輸入);(四) chaxun、stringfacl 、stringfac2、intfac 函數(shù)通過(guò)輸入正確和非正確的菜單選項(xiàng)測(cè)試chaxun()函數(shù)中的函數(shù)調(diào)用、錯(cuò)

10、誤輸入下菜單的循環(huán)、以及退出修改菜單;通過(guò)檢測(cè)輸出信息判定 string1()、string2()、intfac()函數(shù)是否執(zhí)行。表格3查詢信息模塊等價(jià)類劃分輸入條件有效等價(jià)類無(wú)效等價(jià)類1.查詢菜單選項(xiàng)i=1 &i=4i42.stri ng1()i=0&in|功能strcmp(str in g,stui. name)=0strcmp(stri ng,stui. name)!=03.stri ng2()i=0&in|功能strcmp(stri ng,strcmp(stri ng,stui.less on_n ame)=0stui.less on_n ame)!=04.i ntfac()i=0&i

11、n|功能num=stui. numnum 匸stui. num測(cè)試用例:1. (i=2),(符合條件);(i=6),(無(wú)效輸入);2. (i=2, strcmp(string,)=O),(符合條件);(i=2, strcmp(string,)!=0),(無(wú)效輸入);3. (i=3, strcmp(string, stui.lesson_name)=q,(符合條件);(i=3, strcmp(string, stui.lesson_name)!=C),(無(wú)效輸入);4. (i=1, num=stui.num ),(符合條件);(i=1, num!=stui.n

12、um),(無(wú)效輸入);(五) tongji 、tongjifac1 、tongjifac2 、tongji1printf ton gji2pri ntf函數(shù)通過(guò)輸入正確和非正確的菜單選項(xiàng)測(cè)試統(tǒng)計(jì)()函數(shù)中的函數(shù)調(diào)用、錯(cuò)誤輸入下菜單的循環(huán)、以及退出修改菜單;通過(guò)檢測(cè) tongji1printf、tongji2printf函數(shù)輸出信息反向判定 tongjifac1 、ton gjifac2函數(shù)是否執(zhí)行。表格4 ton gji()函數(shù)功能等價(jià)類劃分輸入條件有效等價(jià)類無(wú)效等價(jià)類ton gji()函數(shù)功能i=1 &i=3i=3tongji()函數(shù)測(cè)試用例:(i=1),(符合條件);(i=6),(無(wú)效輸入

13、);tongjifac1、 tongjifac2、 tongji1printf、 tongji2printf函 數(shù)測(cè)試用例:輸入:1.1 顧紫航 體育 三、四節(jié) 7.01 0 0 0 21.2 陳興旭 高數(shù) 一、三、五節(jié) 7.05 1 1 0 11.3 范志奇 體育 五、六節(jié) 7.15 0 0 0 21.4 王志強(qiáng) 高級(jí)程序語(yǔ)言設(shè)計(jì) 一、二節(jié) 7.09 2 0 0 01.5 徐鵬程 高級(jí)程序語(yǔ)言設(shè)計(jì) 三、四、五節(jié) 7.20 0 0 0 3 輸出結(jié)果與預(yù)期一致。五、總結(jié)課程設(shè)計(jì)題目所要求的功能:錄入、修改、查詢、統(tǒng)計(jì)學(xué)生的缺 課記錄等功能已經(jīng)實(shí)現(xiàn)。整個(gè)系統(tǒng)的設(shè)計(jì)過(guò)程對(duì)于我來(lái)說(shuō)算是個(gè)學(xué)習(xí)、探索的過(guò)

14、程,通過(guò) 實(shí)踐和對(duì)比別人開(kāi)發(fā)程序的過(guò)程。在整個(gè)設(shè)計(jì)過(guò)程中,出現(xiàn)過(guò)很多的 問(wèn)題,很多繁瑣的東西都需要反復(fù)的修改, 主要是前期對(duì)程序設(shè)計(jì)規(guī) 劃不夠徹底,對(duì)系統(tǒng)的需求分析的要求認(rèn)識(shí)不夠清楚,使得在后邊的 工作中不得不經(jīng)常反復(fù)去修改 。本次課程設(shè)計(jì)使我體會(huì)到設(shè)置中每一 步的重要性。所以在分析一個(gè)問(wèn)題時(shí),我們需要站在一個(gè)有遠(yuǎn)見(jiàn)的高 度。通過(guò)此次課程設(shè)計(jì),我不但對(duì)C語(yǔ)言編程有了更深刻的認(rèn)識(shí),積 累了使用軟件工程的思想來(lái)開(kāi)發(fā)軟件的經(jīng)驗(yàn) ,更重要的是學(xué)會(huì)了在對(duì) 待問(wèn)題時(shí)應(yīng)該考慮到哪些方面的問(wèn)題和怎么解決問(wèn)題。雖然時(shí)間緊迫但我學(xué)會(huì)了很多,也感到自身知識(shí)的貧乏,希望在 日后的努力中能做出更完善的系統(tǒng)六、附件1.

15、實(shí)驗(yàn)截圖歡迎使用統(tǒng)一考勤管理系統(tǒng)溫馨提示;本程序主要實(shí)現(xiàn)對(duì)輸入學(xué)生缺課信息的修改、查詢、統(tǒng)計(jì)尊切能。址冋組數(shù)扌居之 間請(qǐng)用空格鍵間隔,不同組數(shù)據(jù)之間請(qǐng)用回車(chē)鍵間隔。士若需記錄年你 則日期元素之間不 H 分隔。*昔誤的輸入可自繪導(dǎo)致程序無(wú)限循環(huán)運(yùn)行.請(qǐng)關(guān)閉窗口并重新運(yùn)行程序。丄.創(chuàng)建學(xué)生缺課記錄 暮修改學(xué)生缺課記錄3 查io學(xué)生缺課記錄 銳統(tǒng)tt學(xué)生缺課記錄 廠退出統(tǒng)一考勒管理系統(tǒng)圖13主菜單丄創(chuàng)建學(xué)生缺課記錄宜修改學(xué)生缺課記錄扎查詢學(xué)生缺課記錄4 統(tǒng)i忡生缺課記錄5 退岀牯考勤管琨系統(tǒng)X XX x*其 X 耳 X理其其 其托 X 其 其 龔具 X 科耳芹 X 其 其輪 X KXHXXM*|!i

16、萍011 :M X1b輸入需要?jiǎng)?chuàng)建缺課信息的總學(xué)生數(shù)*圖14正確菜單選擇 漢慘改學(xué)生總課記錄査詢學(xué)生缺課記錄禮統(tǒng)訃學(xué)生缺課i耳 廠很出統(tǒng)一老勒管理系統(tǒng)請(qǐng)選畢統(tǒng)計(jì)頂目統(tǒng)計(jì)某段時(shí)間內(nèi)*曠課宇生妊名及曠課慣數(shù)匚 誤統(tǒng)計(jì)某段時(shí)間為,有學(xué)主曠課的課程及曠課人詼。 禮退岀統(tǒng)計(jì)菜單圖15正確菜單選擇至該菜單選項(xiàng),情重新選擇。圖16錯(cuò)誤菜單選擇丄-創(chuàng)建學(xué)生駐課記錄z-修改學(xué)生謎課記錄氛查詢學(xué)生讎課記錄4.統(tǒng)計(jì)學(xué)生讎課記錄5 退岀統(tǒng)一考勤管理系統(tǒng)XllMilWifllHIIKIIHIIillfillflHfMitllXlIHIIJIIIMifMIfliKIIKIliillMMWiflliniKlimiJillM

17、ilMifllilllitlllilltillMilMifllitlimiiilltillMMPress Anu keu to cont inue圖17退出系統(tǒng)選項(xiàng)請(qǐng)卷6第申同學(xué)信皂1陳興旭體肓二、三節(jié)?-23 12 5 4+4r+ + + + + +4r + + + + + + + + Hb4h+-i- + -llr-i + + +-|-+-HI-4r + -fr 4-* + + 4-+4r + 4rFHH- + +HHrHUr-Hr+ -ll- + + + + -|-THr+4r + -B第1位同學(xué)信鼠為r學(xué)號(hào)姓寺謹(jǐn)程名稱1 陳累旭Aw上課時(shí)間缺課日期二、三節(jié)7.23遲到諛數(shù)早退次數(shù)請(qǐng)假次

18、數(shù)曠課次數(shù)1254圖18創(chuàng)建缺課信息請(qǐng)輸入第3位同學(xué)信息;全志強(qiáng)高等數(shù)學(xué)一、二節(jié)6.12 1 0 0 0第3應(yīng)同學(xué)信息為譽(yù)餐強(qiáng)腳上課時(shí)間一、T缺課日期6.12遲到次數(shù)1早退次數(shù)請(qǐng)假次數(shù)曠課次數(shù)0圖19創(chuàng)建缺課信息創(chuàng)建學(xué)生魏課ias氛修改學(xué)生缺課i垠趴葩學(xué)生魏課記錄乳統(tǒng)計(jì)學(xué)生缺課記錄E退出統(tǒng)一老勒管理系統(tǒng)質(zhì):M賈胃覽胄豪貝弭貝餐貝疋翅理K JI貝梵麴光貝iM員兀H H蓋豪貝梵鼻疋.%豐瑪:胃光梵貝餐胃光14耳8HJt :胃梵貝X貝桂幅耳SO: Ji XJtWW.iH 鼻廉2青輸入需要修改信息的學(xué)號(hào)1*+*#+*打選:圣需要修改的頂目學(xué)生姓名漢課程名稱乳上課時(shí)間4-缺課日期遲到次數(shù)早退次數(shù)圖20修

19、改菜單選項(xiàng)請(qǐng)輸入需要修改信息的學(xué)號(hào) Q輸入信息有誤圖21修改功能測(cè)試創(chuàng)建學(xué)生鏈課記錄 趴修改學(xué)生缺課記錄 火查詢學(xué)生鉛課記錄 4 統(tǒng)計(jì)學(xué)生缺課i民5退出統(tǒng)一韋勤管理系統(tǒng)LRl IR M M iMJ MiM IM IM IR M 鼻 H 鼻 iMl Hl 12k輸入需耍修收信息的學(xué)號(hào)iLa_ -M. -L. .J.ilL. _L JI.4亠_|u亠亠厶亠厶亠亠JL | i- l_ JL亠JL亠-Hi-亠JB.亠亠_L JL 亠_L亠亠亠L(fēng)._il_ A,4 亠 JLL JL. J. JL _L _li_亠 JL J.亠 J_Tir iir tnr r t Tir ir t -thi1呂蘭*的肯見(jiàn)

20、齒:T T T T T T T T t T 亍 T T Fr T t T T Tr T1 T T T T T T T T T T T T f nr T TT T T T T P T T T T T Hr T T T TT T T Tr蠶旭上課時(shí)間 二、T缺課日期7.S3遲到牧.數(shù)早退次數(shù)請(qǐng)假枚數(shù)1251 m_a_ * a- -UL.丄- jl _ _JL JL-JL Jl J- -_a_ _曠課次數(shù)4L 亠”鼻 _|k _L.凰_L_L JL _LJL,鼻 _|L.縣 JL. _L JL.亠.JL -LJj, _|L.凰_L JH_ _L _|L 亠亠.亠|T r TT T TT T T TT

21、T 1-! TI r TT T HT H石選擇需要修改的頌?zāi)?;r TT ilT T T T T T T TT T 3 rFr TT T T T IT T Tr TT T T T T T T T T T! T T T TTTTTTTTT TT T T T T IT T T T T1 學(xué)生姓名2課程名稱3 上課時(shí)間壯缺誤日期5 遲到次數(shù)氣早退次數(shù)仇請(qǐng)假次數(shù)3趴曠課燭9 .退出圖22修改功能測(cè)試1號(hào)學(xué)生的信息為學(xué)號(hào)1-課時(shí)間HI T課程名稱缺課H期7.23早退次數(shù)請(qǐng)假拡數(shù)曠課次數(shù)25A情選翠需要修改的頂目:學(xué)生姓名洪課程名稱3 上課時(shí)間4缺課日期遲到枕數(shù)6 早退次數(shù)廠請(qǐng)假次數(shù)趴曠課次數(shù)夕“退出八節(jié)請(qǐng)

22、輸入修改信息:匕改后的信息為:卜號(hào)學(xué)生的信息為; r籲旭上課時(shí)觀遲到蛙數(shù)1課程名稱 體育缺課日期7.23早退次數(shù)請(qǐng)假枚數(shù)曠諜次數(shù)254圖23修改功能測(cè)試清選擇覺(jué)詢項(xiàng)巨丄-披學(xué)號(hào)查詢2 按姓名查適丸按諜程名査詢4 退出査詢菜單霍)CXKKX XX HKJCIOCMJCXX KK KWM:* HlOCltfKlCX KJE KWJCKlOtlC JCKKK XX KK JClCKlt JCKJCKXKWTJOCK JtJCKKlCMr2青輸入學(xué)生姓窖:圖24查詢菜單選項(xiàng)請(qǐng)選a查詢項(xiàng)目按學(xué)號(hào)查詢 漢按姓名查恂=按課程名查詢4-退出魚(yú)詢菜單氏此菜單選項(xiàng),請(qǐng)重新輸入圖25查詢菜單選項(xiàng)請(qǐng)輸入學(xué)生姓容:陸興

23、旭* -r-T-m-r -r-1- -n- -+ -r-i- -r-r-n-n-i-n- -n-n- -ih,號(hào)學(xué)生的信息対譽(yù)蠶旭醤名稱上課時(shí)間缺課日期一、二節(jié)6.11遲到諛數(shù)早退次數(shù)請(qǐng)假次數(shù)曠課次數(shù)S0Q1+ + + + + + + + + + + + + + * + + + #+ + + + + + + + + + + + + + *+ + + + #! xiMXJtie memmmtnije!ixjtjtjf 咒 it w 理 it it jt 理 at x jtxsmwjwjtniKitk輸人起始時(shí)間和終匕時(shí)曰&.98 9.91統(tǒng)計(jì)啟的結(jié)果外:早_f 4鼻專鼻暮*鼻* _f 鼻鼻鼻鼻鼻

24、鼻4卓亠事鼻鼻鼻亠鼻鼻鼻4鼻鼻*鼻* 4 4鼻4 * 4鼻鼻卓4事_f 鼻鼻鼻鼻斗*鼻 魏課學(xué)主姓名 曠課次數(shù)K耳: IfrWlaWlfMI Hi給萬(wàn) i:MMM請(qǐng)選ft統(tǒng)計(jì)項(xiàng)目統(tǒng)計(jì)某段時(shí)間內(nèi),曠澡學(xué)生姓名及曠燥次數(shù)。漢統(tǒng)計(jì)臬段時(shí)間兒有學(xué)生曠課的課程及恥課人沬乩退出統(tǒng)計(jì)莫單W 丸 X X K JC X K JC M KK K JCXHlCXJtJCJtJClOtHX M: Jff HM: JCX X W X X K M )( X It J KM K J M: X X K M: MT J( K X Jt K M: J It )C XXFj無(wú)此菜單選項(xiàng),請(qǐng)重新選擇W- + + +# + + + +

25、 + + + -+* + + + + + + + * + #+ + + + + + + *+ + + + + + + -*- +#+ + + + +圖29統(tǒng)計(jì)模塊數(shù)據(jù)輸出圖28統(tǒng)計(jì)模塊菜單測(cè)試猜輸人起始時(shí)間和終止時(shí)間6.30 8.01*輸入課程門(mén)數(shù)=3磨人第1門(mén)課程的名稱:工門(mén)課程名稱為體肓B範(fàn)人第2門(mén)課程的名稱;*2門(mén)課程名稱為t高數(shù) 磧狗入雪門(mén)課程的名稱:將奴語(yǔ)言程序設(shè)計(jì)第3廠課程名稱為乂虛級(jí)語(yǔ)言程序設(shè)計(jì)統(tǒng)計(jì)后的結(jié)臬為:HF+HI-4h + + + + + + + + + Hb 4-4HH- + + + + + + + + + -F+ + + + + + + + ll-+HI-4h+fr+

26、 + + + + +HF+ + + -H- + + 課程名稱曠課人拔課槨名稱曠課人次高級(jí)諸言程序設(shè)計(jì)課程茗稱曠課人次高數(shù)1+ + + +* + + + + +4-4 + -H- + + + + + + +4- + 4 + + + + + +* + * + + +4+4-+1-4F-I-圖30統(tǒng)計(jì)模塊數(shù)據(jù)輸出2. 程序源代碼#i ncludestdio.h#i ncludestri ng.h#defi ne N 100#defi ne NULL 0int n,m=0; n為記錄學(xué)生的個(gè)數(shù);m為統(tǒng)計(jì)函數(shù)1中記錄符合統(tǒng)計(jì)條件的個(gè)數(shù)struct kua ngke/ 有關(guān)曠課統(tǒng)計(jì)函數(shù) 1 的信息記錄ch

27、ar name40;int kuangke_num;kuangkeN;struct kuangke2/ 有關(guān)曠課統(tǒng)計(jì)函數(shù) 2 的信息記錄char name40;int num;kuangke2N;struct kuangke temp;/ 曠課信息交換struct kuangke2 temp2;/ 曠課信息交換struct Student/int num;char name40;char lesson_name40;char lesson_time40;float time;int chidao_num;int zaotui_num;int qingjia_num;int kuangke_nu

28、m;stuN;void creat(void)/ 創(chuàng)建學(xué)生缺課記錄int i;printf(n請(qǐng)輸入需要?jiǎng)?chuàng)建缺課信息的總學(xué)生數(shù):n);scanf(%d,&n);printf(n請(qǐng)輸入缺課學(xué)生信息 包括: n);printf( 學(xué)號(hào) 姓名 課程名稱 上課時(shí)間 缺課日期 遲到次數(shù) 早退次數(shù) 請(qǐng)假 次數(shù) 曠課次數(shù) n);printf( 例如: n08 顧紫航 高級(jí)程序語(yǔ)言設(shè)計(jì) 三、四節(jié) 6.10 t1 t0 t0 t0nn);for(i=0;in;i+)printf(n 請(qǐng)輸入第d位同學(xué)信息:n,i+1);scanf(%d%s%s%s%f%d%d%d%d,&stui.num,,st

29、ui.lesson_name,stui .lesson_time,&stui.time,&stui.chidao_num,&stui.zaotui_num,&stui.qingji a_num,&stui.kuangke_num);printf(n+ +n);prin tf(第 4位同學(xué)信息為:nn,i+1);printf(t學(xué)號(hào) t 姓名 t 課程名稱 n);printf(t%dt%st%snn,stui.num,,stui.lesson_name); printf(t 上課時(shí)間 t 缺課日期 n); printf(t%st%0.2fnn,stui.lesson_time,

30、stui.time);printf(t 遲到次數(shù) 早退次數(shù) 請(qǐng)假次數(shù) 曠課次數(shù) n);printf(t%dtt%dt%dtt%dnn,stui.chidao_num,stui.zaotui_num,stui .qingjia_num,stui.kuangke_num);printf(n+ +n); putchar(nn);void xiugai(void)/ 修改學(xué)生缺課記錄int i,k,flag=0;int num;printf(n 請(qǐng)輸入需要修改信息的學(xué)號(hào) n); scanf(%d,&num);for(i=0;in;i+)/ 檢測(cè)是否有符合的數(shù)據(jù); if(num=stui.num) pr

31、intf(n+ +n);printf(%d 號(hào)學(xué)生的信息為: nn,num); printf(t 學(xué)號(hào) t 姓名 t 課程名稱 n);printf(t%dt%st%snn,stui.num,,stui.lesson_name); printf(t上課時(shí)間 t 缺課日期 n);printf(t%st%0.2fnn,stui.lesson_time,stui.time);printf(t遲到次數(shù) 早退次數(shù) 請(qǐng)假次數(shù)曠課次數(shù) n);printf(t%dtt%dt%dtt%dn,stui.chidao_num,stui.zaotui_num,stui.qing jia_num,stu

32、i.kuangke_num);printf(n+ +n);for(;k!=9;)/ 修改信息菜單 printf(n 請(qǐng)選擇需要修改的項(xiàng)目: nn);printf(t1. 學(xué)生姓名 t2. 課程名稱 t3. 上課時(shí)間 nnt4. 缺課日期 t5. 遲到次數(shù) t6. 早退次數(shù) nnt7. 請(qǐng)假次數(shù) t8. 曠課次數(shù) t9. 退出 n);scanf(%d,&k);if(i=9)break;printf(n 請(qǐng)輸入修改信息: );switch(k)case 1:scanf(%s,);break;case 2:scanf(%s,stui.lesson_name);break;case

33、3:scanf(%s,stui.lesson_time);break;case 4:scanf(%f,&stui.time);break;case 5:scanf(%d,&stui.chidao_num);break;case 6:scanf(%d,&stui.zaotui_num);break;case 7:scanf(%d,&stui.qingjia_num);break;case 8:scanf(%d,&stui.kuangke_num);break;case 9:break;default:printf( 無(wú)該菜單選項(xiàng),請(qǐng)重新輸入 nn);printf(n 修改后的信息為: n);pr

34、intf(n+ +n);printf(%d 號(hào)學(xué)生的信息為: nn,num);printf(t 學(xué)號(hào) t 姓名 t 課程名稱 n);printf(t%dt%st%snn,stui.num,,stui.lesson_name);printf(t上課時(shí)間 t 缺課日期 n);printf(t%st%0.2fnn,stui.lesson_time,stui.time);printf(t遲到次數(shù) 早退次數(shù) 請(qǐng)假次數(shù)曠課次數(shù) n);printf(t%dtt%dt%dtt%dn,stui.chidao_num,stui.zaotui_num,stui.qing jia_num,stui.

35、kuangke_num);printf(n+ +n);else/ 未檢測(cè)到信息時(shí)記錄并提示錯(cuò)誤信息;flag+;if(flag=n)printf(n 輸入信息有誤 nn);void intfac(void)/ 整型類數(shù)據(jù)查詢int num,i,flag=0;scanf(%d,&num);for(i=0;in;i+)/ 檢測(cè)是否有符合的數(shù)據(jù)if(num=stui.num)printf(n+ +n);printf(%d 號(hào)學(xué)生的信息為: nn,num);printf(t學(xué)號(hào)t姓名t課程名稱n);printf(t%dt%st%snn,stui.num,,stui.lesson_na

36、me);printf(t上課時(shí)間 t 缺課日期 n);printf(t%st%0.2fnn,stui.lesson_time,stui.time);printf(t遲到次數(shù) 早退次數(shù) 請(qǐng)假次數(shù) 曠課次數(shù) n);printf(t%dtt%dt%dtt%dn,stui.chidao_num,stui.zaotui_num,stui.qing jia_num,stui.kuangke_num);printf(n+ +n);elseflag+;if(flag=n)printf(n 輸入信息有誤 nn);void stringfac1(void)/ 字符型數(shù)據(jù)查詢int i,flag=0;char st

37、ring40;scanf(%s,string);for(i=0;in;i+)/ 檢測(cè)是否有符合的數(shù)據(jù)if(strcmp(string,)=0)/字符串比較printf(n+ +n);printf(%d 號(hào)學(xué)生的信息為: nn,stui.num);printf(t學(xué)號(hào) t 姓名 t 課程名稱 n);printf(t%dt%st%snn,stui.num,,stui.lesson_name); printf(t上課時(shí)間 t 缺課日期 n);printf(t%st%0.2fnn,stui.lesson_time,stui.time);printf(t遲到次數(shù) 早退

38、次數(shù) 請(qǐng)假次數(shù)曠課次數(shù) n);printf(t%dtt%dt%dtt%dn,stui.chidao_num,stui.zaotui_num,stui.qing jia_num,stui.kuangke_num);printf(n+ +n);elseflag+;if(flag=n)printf(n 輸入信息有誤 nn);void stringfac2(void)/ 字符型數(shù)據(jù)查詢int i,flag=0;char string40;scanf(%s,string); for(i=0;in;i+) / 檢測(cè)是否有符合的數(shù)據(jù) if(strcmp(string,stui.lesson_name)=0)

39、 printf(n+ +n);printf(%d 號(hào)學(xué)生的信息為: n,stui.num); printf(t 學(xué)號(hào) t 姓名 t 課程名稱 n);printf(t%dt%st%snn,stui.num,,stui.lesson_name); printf(t上課時(shí)間 t 缺課日期 n);printf(t%st%0.2fnn,stui.lesson_time,stui.time);printf(t遲到次數(shù) 早退次數(shù) 請(qǐng)假次數(shù)曠課次數(shù) n);printf(t%dtt%dt%dtt%dn,stui.chidao_num,stui.zaotui_num,stui.qing jia_num,stui.kuangke_num);printf(n+ +n);else flag+; if(flag=n) printf(n 輸入信息有誤 nn);void chaxun(void)/ 缺課信息查詢int k;doprintf(n*n);printf(n 請(qǐng)選擇查詢項(xiàng)目 nn);printf(t1. 按學(xué)號(hào)查詢 t2. 按姓名查詢 nnt3. 按課

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論