


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、課程名稱:C+面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)題目:大學(xué)生學(xué)籍管理系統(tǒng)目錄:一、系統(tǒng)設(shè)計(jì)目標(biāo)、意義二、系統(tǒng)設(shè)計(jì)思路三、系統(tǒng)功能介紹四、輸入輸出的設(shè)計(jì)(1) 界面的設(shè)計(jì)(2) 數(shù)據(jù)輸出設(shè)計(jì)系統(tǒng)運(yùn)行結(jié)果五、詳細(xì)設(shè)計(jì)(1) 系統(tǒng)功能結(jié)構(gòu)圖UML六、附錄七、系統(tǒng)設(shè)計(jì)、開發(fā)過程中遇到的問題八、心得體會學(xué)生學(xué)籍管理系統(tǒng)-、系統(tǒng)設(shè)計(jì)目標(biāo)、意義(一)系統(tǒng)實(shí)現(xiàn)的目標(biāo)1、課程設(shè)計(jì)的任務(wù):制作一個(gè)小型的學(xué)生學(xué)籍管理系統(tǒng),要求制作一個(gè)菜單,實(shí)現(xiàn)數(shù)據(jù)的錄入,數(shù)據(jù)的顯示,數(shù)據(jù)查找,數(shù)據(jù)的刪除,數(shù)據(jù)的保存,數(shù)據(jù)的統(tǒng)計(jì),數(shù)據(jù)的修改,系統(tǒng)的退出。系統(tǒng)的設(shè)計(jì)要求用到C+®向?qū)ο蟮某绦蛟O(shè)計(jì),要求用到類來實(shí)現(xiàn),同時(shí)每一個(gè)功能用到一
2、個(gè)函數(shù)。2、(1)基本功能:學(xué)生基本信息(編號,姓名,性別,籍貫,民族,生日,政治面貌,省份證,數(shù)學(xué)成績,英語成績,計(jì)算機(jī)成績)成績統(tǒng)計(jì)(各科總成績,各科平均成績,各科的及格率)(2)擴(kuò)展功能:學(xué)生數(shù)據(jù)的添加、修改、與刪除學(xué)生數(shù)據(jù)的讀取與存儲3、系統(tǒng)特點(diǎn):系統(tǒng)要能夠?qū)ο鄳?yīng)的數(shù)據(jù)進(jìn)行很好的測試,系統(tǒng)的統(tǒng)計(jì)對每一科的總成績,平均成績,及格律都進(jìn)行了統(tǒng)計(jì);系統(tǒng)數(shù)據(jù)的錄入除可以手工錄入外,還可以采用文件的錄入;系統(tǒng)統(tǒng)計(jì)學(xué)生的基本信息較全面,包括學(xué)號,姓名,民族,政治面貌,身份證號,生日,性別,數(shù)學(xué)、英語、計(jì)算機(jī)的成績;程序中查找運(yùn)用了兩種查找方式即學(xué)號查找和姓名查找。(二)系統(tǒng)設(shè)計(jì)的意義通過設(shè)計(jì)此項(xiàng)程
3、序,能夠?qū)W(xué)生的學(xué)籍進(jìn)行統(tǒng)一的管理,對學(xué)生的學(xué)籍進(jìn)行錄入、修改、保存等功能進(jìn)行處理,從而能夠較快地對信息進(jìn)行處理,系統(tǒng)數(shù)據(jù)的錄入除可以手工錄入外,還可以采用文件的錄入;系統(tǒng)統(tǒng)計(jì)學(xué)生的基本信息較全面,程序中查找運(yùn)用了兩種查找方式即學(xué)號查找和姓名查找,方便查詢。二、系統(tǒng)設(shè)計(jì)思路第一步:分析題目,建立類并派生出它的子類,畫出類圖。第二步:畫出流程,根據(jù)流程圖編寫程序活單第三步:上機(jī)調(diào)試程序(使用單步調(diào)試,設(shè)置斷點(diǎn)、分塊調(diào)試的方法)。第四步:及時(shí)整理資料,撰寫課程設(shè)計(jì)報(bào)告中有關(guān)這個(gè)題目的內(nèi)容。三、系統(tǒng)功能介紹 (一)程序?qū)W(xué)生學(xué)籍的數(shù)據(jù)處理要求能夠輸入并瀏覽學(xué)生的基本信息;能夠?qū)崿F(xiàn)對學(xué)生信息的查詢和修
4、改;能夠?qū)Τ煽冞M(jìn)行統(tǒng)計(jì);能夠?qū)W(xué)生的信息進(jìn)行保存;(二)系統(tǒng)功能:資料維護(hù):系統(tǒng)維護(hù)包括對各學(xué)生信息和成績的錄入操作。資料維護(hù):對數(shù)據(jù)表中的信息進(jìn)行瀏覽。系統(tǒng)查詢:可以對不同科目的總成績、不及率、各科平均成績相關(guān)信息四、輸入輸出的設(shè)計(jì)界面的設(shè)計(jì)、界面設(shè)計(jì)程序運(yùn)行后會出現(xiàn)一個(gè)簡捷的窗口,便于用戶查詢數(shù)據(jù)。、功能設(shè)計(jì)通過主窗體調(diào)用其他窗體,具體實(shí)現(xiàn)可以參照系統(tǒng)分析相關(guān)內(nèi)容。應(yīng)用系統(tǒng)主控界面包括學(xué)生信息錄入,查找等功能模塊。學(xué)生信息錄入功能完成學(xué)生信息和成績的1. 輸入。記錄查詢功能可以對數(shù)據(jù)各分類的記錄進(jìn)行查詢數(shù)據(jù)輸出設(shè)計(jì)主要運(yùn)行界面:統(tǒng)計(jì)界面:查找界面:顯示界面:錄入界面:保存界面:修改界面:刪
5、除界面:3、系統(tǒng)運(yùn)行的結(jié)果:(僅部分)五、詳細(xì)設(shè)計(jì)1、系統(tǒng)功能結(jié)構(gòu)圖:I2、(1)類:student化數(shù)據(jù)成員:編號,姓名,性別,籍貫,民族,生日,政治面貌,省份證,數(shù)學(xué)成績,英語成績,計(jì)算機(jī)成績(2)類:school成員函數(shù):錄入函數(shù)Input():輸入編號到計(jì)算機(jī)的成績;統(tǒng)計(jì)函數(shù)count():統(tǒng)計(jì)各科的總成績,計(jì)算平均成績,統(tǒng)計(jì)各科的及格率;查詢函數(shù)found():按學(xué)號或姓名查找學(xué)生的記錄;修改函數(shù)mend():修改指定學(xué)號學(xué)生成績記錄;刪除函數(shù)del():刪除指定學(xué)號學(xué)生記錄;輸出函數(shù)show():輸出班級所有學(xué)生成績記錄;UMLB:schoolStudent#number:int+
6、school()六、附錄:(主要代碼)#include<iostream.h>#include<string.h>#include<fstream.h>操縱符定義在其中#include<iomanip.h>/classstudentprotected:intnumber;charname20;charsex6;charplace20;charnation6;charbirth20;charparty10;charid20;floatscore3;public:student*next;student()(student()(char*getnam
7、e()(returnname;intgetnumber()(returnnumber;doublegetscore(inti)(returnscorei;floatgetg()(return(score0+score1+score2);voidinput()(inte=1;cout<<"ttt按提示輸入:"<<endl;cout<<"tt輸入編號:"cin>>number;cout<<"tt輸入姓名:"cin>>name;do(cout<<"
8、tt輸入性別:"cin>>sex;if(strcmp(sex,"男”)=0|strcmp(sex,"女”)=0)(cout<<"tt輸入籍貫:"cin>>place;cout<<"tt輸入民族:"cin>>nation;cout<<"tt輸入生日:"cin>>birth;cout<<"tt輸入政治面貌:"cin>>party;cout<<"tt輸入身份證號:
9、"cin>>id;cout<<"tt輸入數(shù)學(xué)分?jǐn)?shù):"cin>>score0;cout<<"tt輸入英語分?jǐn)?shù):"cin>>score1;cout<<"tt輸入計(jì)算機(jī)分?jǐn)?shù):"cin>>score2;e=0;else(cout<<"ttt無此類型性別!重新輸入!"<<endl;e=1;while(e);return;voidinput(ifstream&is)is>>number>
10、;>name>>sex>>place>>nation>>birth>>party>>id>>score0>>score1>>score2;is.get();voidoutput()(cout<<"學(xué)生基本信息如下:"<<endl;cout<<"編號:"<<number<<"姓名:"<<name<<"性別:"<<
11、;sex<<"籍貫:"<<place<<"民族:"<<nation<<"生日:"<<birth<<"政治面貌:"<<party<<endl<<"身份證號:"<<id<<"數(shù)學(xué):"<<score0<<"英語:"<<score1<<"計(jì)算機(jī):"<
12、<score2<<"總分:"<<getg()<<endl<<endl;voidoutput(ofstream&os)(os<<setw(6)<<number<<setw(15)<<name<<setw(20)<<place<<setw(6)<<nation<<setw(20)<<birth<<setw(20)<<party<<setw(20)<<i
13、d<<setw(6)<<score0<<setw(6)<<score1<<setw(6)<<score2<<endl;/操縱符指定寬度classschool(public:school()(head=newstudent;head->next=NULL;key=0;school()(deletehead;voidinput();voidmend();voiddel();intfind(student*p,intnum,char*pn="AH);voidfound();voidshow();voi
14、dcount();voidsave();voidbegin();voidclear();charmainmenu();intgetkey()(returnkey;voidsetkey(intk)(key=k;private:student*head;intkey;/錄入函數(shù)voidschool:input()(student*p,*p2=NULL;p=head;intn;while(p->next)p=p->next;while(n)(p2=newstudent;p2->input();p->next=p2;p2->next=NULL;p=p->next;s
15、chool:setkey(1);cout<<"ttt按1繼續(xù),按0返回:"cin>>n;/子查找函數(shù)intschool:find(student*p1,intnum,char*pn)(student*p;p=head;while(p->next)(*p1)=p;if(p->next)->getnumber()=num|!strcmp(p->next)->getname(),pn)return1;p=p->next;return0;/查找函數(shù)voidschool:found()(student*p;intnum=-1
16、,n=9;charname20=HA"do(cout<<"tt1:按編號查找,2:按姓名查找:"cin>>n;while(n<1|n>2);cin>>num;if(n=2)(cout<<"ttt輸入姓名:"cin>>name;if(!find(&p,num,name)(cout<<"tt找不到你要查找的內(nèi)容!"<<endl;return;(p->next)->output();/刪除函數(shù)voidschool:d
17、el()(student*p,*p2;intnum;cout<<"ttt輸入編號:"cin>>num;if(!find(&p,num,HA")(cout<<"tt找不到你要刪除的內(nèi)容!"<<endl;return;(p->next)->output();p2=p->next;p->next=p2->next;deletep2;school:setkey(1);voidschool:show()/顯示函數(shù)(student*p;p=head;while(p->
18、;next)(p->next)->output();p=p->next;/修改函數(shù)voidschool:mend()(student*p;intnum=-1,n;charname20="A"docout<<"tt1:按編號修改,2:按姓名修改:cin>>n;while(n<1|n>2);if(n=1)cout<<"ttt輸入編號:"cin>>num;if(n=2)cout<<"ttt輸入姓名:"cin>>name;if(!f
19、ind(&p,num,name)(cout<<"tt找不到你要修改的內(nèi)容!"<<endl;return;(p->next)->output();(p->next)->input();school:setkey(1);voidschool:save()/保存函數(shù)(student*p;p=head;ofstreamos("student.txt",ios:out);if(school:getkey()=1)(while(p->next)(p->next)->output(os);p=p
20、->next;文件已保存!"<<endl;school:setkey(0);voidschool:begin()/初始化函數(shù)student*p,*p2;p=head;clear();longt;ifstreamis("student.txt",ios:in);if(!is)ofstreamos("student.txt",ios:out);os.close();return;intnum=-1;is>>num;is.seekg(t);if(num<0)(is.close();return;p2=newstud
21、ent;p2->input(is);p->next=p2;p2->next=NULL;p=p->next;voidschool:clear()/活空函數(shù)(student*p,*p2;p=head->next;while(p)(p2=p;p=p->next;deletep2;voidschool:count()/統(tǒng)計(jì)函數(shù)(student*p;p=head;intn=0;doubleg3=(0,0,0;floatj3=(0,0,0;while(p->next)(p=p->next;n+;for(inti=0;i<3;i+)(gi=gi+(p-&
22、gt;getscore(i);(p->getscore(i)>=60.0?ji+:0;cout<<"ttbbbb數(shù)學(xué)總分:"<<g0<<"平均分:"<<g0/n«"及格率:"«jO/n«endl«"ttbbbb«"平均分:"«g1/n«"及格率:"«j1/n«endl«"ttbbbb計(jì)算機(jī)總分:"«
23、g2«"平均分:"«g2/n«"及格率:"«j2/n«endl;/主選菜單函數(shù)charschool:mainmenu()charn6;cout«"nn歡迎進(jìn)入學(xué)籍管理系統(tǒng)"«endl«endlvv*卻'vvendlvv*卻'vvendl«"*1:錄入學(xué)生信息*"«endl«"*2:顯示學(xué)生信息*"«endl«"*3:查找學(xué)生信息*"
24、«endl<<"*4:刪除學(xué)生信息*"<<endl<<"*5:修改學(xué)生信息*"<<endl<<"*6:統(tǒng)計(jì)學(xué)生成績*"<<endl<<"*7:保存學(xué)生信息*"<<endl<<"*0:退出系統(tǒng)*"<<endl<<"*"<<endl<<"*"<<endl<<"請選擇:”;cin>>n;returnn0;/主函數(shù)voidmain()(schoolpp;intk=1;charn;pp.begin();while(k=1)(n=pp.mainmenu();switch(n)(case'1':pp.input();break;case'2':pp.
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 23649:2025 EN Chemicals for the leather tanning industry - Determination of cyclosiloxanes
- 【正版授權(quán)】 ISO 3518:2025 EN Essential oil of sandalwood (Santalum album L.)
- 【正版授權(quán)】 ISO 18162:2024 EN Biotechnology - Biobanking - Requirements for human neural stem cells derived from pluripotent stem cells
- 2025年度標(biāo)準(zhǔn)托盤租賃及全程跟蹤服務(wù)協(xié)議
- 二手機(jī)械二手交易與環(huán)保處理服務(wù)合同(2025版)
- 2025年度二手房購房貸款保險(xiǎn)合同范本
- 2025年辦公設(shè)備升級改造項(xiàng)目合作協(xié)議
- 生產(chǎn)計(jì)劃的周期性評審與調(diào)整
- 農(nóng)業(yè)生產(chǎn)的安全防護(hù)措施計(jì)劃
- 如何制定子女的教育基金計(jì)劃
- 數(shù)學(xué)-河南省三門峽市2024-2025學(xué)年高二上學(xué)期1月期末調(diào)研考試試題和答案
- 2025年春新人教版數(shù)學(xué)七年級下冊教學(xué)課件
- 《心臟血管的解剖》課件
- 心肺復(fù)蘇課件2024
- 2025年重癥醫(yī)學(xué)科(ICU)護(hù)理工作計(jì)劃
- 2024-2030年中國并購基金行業(yè)發(fā)展前景預(yù)測及投資策略研究報(bào)告
- 河道清淤安全培訓(xùn)課件
- 四川省名校2025屆高三第二次模擬考試英語試卷含解析
- 《電子商務(wù)法律法規(guī)》電子商務(wù)專業(yè)全套教學(xué)課件
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- JJG 976-2024透射式煙度計(jì)
評論
0/150
提交評論