




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.學(xué)號(hào)12080102172012-2013 學(xué)年 第二學(xué)期高級(jí)語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告題目:學(xué)生考勤管理系統(tǒng)專(zhuān)業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):12(2 )班姓名:天棟指導(dǎo)教師:淮寧成績(jī):計(jì)算機(jī)與信息工程系2013年6月30日專(zhuān)業(yè)資料.目錄1 設(shè)計(jì)容及要求.31 .1 設(shè)計(jì)容.31 .2 設(shè)計(jì)任務(wù)及具體要求. . . . . . . . . . . . . . . . . .32 概要設(shè)計(jì).42. 1 該系統(tǒng)的功能簡(jiǎn)介. . . .42. 2 總體程序框圖. . . . . . . .42. 3各 個(gè) 模 塊 之 間 的 主 要 關(guān) 系53設(shè)計(jì)過(guò)程或程序代碼.53. 1 各個(gè) 模 塊 的 程 序 流
2、程 圖 及 運(yùn) 行 界 面53. 2對(duì) 關(guān) 鍵 代 碼 加 以 分 析 說(shuō) 明104程 序 調(diào) 試 分析. 145小 結(jié)1 7致.17參 考 文 獻(xiàn)17附 : 源 程序18專(zhuān)業(yè)資料.1 設(shè)計(jì)容及要求1.1設(shè)計(jì)容學(xué)生考勤信息記錄了學(xué)生的缺課情況,它包括:缺課日期、第幾節(jié)課(連續(xù)用 begin-end的形式表示)、課程名稱(chēng)(課程名稱(chēng)中不會(huì)出現(xiàn)空格) 、學(xué)生姓名、缺課類(lèi)型(遲到、早退、請(qǐng)假及曠課)。1.2 設(shè)計(jì)任務(wù)及具體要求任務(wù): (1)給出軟件結(jié)構(gòu) ,說(shuō)明各模塊的功能。(2) 設(shè)計(jì)相關(guān)的類(lèi),并說(shuō)明該類(lèi)的作用。特別要用圖形說(shuō)明類(lèi)之間的繼承關(guān)系。(3)編寫(xiě)代碼具體要求:(1)定義相關(guān)的數(shù)據(jù) ,比如 :
3、學(xué)生學(xué)號(hào)學(xué)生姓名課程名稱(chēng)上課時(shí)間到課時(shí)間出勤狀態(tài)曠課/ 病假/事假/ 遲到 /早退 專(zhuān)業(yè)資料.(2)能夠進(jìn)行以下操作 :A能夠?qū)?shù)據(jù)進(jìn)行增、刪、改、查操作。B能夠按學(xué)號(hào)順序列出某一課程的出勤狀況2 概要設(shè)計(jì)2.1 系統(tǒng)的功能簡(jiǎn)介考勤管理系統(tǒng),有以下功能:( 1)錄入學(xué)生的缺課記錄:從鍵盤(pán)輸入數(shù)據(jù)(提示:為避免重復(fù)從鍵盤(pán)輸入數(shù)據(jù),測(cè)試時(shí)可將數(shù)據(jù)存儲(chǔ)在文件中,利用輸入重定向功能讀入) ,輸入格式為:缺課日期 第幾節(jié)課 課程名稱(chēng)學(xué)生姓名 缺課類(lèi)型 每行一條紀(jì)錄。 例如:2013-04-29 2-4 中國(guó)近現(xiàn)代文學(xué)史云龍 遲到 2013-04-28 2-4 大學(xué)生社交禮儀馬志鵬 曠課(2) 修改某個(gè)學(xué)
4、生的缺課記錄:可以對(duì)缺課紀(jì)錄的任意部分進(jìn)行修改,然后顯示一下修改后的紀(jì)錄。(3) 查詢(xún)某個(gè)學(xué)生的缺課情況:查詢(xún)結(jié)果按照日期升序排序,同一天按照所缺課程的專(zhuān)業(yè)資料.時(shí)間升序排序。( 4) 統(tǒng)計(jì)某段時(shí)間(以天為單位) ,曠課學(xué)生姓名及曠課節(jié)數(shù),查詢(xún)結(jié)果先按曠課節(jié)數(shù)降序排序,曠課節(jié)數(shù)相同的學(xué)生按姓名升序排序;( 5) 統(tǒng)計(jì)某段時(shí)間,有學(xué)生曠課的課程及曠課人次,按曠課人次由多到少排序,曠課人次相同的課程按課程名稱(chēng)升序排序。2.2 總體程序框圖專(zhuān)業(yè)資料錄入學(xué)生的缺課信息錄入缺課學(xué)生的姓名、缺課日期、缺課節(jié)次、缺課課程名稱(chēng)、缺課類(lèi)型修改某學(xué)生查詢(xún)某學(xué)生的缺課信息的缺課信息.修改某學(xué)生查詢(xún)某學(xué)生的缺課日的缺
5、課日期、缺課節(jié)期、缺課節(jié)次、缺課課次、缺課課程名稱(chēng)、缺程名稱(chēng)、缺課類(lèi)型課類(lèi)型統(tǒng)計(jì)某段時(shí)間內(nèi)曠課學(xué)生姓名及曠課節(jié)數(shù)按時(shí)間升序顯示曠課學(xué)生姓名及曠課節(jié)數(shù)統(tǒng)計(jì)某段時(shí)間內(nèi),有學(xué)生曠課的課程及曠課人次按時(shí)間升序顯示有學(xué)生曠課的課程及曠課人次2.3 各個(gè)模塊之間的主要關(guān)系本程序用結(jié)構(gòu)體新定義一種數(shù)據(jù)類(lèi)型, 系統(tǒng)包含一個(gè)主函數(shù)和6 個(gè)子函數(shù)(insert() ,check(),rivise() ,Delete() ,output() ,deleteallchain() ),6 個(gè)子函數(shù)分別用來(lái)插入、查詢(xún)、修改、刪除、輸出、收回動(dòng)態(tài)分配的空間, 在主函數(shù)過(guò)調(diào)用子函數(shù)來(lái)實(shí)現(xiàn)所需功能。3 設(shè)計(jì)過(guò)程或程序代碼3.1
6、 各個(gè)模塊的程序流程圖及運(yùn)行界面學(xué)生考勤管理系統(tǒng)中四個(gè)類(lèi)的類(lèi)層次圖為:Time 類(lèi)專(zhuān)業(yè)資料.Xinxi 類(lèi)qstu 類(lèi)qkechen 類(lèi)圖 2學(xué)生考勤管理系統(tǒng)中中四個(gè)類(lèi)的類(lèi)層次圖學(xué)生考勤管理系統(tǒng)中各功能模塊的實(shí)現(xiàn):菜單錄 入 學(xué)修 改 某查 詢(xún) 某統(tǒng)計(jì)某段時(shí)間統(tǒng)計(jì)某段時(shí)間內(nèi),生 的 缺學(xué) 生 的學(xué) 生 的內(nèi)曠課學(xué)生姓有學(xué)生曠 課的課課信息缺 課 信缺 課 信名及曠課節(jié)數(shù)程及曠課人次息息圖 3學(xué)生考勤管理系統(tǒng)中菜單函數(shù)的功能圖1、學(xué)生缺課信息錄用功能模塊:專(zhuān)業(yè)資料學(xué) 生 缺錄入學(xué)生缺課日期課 信 息錄 用 功錄入學(xué)生缺.課節(jié)次能錄入學(xué)生缺課課程名稱(chēng)錄入缺課學(xué)生姓名錄入學(xué)生缺課類(lèi)型圖 4學(xué)生缺課信
7、息錄入的功能2、修改某學(xué)生缺課信息功能的模塊圖修 改 某修改某學(xué)生的缺課日期學(xué) 生 缺修改某學(xué)生的 缺課節(jié)次課 信 息功能修改某學(xué)生的缺課課程修改某學(xué)生的缺課類(lèi)型圖 5學(xué)生考勤管理系統(tǒng)修改學(xué)生缺課信息功能圖3 查詢(xún)某學(xué)生缺課信息功能圖:查 詢(xún) 某輸入要查詢(xún)的學(xué)生姓名學(xué) 生 缺課 信 息功能顯示要查詢(xún)的學(xué)生缺課信息專(zhuān)業(yè)資料.繼續(xù)查詢(xún)或返回菜單圖 6 學(xué)生考勤管理系統(tǒng)查詢(xún)學(xué)生缺課信息功能圖4、統(tǒng)計(jì)某段時(shí)間曠課學(xué)生姓名及曠課節(jié)數(shù)功能模塊:統(tǒng)計(jì)某段統(tǒng)計(jì)某段時(shí)間內(nèi)曠課學(xué)生姓名及曠課節(jié)數(shù)時(shí)間內(nèi)曠課學(xué)生姓顯示某段時(shí)間內(nèi)曠課學(xué)生姓名及名及曠課曠課節(jié)數(shù)節(jié)數(shù)功能返回菜單圖 7 統(tǒng)計(jì)某段時(shí)間曠課學(xué)生姓名及曠課節(jié)數(shù)功
8、能圖5、統(tǒng)計(jì)某段時(shí)間,有學(xué)生曠課的課程及曠課人次功能模塊統(tǒng)計(jì)某段統(tǒng)計(jì)某段時(shí)間內(nèi), 有學(xué)生曠課的課程及時(shí)間內(nèi),有曠課人次學(xué)生曠課的課程及顯示某段時(shí)間內(nèi),有學(xué)生曠課的課程及曠課人次曠課人次功能返回菜單圖 8 統(tǒng)計(jì)某段時(shí)間,有學(xué)生曠課的課程及曠課人次功能圖專(zhuān)業(yè)資料.Tine-year:int基類(lèi)-month:int-day:int+time()+time()Xinxi-name20:char-kechen10:char-jieci3:char- queke10:char -tm3:char -tiaoshu:int=0+xinxi()+xinxi()+setname(n:char*):void+se
9、ttime(y:int,m:int,d:int):void+setqklx(qk: char*): void+setjieci(jc: char*):void+setkechen(kc: char*):void+getname():char*+getqklx():char*+getjieci():char*+getkechen():char*+gettime():int*qstu-jieshu:int派生-qst:int類(lèi)+qstu()+qstu()+print(st1:xinxi &):void+getjs( st1:xinxi,n:int, j:int):int+setjs(js:int=
10、0):int +qstn20:char派生類(lèi)派 生類(lèi)qkechen-renci:int-kcshu:int=0+qkechen()+qkechen()+getrc(st1:xinxi,n:int,j:int):int+qkn20:char圖 9學(xué)生考勤管理系統(tǒng)中四個(gè)類(lèi)的UML 圖專(zhuān)業(yè)資料.3.2 對(duì)關(guān)鍵代碼加以分析說(shuō)明#include#include#includestruct chuqin/ 用結(jié)構(gòu)體定義一個(gè)新的數(shù)據(jù)類(lèi)型出勤chuqinchar name10,number20,subject15,time115,time215,zhuangtai10; chuqin *next;/-void
11、 insert(chuqin* &head1)/ 創(chuàng)建單向鏈表并插入數(shù)據(jù)chuqin *n; / 定義一個(gè) chuqin類(lèi)型指針 nwhile(1) / 一個(gè)死循環(huán)n=new chuqin;/ 用 new 運(yùn)算符動(dòng)態(tài)分配一個(gè) chuqin 空間給指針 ncoutn-name;/ 輸入姓名if(n-name0=N)/ 判斷剛才輸入的第一個(gè)字母是否為Ndelete n; / 若輸入的第一個(gè)字母為 N ,則用 delete 運(yùn)算符收回剛才動(dòng)態(tài)分配的空間 break; / 跳出死循環(huán),結(jié)束插入cinn-numbern-subjectn-time1n-time2n-zhuangtai;/ 若條件不滿(mǎn)足,
12、則繼續(xù)輸入學(xué)號(hào)、課程、上課時(shí)間到課時(shí)間等if(!head1)head1=n,n-next=NULL;/* 假如head 指針為空,則直接讓head 指針指向n 指向的存儲(chǔ)空間(head=n ),將 n-next賦值為空,即不指向任存儲(chǔ)空間*/else n-next=head1,head1=n; / 若 head 指針?lè)强?,則將 n 指向的存儲(chǔ)空間插在最前面/-void check(chuqin *head)/ 子函數(shù)實(shí)現(xiàn)查詢(xún)功能char number110; / 定義一個(gè)字符串?dāng)?shù)組name1 臨時(shí)存放要查詢(xún)的姓名int flag=1;coutnumber1; / 輸入要查詢(xún)的學(xué)號(hào)while(h
13、ead) / 用 while 循環(huán)檢索查詢(xún)是否有匹配的姓名if(strcmp(number1,head-number)=0)/ 用函數(shù) strcmp ()判斷是否有匹配姓名if(flag)專(zhuān)業(yè)資料.cout找到 !nsetw(12)姓名 setw(12)學(xué)號(hào) setw(12)課程 ;coutsetw(12)上課時(shí)間 setw(12)到課時(shí)間 setw(12)出勤狀態(tài) n;/* 若條件為真,則輸出提示信息*/coutsetw(12)namesetw(12)numbersetw(12)subject;coutsetw(12)time1setw(12)time2setw(12)zhuangtaine
14、xt;/更新 head 指針,是它指向下一個(gè)chuqin 類(lèi)型的存儲(chǔ)空間if(flag) cout未找到 !; / 假如 flag 值為 1,則輸出 未找到 !/-void rivise(chuqin *head)/ 定義子函數(shù)實(shí)現(xiàn)修改功能char name110; / 定義一個(gè)字符串?dāng)?shù)組name1 臨時(shí)存放要修改的姓名coutname1;/ 輸入要查詢(xún)的姓名while(head)if(strcmp(name1,head-name)=0) cout 找到此人 !thead-subjecthead-time1head-time2head-zhuangtai;/ 輸入新的課程、上課時(shí)間、到課時(shí)間b
15、reak;head=head-next;if(head=NULL) cout未找到此人!無(wú)法修改!n;/-void Delete(chuqin* &head)/ 定義子函數(shù)實(shí)現(xiàn)刪除功能char name110;int flag=1;chuqin *p1=NULL,*p2,*p3=head;coutname1;while(head)if(strcmp(name1,head-name)=0)coutnext;delete p1;else if(p2-next=NULL) p1-next=NULL; delete p2; head=p3;else p1-next=p2-next;delete p2;
16、head=p3;flag=0;break;p1=head;head=head-next;p2=head;if(flag)cout未找到此人!無(wú)法刪除!n;/-void output(chuqin *head)/ 定義子函數(shù)實(shí)現(xiàn)輸出功能if(head=NULL) cout記錄為空! ;else cout所有的記錄依次為:nsetw(12)姓名 setw(12)學(xué)號(hào) setw(12)課程;coutsetw(12)上課時(shí)間 setw(12)到課時(shí)間 setw(12)出勤狀態(tài) n;while(head)coutsetw(12)namesetw(12)numbersetw(12)subject; cou
17、tsetw(12)time1setw(12)time2setw(12)zh uangtainext;/-void deleteallchain(chuqin *head)/ 定義子函數(shù)來(lái)收回所有動(dòng)態(tài)分配的存儲(chǔ)空間專(zhuān)業(yè)資料.chuqin *p;while(head) p=head; head=head-next; delete p;/-void main()/ 主函數(shù)int a; / 定義一個(gè)整型變量chuqin *head ; / 定義一個(gè) head 指針head=NULL;while(1) / 死循環(huán)cout請(qǐng)輸入一個(gè)數(shù)字(1 表示插入, 2 表示查詢(xún), 3 表示修改, ;couta;/ 輸
18、入一個(gè)整型值if(a=6) break;/ 若該值為 6 則跳出整個(gè)循環(huán)switch(a) / 若 a 值不為 6,執(zhí)行一下程序case 1: insert(head);break;case 2: check(head);break;case 3: rivise(head);break;case 4: Delete(head);break;case 5: output(head);break;default: cout輸入有誤,請(qǐng)重新輸入n; /* 若輸入的 a 值不符合要求,則輸出提示信息*/deleteallchain(head);/ 調(diào)用函數(shù) deleteallchain ()收回所有動(dòng)
19、態(tài)分配的存儲(chǔ)空間4 設(shè)計(jì)結(jié)果與分析專(zhuān)業(yè)資料.系統(tǒng)調(diào)試程序編寫(xiě)完成后,我進(jìn)行了程序調(diào)試。調(diào)試過(guò)程中,出現(xiàn)了以下問(wèn)題:當(dāng)錄入學(xué)生缺課信息時(shí),出現(xiàn)了無(wú)法退出錄入函數(shù)的情況,主要原因是輸入函數(shù)中while 循環(huán)語(yǔ)句沒(méi)有設(shè)置跳出循環(huán)的條件。除此之外,修改某學(xué)生缺課信息時(shí),如果沒(méi)有該學(xué)生的缺課信息,系統(tǒng)沒(méi)有提示要用戶(hù)沒(méi)有該學(xué)生信息,也沒(méi)有建議用戶(hù)重新輸入要修改的學(xué)生姓名。由此我發(fā)現(xiàn)了該系統(tǒng)修改學(xué)生缺課信息的不足。于是,我對(duì)修改函數(shù)進(jìn)行了修改與完善。在該函數(shù)中,我設(shè)置了if 語(yǔ)句用來(lái)判斷系統(tǒng)中是否存有用戶(hù)要修改的學(xué)生缺課信息。如果沒(méi)有,則提示用戶(hù)沒(méi)有該學(xué)生的缺課信息,用戶(hù)可以選擇繼續(xù)輸入要修改的學(xué)生姓名或者
20、退出修改環(huán)節(jié),可以在循環(huán)語(yǔ)句中改變循環(huán)進(jìn)行的條件從而終止循環(huán)。至于在修改后顯示該學(xué)生的缺課信息,運(yùn)行時(shí)發(fā)現(xiàn)系統(tǒng)并沒(méi)有做到這一點(diǎn),對(duì)源代碼檢查之后發(fā)現(xiàn)是修改函數(shù)中顯示函數(shù)的調(diào)用出了點(diǎn)問(wèn)題,顯示函數(shù)的實(shí)參有誤,應(yīng)該把要修改缺課信息的學(xué)生所在的信息類(lèi)對(duì)象作為實(shí)參,然后用顯示函數(shù)的形參引用實(shí)參對(duì)象,通過(guò)對(duì)象調(diào)用信息類(lèi)的成員函數(shù),從而實(shí)現(xiàn)顯示功能。專(zhuān)業(yè)資料.5 小 結(jié)這次的課設(shè),我寫(xiě)的程序也沒(méi)有什么獨(dú)到之處,函數(shù)參數(shù)設(shè)定不夠完美,整個(gè)程序中對(duì)指針的運(yùn)用比較少。對(duì)于指針的巧妙運(yùn)用把握得不夠。還有就是容易missing;或者是 ,這都是些應(yīng)該改掉的毛病。除此以外,我對(duì)于怎樣用文件保存數(shù)據(jù)還沒(méi)深入了解,但我將
21、數(shù)據(jù)保存到文件后又因文件打不開(kāi)而無(wú)法訪問(wèn)文件中的數(shù)據(jù),對(duì)于動(dòng)態(tài)鏈表,我不是很清晰,也就是說(shuō)無(wú)法做到熟稔運(yùn)用。在調(diào)試過(guò)程中我發(fā)現(xiàn)在主函數(shù)中把字符數(shù)組名name 賦值給字符指針p即 p=name; 然后用 coutp; 語(yǔ)句可以輸出字符數(shù)組里全部的容, 但利用函數(shù)返回指針值卻不能做到這一點(diǎn),在我思考一番后終于明白了,這與存中的地址值有關(guān)。致在這次 C 語(yǔ)言課程設(shè)計(jì)中, 我不僅參考了大量資料和翻閱了圖書(shū)館的相關(guān)書(shū)籍,而專(zhuān)業(yè)資料.且我的老師和同學(xué)給了我及大的幫助。特別是我的指導(dǎo)老師淮寧老師和寧。在此,我對(duì)他們表示感,感他們?cè)谖颐鎸?duì)學(xué)習(xí)上的困難時(shí)給了我?guī)椭椭С?。也感那些給我?guī)椭乃型瑢W(xué)!參考文獻(xiàn) 1
22、 維富 建平 建芳 春明, C+ 程序設(shè)計(jì),北京,清華大學(xué)出版社, 2007 2 岳新, Visual C+ 程序設(shè)計(jì),大學(xué)出版社, 2002 3 和克智,C+ 程序設(shè)計(jì)(第二版),交通大學(xué)出版社, 1999 4 挺 會(huì)平 賈麗麗 錫山, C+ 程序設(shè)計(jì),北京,清華大學(xué)出版社, 2005附錄:源程序清單#include#include#includeusing namespace std;/ 時(shí)間類(lèi)class time專(zhuān)業(yè)資料.public:time(int y=0,int m=0,int d=0)year=y;month=m;day=d;time()protected:int year,mo
23、nth,day;/ 信息類(lèi)class xinxi:public time public:xinxi() tiaoshu+;xinxi()tiaoshu-;void setname(char *n)strcpy(name,n);void settime(int y,int m,int d)year=y;month=m;day=d;void setqklx(char *qk)strcpy(queke,qk);void setjieci(char *jc)strcpy(jieci,jc);void setkechen(char *kc)strcpy(kechen,kc);char *getname(
24、)char *n;n=name;return n;char *getqklx()char *qk=queke;return qk;char *getjieci()char *jc;jc=jieci;return jc;char *getkechen()char *gk;gk=kechen;return gk;專(zhuān)業(yè)資料.int *gettime();private:char name20; / 姓名char jieci3,kechen10,queke10;int tm3;static int tiaoshu;int xinxi:tiaoshu=0;int *xinxi:gettime() int
25、 *t; t=tm; tm0=year; tm1=month; tm2=day; return t;/ / 缺課課程類(lèi)class qkechen:public xinxipublic:專(zhuān)業(yè)資料/ 公有數(shù)據(jù)成員.qkechen()kcshu+;qkechen()kcshu-;int getrc(xinxi st1,int n,int j);char qkn20;private:int renci;static int kcshu; / 靜態(tài)數(shù)據(jù)成員;int qkechen:kcshu=0;int qkechen:getrc(xinxi st1,int n,int j) renci=0; renc
26、i+;for(int i=0;in;i+) if(*(st1i+1.gettime()+1)=*(st1j.gettime()+1)&*(st1i+1.gettime()+2)= *(st1j.gettime()+2)if(strcmp(qkn,st1i.getkechen()=0)renci+;return renci;專(zhuān)業(yè)資料./ 缺課學(xué)生類(lèi)class qstu:public xinxipublic:qstu()qst+;qstu()qst-;void print(xinxi &st1);int getjs(xinxi st1,int n,int j);int setjs(int js=0
27、)jieshu=js;char qstn20;private:int jieshu;static int qst; / 靜態(tài)數(shù)據(jù)成員;int qstu:qst=0;/ 類(lèi)的實(shí)現(xiàn)void qstu:print(xinxi &st1)cout|缺課日期|第幾節(jié)課|課程名稱(chēng)|缺課類(lèi)型 |endl;cout|*st1.gettime()|*(st1.gettime()+1)*(st1.gettime()+2)|專(zhuān)業(yè)資料.st1.getjieci()|st1.getkechen()|st1.getqklx()|endl;int qstu:getjs(xinxi st1,int n,int j) int
28、i=0,js=0; xinxi min; if(*(st1j.getjieci()+2)!=0) js=+2;else js+;for(i=0;in;i+)if(*(st1i+1.gettime()+1)=*(st1j.gettime()+1)&*(st1i+1.gettime()+2)=*(st1j.gettime()+2)if(strcmp(st1i+1.getname(),qstn)=0)if(*(st1i.getjieci()+2)!=0)js=+2;elsejs+;專(zhuān)業(yè)資料.jieshu=js;return jieshu;/ 函數(shù)聲明int shuru(xinxi st1);void
29、 chaxun(xinxi st1,qstu qt);void xiugai(xinxi st1,int n);void tongji1(xinxi st1,qstu qt1);void tongji2(xinxi st1,qkechen qk1);void caidan();void xiansi(xinxi &st1);void setqstn(xinxi st1,qstu qt1,int n);void setqkn(xinxi st1,qkechen qk,int n);/ 全局變量int g,k=1,b=1;int q=-1;char name20,kechen10,queke10,
30、jieci3;int y,m,d;/ 主函數(shù)專(zhuān)業(yè)資料.int main() xinxi tl15; qstu qt10; qkechen qk6; int ch; while(1)/ 定義 15 條信息類(lèi)對(duì)象cout*歡迎進(jìn)入學(xué)生考勤管理系統(tǒng)!*endl;caidan();cout- 請(qǐng)選擇菜單項(xiàng) :ch;switch(ch)case 1: g=shuru(tl); break;case 2: xiugai(tl,g); break;case 3: chaxun(tl,qt); break;case 4: tongji1(tl,qt); break;case 5: tongji2(tl,qk)
31、; break;case 6: exit(0);return 0;/ 菜單函數(shù)專(zhuān)業(yè)資料.void caidan() system(color A);cout*endl;cout*學(xué)生考勤管理 系 統(tǒng)*endl;cout*endl; cout1.- 錄 入 學(xué) 生 的 缺 課 記 錄 -*endl;cout2.-修改學(xué)生的缺課記錄 -*endl;cout3.-查詢(xún)學(xué)生的缺課情況 -*endl;cout4.-統(tǒng)計(jì)某段時(shí)間曠課學(xué)生姓名及曠課節(jié)數(shù)-*endl;cout5.-統(tǒng)計(jì)某段時(shí)間曠課的課程及曠課人次 -*endl;cout6.-退出系統(tǒng) -*endl;/ 輸入函數(shù)int shuru(xinxi
32、st1) char a;cout- 輸入開(kāi)始! -endl;do q+;cout 請(qǐng)輸入學(xué)生姓名 name;專(zhuān)業(yè)資料.st1q.setname(name);cout 請(qǐng)輸入課程名稱(chēng) kechen;st1q.setkechen(kechen);cout 請(qǐng)輸入缺課日期 ymd;st1q.settime(y,m,d);cout 請(qǐng)輸入缺課類(lèi)型 queke;st1q.setqklx(queke);cout 請(qǐng)輸入缺課節(jié)次 jieci;st1q.setjieci(jieci);cout 是否還要繼續(xù)輸入 :(y/n)a;while(a=y);return q+1;/ 修改函數(shù)void xiugai(xinxi st1,int n)int k=1,j=0,a10;專(zhuān)業(yè)資料.int flgh;int h;while(k=1) cout 請(qǐng)輸入你要修改缺課記錄的學(xué)生姓名 name;flgh=0;for(int i=0;in;i+) if(strcmp(name,st1i.getnam
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 防燙傷教師培訓(xùn)
- 自動(dòng)化入門(mén)培訓(xùn)
- 火力發(fā)電廠基礎(chǔ)知識(shí)介紹標(biāo)準(zhǔn)版
- 加強(qiáng)學(xué)校周邊交通安全保障
- 建筑起重機(jī)械安裝拆卸安全合同
- 商場(chǎng)店鋪轉(zhuǎn)讓合同
- 電力公司電氣安全操作手冊(cè)
- 前臺(tái)聘用勞動(dòng)合同協(xié)議書(shū)
- 個(gè)體工商戶(hù)商鋪門(mén)面租賃合同
- 環(huán)保顧問(wèn)考試題庫(kù)及答案
- 2025湖南新華書(shū)店集團(tuán)秋季校園招聘92人高頻重點(diǎn)提升(共500題)附帶答案詳解
- DB3309T 86-2021 晚稻楊梅生產(chǎn)技術(shù)規(guī)程
- 水電安裝合同范本6篇
- 2024年03月徽商銀行社會(huì)招考筆試歷年參考題庫(kù)附帶答案詳解
- 2024中國(guó)兒童營(yíng)養(yǎng)趨勢(shì)洞察報(bào)告
- 第一章-地震工程學(xué)概論
- 孩子畏難情緒心理健康教育
- 《中國(guó)糖尿病防治指南(2024版)》更新要點(diǎn)解讀
- 手術(shù)患者液體管理
- 中國(guó)融通集團(tuán)北京企業(yè)管理共享中心社會(huì)招聘筆試真題2023
- T-CCSAS 042-2023 在役常壓儲(chǔ)罐檢驗(yàn)與適用性評(píng)價(jià)技術(shù)規(guī)范
評(píng)論
0/150
提交評(píng)論