




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、頁眉C+ 學(xué)生成績管理系統(tǒng)要求用 C+ 語言編寫學(xué)生成績管理系統(tǒng),要求能進(jìn)行添加刪除修改輸入輸出等的操作,并能使用面相對像原理對此系統(tǒng)進(jìn)行實(shí)現(xiàn)。學(xué)生成績管理系統(tǒng)分析:學(xué)生成績管理系統(tǒng)分為 8 個(gè)模塊,分別是:添加學(xué)生信息,輸出學(xué)生成績, 查找學(xué)生成績,修改學(xué)生成績, 刪除學(xué)生成績, 學(xué)生成績排序,保存數(shù)據(jù)到文件和讀取文件中學(xué)生成績的模塊。學(xué)生成績管理系統(tǒng)結(jié)構(gòu):Main() 函數(shù)Menu() 函數(shù)Student()Add()Output()Student 類Find()私有成員:char name20;Modify()char sex5;公有函數(shù)int number;Deleted()int s
2、core3;int total;Sort()int average;Save()Load()重載符號1/12頁眉各個(gè)子函數(shù)功能及其流程:1. 首先定義一個(gè)學(xué)生類 Class Student;并定義其各個(gè)私有變量和公有函數(shù)Class Student私有變量Claoufindemsalo重asdtpdletodvead載sduteify2. Student();構(gòu)造函數(shù),用于初始化學(xué)生類中的各個(gè)變量并記錄3. Add ();函數(shù):用于添加學(xué)生信息的函數(shù)包括學(xué)號姓名成績等的內(nèi)容主函數(shù) main()菜單函數(shù)menu()選擇菜單中的選項(xiàng)添加學(xué)生信息調(diào)用 Add ()函數(shù)調(diào)用重載 并添加信息4. Outp
3、ut ();函數(shù):用于輸出學(xué)生信息,包括學(xué)號姓名各科及總分平均成績主函數(shù) main()菜單函數(shù) menu()選擇菜單中的選項(xiàng)輸出學(xué)生信息調(diào)用 Output()函數(shù)輸出學(xué)生信息2/12頁眉5. Find ();函數(shù):用于查找學(xué)生各項(xiàng)信息。主函數(shù) main()菜單函數(shù) menu()選擇菜單中的選項(xiàng)查找學(xué)生信息調(diào)用 find ()函數(shù)要求輸入學(xué)生姓名查找并輸出學(xué)生信息6. modify(); 函數(shù):用于修改學(xué)生各項(xiàng)信息。主函數(shù) main()菜單函數(shù) menu()選擇菜單中的選項(xiàng)修改學(xué)生信息調(diào)用 modify ()函數(shù)要求輸入學(xué)生姓名修改并保存學(xué)生信息7. delete(); 函數(shù):用于刪除學(xué)生信息。
4、3/12頁眉主函數(shù) main()菜單函數(shù) menu()選擇菜單中的選項(xiàng)刪除學(xué)生信息調(diào)用 delete()函數(shù)要求輸入學(xué)生姓名刪除學(xué)生信息8.sort(); 函數(shù):對學(xué)生各項(xiàng)信息進(jìn)行排序操作。主函數(shù) main()菜單函數(shù)menu()選擇菜單中的選項(xiàng)學(xué)生信息排序調(diào)用 Sort()函數(shù)完成排序操作8. save()和 load(); 函數(shù):將學(xué)生信息保存到文件中, 并在需要的時(shí)候調(diào)用該文件將其中的學(xué)生信息顯示出來4/12頁眉主函數(shù) main()菜單函數(shù)menu()選擇菜單中的選項(xiàng)調(diào)用 save()函數(shù)選保存或讀取調(diào)用 load()函數(shù)按要求輸入文件名文件讀取成功文件保存成功9.“ =”“ ”符號的重
5、載:在各個(gè)函數(shù)處理數(shù)據(jù)過程中對這些的調(diào)用處理函數(shù)源代碼 :此函數(shù)源代碼在VisualC+6.0 環(huán)境下編譯通過。具體如下:#includeiostream.h#includeconio.h#includeiomanip.h#includestdio.h#includestring.h#includestdlib.h#includefstream.hclass student /定義學(xué)生類private:/ 定義學(xué)生類的私有成員char name20; / 名字char sex5; / 性別int number; / 學(xué)號int score3; / 分?jǐn)?shù)int total; / 總分int av
6、erage; /平均分public: / 公有成員student(); / 學(xué)生構(gòu)造函數(shù),用于學(xué)生數(shù)據(jù)的初始化及保存學(xué)生數(shù)據(jù)void add(); / 添加學(xué)生信息函數(shù)void output(); / 輸出學(xué)生信息函數(shù)void find(); / 查找學(xué)生數(shù)據(jù)函數(shù)void modify(); / 修改學(xué)生信息函數(shù)void deleted(); / 刪除學(xué)生信息函數(shù)void sort(); / 排序函數(shù)void save(); / 保存學(xué)生信息并寫入文件函數(shù)void load (); / 打開寫有學(xué)生信息的文件的函數(shù)5/12頁眉student & operator=(student & T);
7、/ 重載“ =”符號friend istream & operator (istream & scin, student &s1); / 重載“ ”符號 friend ostream & operator ”符號;student stu100;int n=0;void student:add() / 添加函數(shù)char flag=Y;while(toupper(flag)=Y)cinstun;n+;coutflag;if(toupper(flag)!=Y)if(toupper(flag)=N)break;elsecoutflag;void student:output() / 輸出函數(shù)if(n!
8、=0)cout -n;coutnumbernamesexmathC+Englishtotalaveragen;cout - n;for(int t=0;tn;t+)coutstut;getch();6/12頁眉void student:find() / 查找函數(shù)int f3=0;char n120;student temp;coutn1;for(int j=0;jn;j+)if(strcmp(,n1)=0)temp=stuj;f3=1;if(f3=0)cout 對不起,沒有你要查找的學(xué)生成績endl;elsecout -n;cout number name sex math
9、C+ English total averagen;cout - n;cout temp.number temp.sex temp.score0temp.score1temp.score2temp.totaltemp.averageendl;getch();void student:modify() / 修改函數(shù)int f4=0;int t;char n250;coutn2;for(int j=0;jn;j+)if(strcmp(,n2)=0)t=j;f4=1;7/12頁眉if(f4=0)cout 對不起,沒有你要修改的學(xué)生成績endl;elsecouts
10、tut.number;;coutstut.sex;coutstut.score0;coutstut.score1;coutstut.score2;stut.total=stut.score0+stut.score1+stut.score2;stut.average=stut.total/3;cout修改成功!endl;getch();void student:deleted() / 刪除函數(shù)char n320;bool f5=0;char c;docoutn3;for(int i=0;in;i+)if(strcmp(n3,)=0)f5=1;n-;do
11、stui=stui+1;i+;while(i=n);if(f5=0)cout 您要求刪除的對象本來就不存在!;8/12頁眉cout 要繼續(xù)刪除嗎?(y/n)c;if(toupper(c)!=Y&toupper(c)!=N)cout 輸入指令錯(cuò)誤!請重新輸入Y 或 N ! c;while(toupper(c)=Y);getch();void student:sort() / 排序函數(shù)int i,j,k;student s3;for( i=0;i(n-1);i+)k=i;for(j=i+1;jstui.average)k=j;if(k!=i)s3=stui;stui=stuk;stuk=s3;co
12、utnn 排序成功 !nn;void student:save() / 保存函數(shù)char filename120;coutfilename1;ofstream fout(filename1,ios:app);if(!fout)cout 文件不能打開!endl;elsefor(int i=0;in;i+)fout stui.sex stui.number stui.score0 stui.score1 stui.score2 stui.total stui.average ;9/12頁眉cout 保存成功 !endl;fout.close();getch();void stu
13、dent:load() / 讀取函數(shù)char filename220;coutfilename2;ifstream fin(filename2,ios:in);if(!fin)cout 文件打不開!stui.sexstui.numberstui.score0stui.score1stui.score2stui.totalstui.average;cout 文件已讀取成功!endl;fin.close();getch();student & student:operator=(student & T) / 重載 =strcpy(name,T.name);strcpy(sex,T
14、.sex);number=T.number;for(int i=0;i3;i+)scorei=T.scorei;total=T.total;average=T.average;return ( * this );ostream & operator (ostream & scout, student &s2) / 重載 coutsetw(6)s2.numbersetw(10)setw(8)s2.sexsetw(8)s2.score0setw(8)s2.score1setw(10)s2.score2setw(10)s2.totalsetw(8)s2.average (istream
15、 & scin,student &s1) /重載 couts1.number;;couts1.sex;couts1.score0;couts1.score1;couts1.score2;s1.total=s1.score0+s1.score1+s1.score2;s1.average=s1.total/3;return scin;student:student() / 構(gòu)造函數(shù)strcpy(name, );strcpy(sex, );number=0;for(int i=0;i3;i+)scorei=0;total=0;average=0;void menu() / 菜單函數(shù)coutnnn 學(xué)生成績管理系統(tǒng)主菜單endl;coutnnn1. 添加學(xué)生信息endl;cout2. 輸出學(xué)生信息endl;cout3. 查找學(xué)生信息endl;cout4. 修改學(xué)生信息endl;cout5. 刪除學(xué)生信息endl;cout6. 學(xué)生信息排序endl;cout7. 保存數(shù)據(jù)endl;cout8. 讀出數(shù)據(jù)endl;cout9. 退出系統(tǒng)endl;coutchoose;swi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家具品牌戰(zhàn)略規(guī)劃保密協(xié)議
- 航拍項(xiàng)目合作協(xié)議中關(guān)于版權(quán)歸屬與侵權(quán)責(zé)任界定補(bǔ)充條款
- 股權(quán)代持與員工績效考核及薪酬調(diào)整合同
- 新能源項(xiàng)目用地規(guī)劃及合規(guī)性評估咨詢協(xié)議
- 牛羊肉冷鏈銷售與配送一體化服務(wù)協(xié)議
- 體育賽事轉(zhuǎn)播權(quán)授權(quán)與賽事直播平臺(tái)技術(shù)升級合同
- 網(wǎng)紅奶茶品牌區(qū)域代理合作協(xié)議書
- 海外公司分支機(jī)構(gòu)設(shè)立與法律顧問服務(wù)合同
- 跨國藝術(shù)品收藏鑒定評估與藝術(shù)品交易咨詢合同
- 生物質(zhì)能源技術(shù)許可與項(xiàng)目實(shí)施綜合合作協(xié)議
- 深度解剖華為虛擬股權(quán)激勵(lì)方案(含持股比例)
- 肥厚型心肌病-課件
- 肺結(jié)核-護(hù)理查房
- 初中 初二 物理 流體壓強(qiáng)與流速的關(guān)系 教學(xué)設(shè)計(jì)
- 醫(yī)院檢驗(yàn)科實(shí)驗(yàn)室生物安全管理委員會(huì)及工作職責(zé)
- 福建省市政基礎(chǔ)設(shè)施工程竣工驗(yàn)收報(bào)告(附件2)
- 市政工程監(jiān)理規(guī)劃范本(完整版)
- 艾里遜自動(dòng)變速箱針腳圖PPT通用課件
- 交管12123駕照學(xué)法減分題庫及答案共155題(完整版)
- 食品物性學(xué)-第二章 食品力學(xué)性質(zhì)和流變學(xué)基礎(chǔ)
- 斜屋面瓦安裝施工及方案
評論
0/150
提交評論