




已閱讀5頁(yè),還剩17頁(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)介
面向?qū)ο蟮木幊碳夹g(shù)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告學(xué) 號(hào):班 級(jí):專 業(yè):姓 名:設(shè)計(jì)時(shí)間:課程設(shè)計(jì)一、使用c+的面向?qū)ο蟪绦蛟O(shè)計(jì)方法(類機(jī)制)設(shè)計(jì)程序課程題目:學(xué)生成績(jī)管理系統(tǒng)1、 實(shí)驗(yàn)?zāi)康?.在編輯應(yīng)用程序過(guò)程中,逐步加深對(duì)C+語(yǔ)言編程的理解; 2.加強(qiáng)實(shí)踐的能力,動(dòng)手能力,同時(shí)進(jìn)一步對(duì)所學(xué)的知識(shí)進(jìn)行鞏固;3.培養(yǎng)初步C+編程的能力,為以后的學(xué)習(xí)奠定基礎(chǔ)。二、實(shí)驗(yàn)內(nèi)容學(xué)生成績(jī)管理系統(tǒng) 本學(xué)生成績(jī)管理系統(tǒng)程序是一個(gè)具有對(duì)學(xué)生信息進(jìn)行錄入、添加、刪除、根據(jù)學(xué)號(hào)進(jìn)行學(xué)生信息的查詢、顯示已有學(xué)生信息的顯示、對(duì)學(xué)生成績(jī)進(jìn)行統(tǒng)計(jì)(包括總分,平均分等),可以對(duì)已有的學(xué)生信息進(jìn)行修改,保存和讀取輸入的數(shù)據(jù)等功能。一切功能都可以在運(yùn)行的軟件中運(yùn)行。三、功能要求(1)信息維護(hù):學(xué)生信息數(shù)據(jù)要以文件的形式保存,能實(shí)現(xiàn)學(xué)生信息數(shù)據(jù)的維護(hù)。此模塊包括子模塊有:增加學(xué)生信息、刪除學(xué)生信息、修改學(xué)生信息(2)信息查詢:查詢時(shí)可實(shí)現(xiàn)按姓名查詢、按學(xué)號(hào)查詢(3) 成績(jī)統(tǒng)計(jì):輸入任意的一個(gè)課程名(如數(shù)學(xué))和一個(gè)分?jǐn)?shù)段(如60-70),統(tǒng)計(jì)出在此分?jǐn)?shù)段的學(xué)生情況。(4)排序:能對(duì)用戶指定的任意課程名,按成績(jī)升序或降序排列學(xué)生數(shù)據(jù)并顯示排序結(jié)果(使用表格的形式顯示排序后的輸出結(jié)果)(使用多種方法排序者)4、 流程圖學(xué)生成績(jī)管理系統(tǒng) 主菜單界面刪 除 學(xué) 生 成 績(jī)添 加 學(xué) 生 成 績(jī)輸 入 學(xué) 生 成 績(jī)讀 取 學(xué) 生 成 績(jī)學(xué)生總分和平均分修 改 學(xué) 生 成 績(jī)成 績(jī) 查 詢 系 統(tǒng)四、運(yùn)行環(huán)境 VC+6.0。五、實(shí)驗(yàn)代碼處理#include#include#includeclass stuchar name20;double math,chinese,english,average,sum;public:stu()stu(char n20,double ma,double chin,double eng)strcpy(name,n);math=ma;chinese=chin;english=eng;double getsum()sum=chinese+english+math;return sum;double getaver()average=getsum()/3;return average;friend void main();void main()cout*歡迎來(lái)到學(xué)生成績(jī)管理系統(tǒng)*endl; cout*endl; cout* 請(qǐng)選擇您需要的操作!*endl;cout* 操作: *endl;cout*(0)數(shù)據(jù)錄入*endl;cout*(1)增加人員*endl;cout*(2)刪除人員*endl;cout*(3)修改數(shù)據(jù)*endl;cout* 查詢: *endl;cout*(4)按總成績(jī)查詢*endl;cout*(5)按姓名查詢*endl;cout*(6)輸出所有學(xué)生的數(shù)據(jù)*endl;cout* 成績(jī)名詞 *endl;cout*(7)按總分查詢排名*endl;cout*(8)按語(yǔ)文查詢排名*endl;cout*(9)按數(shù)學(xué)查詢排名*endl;cout*(y)按英語(yǔ)查詢排名*endl;cout選擇相關(guān)操作請(qǐng)輸入相對(duì)的括號(hào)里的阿拉伯?dāng)?shù)字!endl; cout*p;if(p=0&p=10)flag2=1;elsecout指令錯(cuò)誤!請(qǐng)重新輸入:endl;while(flag2=0);doswitch(p)case 0:char c;char name20;double math,chinese,english;docout請(qǐng)輸入姓名name;cout請(qǐng)輸入數(shù)學(xué)成績(jī):math;cout請(qǐng)輸入語(yǔ)文成績(jī):chinese;cout請(qǐng)輸入外語(yǔ)成績(jī):english;filej=new ofstream(d:document,ios:ate);*filej姓名name數(shù)學(xué)成績(jī)math語(yǔ)文成績(jī)chinese外語(yǔ)成績(jī)englishendl;j+;si=new stu(name, math, chinese, english);i+;cout數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)c;flag2=0;doif(c!=y&c!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!c;elseflag2=1;while(flag2=0);while(c=y);break;case 4:double t;char c;doint flag1=0;cout請(qǐng)輸入你要查詢學(xué)生的總成績(jī)t;for(int q=0;qgetsum()=t)flag1=1;cout您要查詢的學(xué)生是:(*sq).nameendl;if(flag1=0)cout對(duì)不起!您要查詢的學(xué)生不存在!endl;cout您想繼續(xù)查詢嗎?(y/n)c;if(c!=y&c!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!c;while(c=y);break;case 5:char n20;int j=0;char c;doint flag=0;cout請(qǐng)輸入你要查詢的學(xué)生姓名n;for(int j=0;ji;j+)if(strcmp(n,(*sj).name)=0)flag=1;cout您要查詢的學(xué)生是:(*sj).nameendl;cout(*sj).name的總成績(jī)成績(jī)是(*sj).getsum()endl平均成績(jī)是:(*sj).getaver()endl;if(flag=0)cout對(duì)不起!您要查詢的學(xué)生不存在!endl;cout您想繼續(xù)查詢嗎?(y/n)c;if(c!=y&c!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!c;while(c=y);break;case 1:char name20;double math,chinese,english;char c;docout請(qǐng)輸入您要增加的學(xué)生的姓名:name;cout請(qǐng)輸入數(shù)學(xué)成績(jī):math;cout請(qǐng)輸入語(yǔ)文成績(jī):chinese;cout請(qǐng)輸入外語(yǔ)成績(jī):english;filej=new ofstream(d:document,ios:ate);*filej姓名name數(shù)學(xué)成績(jī)math語(yǔ)文成績(jī)chinese外語(yǔ)成績(jī)englishendl;j+;si=new stu(name, math, chinese, english);i+;cout數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)c;if(c!=y&c!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!c;while(c=y);break;case 2:char name20;bool flag3=0;char c;docout請(qǐng)輸入您要?jiǎng)h除的學(xué)生姓名:name;for(int h=0;hname)=0)flag3=1;i-;dosh=sh+1;h+;while(h=i);if(flag3=0)cout您要求刪除的對(duì)象本來(lái)就不存在!請(qǐng)檢查輸入的正確性!;cout要繼續(xù)刪除嗎?(y/n)c;if(c!=y&c!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!c;while(c=y);break;case 3:char name20;double mat,chin,eng;flag2=0;char c;docout請(qǐng)輸入您要修改的學(xué)生的姓名:name;for(int h=0;hname)=0)flag2=1;cout請(qǐng)輸入新的數(shù)學(xué)成績(jī):mat;cout請(qǐng)輸入新的語(yǔ)文成績(jī):chin;cout請(qǐng)輸入新的外語(yǔ)成績(jī):eng;sh-chinese=chin;sh-math=mat;sh-english=eng;cout數(shù)據(jù)修改成功!;if(flag2=0)cout您要修改的學(xué)生本來(lái)就不存在!請(qǐng)檢查重新輸入!endl;cout想繼續(xù)修改嗎(y/n)c;if(c!=y&c!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!c;while(c=y);break;case 6:cout本系統(tǒng)所有學(xué)生數(shù)據(jù)如下:endl;if(i=0)cout管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!endl;for(int k=0;ki;k+)coutk+1 姓名: name語(yǔ)文: chinese數(shù)學(xué): math外語(yǔ): english總分: (*sk).getsum()平均分: (*sk).getaver()endl;break;case 7:int t;stu b;cout本系統(tǒng)所以學(xué)生排名如下:endl;for(int x=0;xi-1;x+)t=x;for(int y=x+1;ygetsum()getsum()t=y;if(t!=x)b=*sx;*sx=*st;*st=b;if(i=0)cout管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!;for(int k=0;ki;k+)coutk+1 姓名: name語(yǔ)文: chinese數(shù)學(xué): math外語(yǔ): english總分: getsum()平均分: getaver()endl;break;case 8:int t;stu b;cout本系統(tǒng)所以學(xué)生語(yǔ)文排名如下:endl;for(int x=0;xi-1;x+)t=x;for(int y=x+1;ychinese)chinese)t=y;if(t!=x)b=*st;*st=*sx;*sx=b;if(i=0)cout管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!;for(int k=0;ki;k+)coutk+1 姓名: name語(yǔ)文: chinese數(shù)學(xué): math外語(yǔ): english總分: getsum()平均分: getaver()endl;break;case 9:int t;stu b;cout本系統(tǒng)所以學(xué)生數(shù)學(xué)排名如下:endl;for(int x=0;xi-1;x+)t=x;for(int y=x+1;ymath)math)t=y;if(t!=x)b=*st;*st=*sx;*sx=b;if(i=0)cout管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!;for(int k=0;ki;k+)coutk+1 姓名: name語(yǔ)文: chinese數(shù)學(xué): math外語(yǔ): english總分: getsum()平均分: getaver()endl;break;case y:int t;stu b;cout本系統(tǒng)所以學(xué)生英語(yǔ)排名如下:endl;for(int x=0;xi-1;x+)t=x;for(int y=x+1;yenglish)english)t=y;if(t!=x)b=*st;*st=*sx;*sx=b;if(i=0)cout管理系統(tǒng)中沒(méi)有錄入數(shù)據(jù)或者數(shù)據(jù)已經(jīng)被刪除!;for(int k=0;ki;k+)coutk+1 姓名: name語(yǔ)文: chinese數(shù)學(xué): math外語(yǔ): english總分: getsum()平均分: getaver()endl;break;cout您想繼續(xù)進(jìn)行其他操作嗎?(y/n)w;if(w!=y&w!=n)cout指令錯(cuò)誤!請(qǐng)重新輸入!endl;elseflag4=1;while(flag4=0);if(w=y)cout請(qǐng)輸入操作代碼(0 錄入/4 按總分查詢/5 按姓名查詢/1 增加人員/2 刪除人員/3 修改數(shù)據(jù)/6 顯示所有成員數(shù)據(jù)/7 按總分排名/8 按語(yǔ)文排名/9按數(shù)學(xué)排名/y按英語(yǔ)排名)p;while(w=y);for(int x=0;xi;x+)delete sx;coutdelete all members!endl;6、 程序運(yùn)行結(jié)果1主菜單界面2添加學(xué)生記錄3顯示學(xué)生記錄4按姓名查找學(xué)生成績(jī)5按總分排名6增加成員7刪除成員8修改成員數(shù)據(jù)四、 課程設(shè)計(jì)總結(jié) 這是一個(gè)綜合性較強(qiáng),很實(shí)際的一個(gè)編程實(shí)例。剛學(xué)C+時(shí)候,感覺(jué)類和對(duì)象還挺有意思的,剛接觸到這個(gè)題目時(shí),覺(jué)得應(yīng)該沒(méi)什么大問(wèn)題吧,我自認(rèn)為一些基本知識(shí)點(diǎn)都已經(jīng)掌握了??墒牵娴漠?dāng)我動(dòng)手編程的時(shí)候,才發(fā)現(xiàn)并沒(méi)有想象中的那么簡(jiǎn)單。單個(gè)知識(shí)點(diǎn)是弄清了,但是,將所有的知識(shí)點(diǎn)綜合起來(lái)運(yùn)用時(shí),就碰到了各種各樣的問(wèn)題了。有時(shí)候,一個(gè)錯(cuò)誤得找好久,才能發(fā)現(xiàn)。本系統(tǒng)的重點(diǎn)就是要會(huì)建立兩個(gè)類。一個(gè)是學(xué)生類,用來(lái)存放一個(gè)學(xué)生的成績(jī)記錄,相當(dāng)于一個(gè)結(jié)構(gòu)體的功能吧。另一個(gè)類是學(xué)生成績(jī)記錄系統(tǒng)類,該類用來(lái)存放多個(gè)學(xué)生的成績(jī)記錄。難點(diǎn)就是學(xué)生類里各個(gè)功能的實(shí)現(xiàn)??偟膩?lái)說(shuō),添加,顯示
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第二屆甘肅電力系統(tǒng)網(wǎng)源協(xié)調(diào)與安全技術(shù)大賽理論考試題庫(kù)-下(判斷題) (一)
- 無(wú)人機(jī)應(yīng)用技術(shù)3.5.衛(wèi)星定位
- 2025至2030年中國(guó)活四門無(wú)斗柜行業(yè)投資前景及策略咨詢報(bào)告
- 2025至2030年中國(guó)開(kāi)關(guān)電源控制器集成電路行業(yè)投資前景及策略咨詢報(bào)告
- 2025至2030年中國(guó)全塑盒烏木二胡行業(yè)投資前景及策略咨詢報(bào)告
- 2025年中國(guó)魚香味粉行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年中國(guó)針入度外循環(huán)水浴行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年中國(guó)裝飾織物行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年中國(guó)窄面T型烤漆龍骨行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年中國(guó)電腦雕刻機(jī)行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年建筑電氣工程師職業(yè)資格考試試卷及答案
- 2025年湖北省中考物理試題(含答案及解析)
- 房地產(chǎn)銷售計(jì)劃書
- 2025年勞動(dòng)爭(zhēng)議仲裁員(二級(jí))考試試卷
- 空中安全保衛(wèi)課件
- 中興-5G-A高頻毫米波網(wǎng)絡(luò)規(guī)劃方法論介紹V1.0
- 2024年全市首屆檔案職業(yè)技能競(jìng)賽考試題庫(kù)(含答案)
- 2025年沈陽(yáng)水務(wù)集團(tuán)有限公司-企業(yè)報(bào)告(代理機(jī)構(gòu)版)
- 數(shù)字化藝術(shù)-終結(jié)性考核-國(guó)開(kāi)(SC)-參考資料
- 2025年佛山市南海區(qū)圖書館招聘題庫(kù)帶答案分析
- 2025盤錦市興隆臺(tái)區(qū)輔警考試試卷真題
評(píng)論
0/150
提交評(píng)論