版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、學生學籍管理系統(tǒng) 目目目 錄錄錄 第第 1 章章 概述概述.4 第第 2 章章 系統(tǒng)分析系統(tǒng)分析.5 第第 3 章章 系統(tǒng)設計系統(tǒng)設計.6 3.1 系統(tǒng)功能設計.6 3.2 類設計.6 3.3 輸入輸出設計.7 第 4 章 系統(tǒng)實現(xiàn).9 結論.16 后記.16 參考文獻.17 【摘要】 學籍管理系統(tǒng)設計涉及學生信息的錄入,顯示,查找,刪除,修改,統(tǒng)計,保存, 退出等功能,從而能夠對信息進行處理。程序中運用了相關類的知識,同時定義了一定數(shù)量 的數(shù)據(jù)及成員函數(shù)。程序使用了數(shù)組記錄統(tǒng)計的相關數(shù)據(jù),運用了指針實現(xiàn)相應功能函數(shù)的 功能,運用了 student ,school 兩個類實現(xiàn)面向對象的要求。程
2、序的完成涉及到程序的分析, 模塊的分解,程序的控制,程序的調試。 【關鍵詞】 學籍管理 vc+6.0 面向對象 程序控制 類 第第 1 章章 概述概述 1.1 系統(tǒng)實現(xiàn)的目標 課程設計的任務: 制作一個小型的學生學籍管理系統(tǒng),要求制作一個菜單,實現(xiàn)數(shù)據(jù)的錄入, 數(shù)據(jù)的顯示,數(shù)據(jù)查找,數(shù)據(jù)的刪除,數(shù)據(jù)的保存,數(shù)據(jù)的統(tǒng)計,數(shù)據(jù)的修改, 系統(tǒng)的退出。系統(tǒng)的設計要求用到 C+面向對象的程序設計,要求用到類來實現(xiàn), 同時每一個功能用到一個函數(shù)。 基本功能: 學生基本信息(編號,姓名,性別,籍貫,民族,生日,政治面貌,省份證, 數(shù)學成績,英語成績,計算機成績) 成績統(tǒng)計(各科總成績,各科平均成績,各科的及
3、格率) 擴展功能: 學生數(shù)據(jù)的添加、修改、與刪除 學生數(shù)據(jù)的讀取與存儲 系統(tǒng)特點: 系統(tǒng)要能夠對相應的數(shù)據(jù)進行很好的測試,系統(tǒng)的統(tǒng)計對每一科的總成績, 平均成績,及格律都進行了統(tǒng)計;系統(tǒng)數(shù)據(jù)的錄入 除可以手工錄入外,還可以 采用文件的錄入;系統(tǒng)統(tǒng)計學生的基本信息較全面,包括學號,姓名,民族,政 治面貌,身份證號,生日,性別,數(shù)學、英語、計算機的成績;程序中查找運用 了兩種查找方式即學號查找和姓名查找。 1.2 系統(tǒng)實現(xiàn)方案 第一步:分析題目,建立類并派生出它的子類,畫出類圖。 第二步:畫出流程,根據(jù)流程圖編寫程序清單 第三步:上機調試程序(使用單步調試,設置斷點、分塊調試的方法) 。 第五步:
4、及時整理資料,撰寫課程設計報告中有關這個題目的內容。 1.3 系統(tǒng)實現(xiàn)環(huán)境 硬件配置硬件配置:586 以上 PC 兼容機或品牌機,配有彩色顯示器、鼠標、鍵盤,內存 不小于 64MB,硬盤自由空間不少于 200MB。推薦配置為內存 128MB 或 256MB(或 以上) ,硬盤自由空間 500MB 以上。 操作系統(tǒng)操作系統(tǒng):Windows2000/NT/Xp、Visual C+集成開發(fā)環(huán)境。 第第 2 章章 系統(tǒng)分析系統(tǒng)分析 2.1 調查 程序對學生學籍的數(shù)據(jù)處理要求 能夠輸入并瀏覽學生的基本信息; 能夠實現(xiàn)對學生信息的查詢和修改; 能夠對成績進行統(tǒng)計; 能夠對學生的信息進行保存; 現(xiàn)行的系統(tǒng)功
5、能: 資料維護:系統(tǒng)維護包括對各學生信息和成績的錄入操作。 資料維護:對數(shù)據(jù)表中的信息進行瀏覽。 系統(tǒng)查詢:可以對不同科目的總成績、不及率、各科平均成績相關信息。 2.2 現(xiàn)行系統(tǒng)分析 現(xiàn)行系統(tǒng)組織結構圖: 開始 選擇菜單序號 1 錄 入 信 息 2 顯 示 信 息 3 查 找 信 息 4 刪 除 信 息 5 修 改 信 息 6 統(tǒng) 計 成 績 7 保 存 信 息 0 退 出 按要求逐 步輸入學 生信息 選擇修改 方式 1? ? 編號查詢 姓名查找 2? 保存? 輸入學 生信息 退出 保存 第第 3 章章 系統(tǒng)設計系統(tǒng)設計 3.1 系統(tǒng)功能設計系統(tǒng)功能設計 系統(tǒng)功能結構圖: 3.2 類設計類設
6、計 類:student 數(shù)據(jù)成員 編號,姓名,性別,籍貫,民族,生日,政治面貌,省份證,數(shù)學成績,英語成績,計 算機成績 類:school 成員函數(shù) 錄入函數(shù) Input():輸入編號到計算機的成績; 統(tǒng)計函數(shù) count():統(tǒng)計各科的總成績,計算平均成績,統(tǒng)計各科的及格率; 查詢函數(shù) found():按學號或姓名查找學生的記錄; 修改函數(shù) mend():修改指定學號學生成績記錄; 刪除函數(shù) del():刪除指定學號學生記錄; 輸出函數(shù) show():輸出班級所有學生成績記錄; UML 圖: 主程序 初 始 化 程 序 采 單 程 序 查 找 刪 除 修 改 統(tǒng) 計 輸 入 顯 示 退 出
7、Student #number:int #name20:char #sex6:char #place20:char #nation6:char #birth20:char #party10: char #id20:char #score3:float +student*next; +student() +student() + * getname():char +getnumber():int +getscore(inti)double + getg():float + input():void +input(ifstream char name20; char sex6; char plac
8、e20; char nation6; char birth20; char party10; char id20; float score3; public: student *next; student() student() char* getname() return name; int getnumber() return number; double getscore(int i) return scorei; float getg() return (score0+score1+score2); void input() int e=1; coutttt 按提示輸入:endl; c
9、outnumber; coutname; do coutsex; if(strcmp(sex,男)=0 | strcmp(sex,女)=0) coutplace; coutnation; coutbirth; coutparty; coutid; coutscore0; coutscore1; coutscore2; e=0; else coutttt 無此類型性別!重新輸入!numbernamesexplacenationbirthpartyid score0score1score2; is.get(); void output() cout學生基本信息如下:endl; cout編號:num
10、ber 姓名:name 性別:sex 籍貫:place 民族:nation 生日:birth 政治面貌:partyendl 身份證號:id 數(shù)學:score0 英語:score1 計算機:score2 總分:getg()endlendl; void output(ofstream key=0; school() delete head; void input(); void mend(); void del(); int find(student *p,int num,char *pn=); void found(); void show(); void count(); void save(
11、); void begin(); void clear(); char mainmenu(); int getkey() return key; void setkey(int k) key=k; private: student *head; int key; ; /錄入函數(shù) void school:input() student *p,*p2=NULL; p=head; int n; while(p-next) p=p-next; while(n) p2=new student; p2-input(); p-next=p2; p2-next=NULL; p=p-next; school:s
12、etkey(1); coutn; /子查找函數(shù) int school:find(student *p1,int num,char *pn) student *p; p=head; while(p-next) (*p1)=p; if( (p-next)-getnumber()=num|!strcmp( (p-next)-getname(),pn ) ) return 1; p=p-next; return 0; /查找函數(shù) void school:found() student *p; int num=-1,n=9; char name20=; do coutn; while(n2); if(n
13、=1) coutnum; if(n=2) coutname; if(!find( /刪除函數(shù) void school:del() student *p,*p2; int num; coutnum; if( !find( p2=p-next; p-next=p2-next; delete p2; school:setkey(1); void school:show() /顯示函數(shù) student *p; p=head; while(p-next) (p-next)-output(); p=p-next; /修改函數(shù) void school:mend() student *p; int num=-
14、1,n; char name20=; do coutn; while(n2); if(n=1) coutnum; if(n=2) coutname; if( !find( (p-next)-input(); school:setkey(1); void school:save() /保存函數(shù) student *p; p=head; ofstream os(student.txt,ios:out); if (school:getkey()=1) while(p-next) (p-next)-output(os); p=p-next; coutttt 文件已保存! num; is.seekg(t)
15、; if(numinput(is); p-next=p2; p2-next=NULL; p=p-next; void school:clear()/清空函數(shù) student *p,*p2; p=head-next; while( p ) p2=p; p=p-next; delete p2; void school:count()/統(tǒng)計函數(shù) student *p; p=head; int n=0; double g3=0,0,0; float j3=0,0,0; while(p-next) p=p-next; n+; for(int i=0;igetscore(i) ); (p-getscore
16、(i) )=60.0? ji+ : 0 ; coutttbbbb 數(shù)學總分:g0 平均分:g0/n 及格率:j0/nendlttbbbb 英語總分:g1 平均分:g1/n 及格率:j1/nendl ttbbbb 計算機總分: g2 平均分: g2/n 及格率:j2/nendl; /主選菜單函數(shù) char school:mainmenu() char n6; coutnn 歡迎進入學籍管理系統(tǒng)endlendl * * * * * * * * * * * * * * * * * * * * * * * * * * * *endl * * * * * * * * * * * * * * * * *
17、* * * * * * * * * * *endl * * 1: 錄入學生信息 * *endl * * 2: 顯示學生信息 * *endl * * 3: 查找學生信息 * *endl * * 4: 刪除學生信息 * *endl * * 5: 修改學生信息 * *endl * * 6: 統(tǒng)計學生成績 * *endl * * 7: 保存學生信息 * *endl * * 0: 退出系統(tǒng) * *endl * * * * * * * * * * * * * * * * * * * * * * * * * * * *endl * * * * * * * * * * * * * * * * * * * *
18、* * * * * * * *endl n; return n0; /主函數(shù) void main() school pp; int k=1; char n; pp.begin(); while(k=1) n=pp.mainmenu(); switch(n) case 1:pp.input(); break; case 2:pp.show(); break; case 3:pp.found(); break; case 4:pp.del(); break; case 5:pp.mend(); break; case 6:pp.count(); break; case 7:pp.save(); break; case 0: if(pp.getkey()=1) coutk; if(k=1) pp.save(); pp.clear(); k=0; break; 2.系統(tǒng)運行的結果系統(tǒng)運行的結果 結論結論 本程序基本完成了題目要求的功能。但是由于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025物品抵押合同范本
- 2025外省市建筑企業(yè)來京施工備案之合同管理制度
- 2025年度環(huán)??萍加邢薰菊w轉讓協(xié)議版3篇
- 2025年度幼兒園園長任期可持續(xù)發(fā)展戰(zhàn)略規(guī)劃合同3篇
- 2025年度住房公積金租房合同范本(含租賃雙方信息變更通知)3篇
- 二零二五年度養(yǎng)老院與老人精神文化服務合同規(guī)范3篇
- 2025年度全新茶樓租賃合同傳承古韻文化合作協(xié)議3篇
- 2025年度智能城市交通管理系統(tǒng)股東合伙人協(xié)議書3篇
- 二零二五年度農業(yè)藥害損失評估及賠償合同3篇
- 二零二五年度綜合購物中心委托經(jīng)營管理與服務協(xié)議書2篇
- 2024年01月22332高等數(shù)學基礎期末試題答案
- 期末素養(yǎng)測評卷(試題)-2024-2025學年三年級上冊數(shù)學人教版
- 印章交接表(可編輯)
- 體育場館運營合同
- 5-項目五 跨境電商出口物流清關
- FMEA培訓教材(課堂)
- 倉庫安全培訓考試題及答案
- (正式版)SH∕T 3548-2024 石油化工涂料防腐蝕工程施工及驗收規(guī)范
- (高清版)JTG 3370.1-2018 公路隧道設計規(guī)范 第一冊 土建工程
- 2024年中國雄安集團招聘筆試參考題庫含答案解析
- 軟件開發(fā)含演示評分細則100分
評論
0/150
提交評論