C++成績管理系統(tǒng)實驗報告(含源代碼)【資料】_第1頁
C++成績管理系統(tǒng)實驗報告(含源代碼)【資料】_第2頁
C++成績管理系統(tǒng)實驗報告(含源代碼)【資料】_第3頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 面向?qū)ο蟮某绦蛟O(shè)計大作業(yè)題目:學(xué)生成績管理系統(tǒng)物聯(lián)網(wǎng)工程學(xué)院 學(xué)院計算機科學(xué)與技術(shù)專業(yè)學(xué)號:學(xué)生姓名:班級:計科1105 成績:2012 年 6 月學(xué)生成績管理系統(tǒng)一、 需求分析:學(xué)生信息錄入功能英語、數(shù)據(jù)結(jié)構(gòu)、物理四科成績。學(xué)生成績查詢功能用戶可以按學(xué)號或者姓名查詢學(xué)生的信息。學(xué)生成績輸出功能用戶可以通過這個功能實現(xiàn)對所有學(xué)生成績的瀏覽。學(xué)生信息修改功能用戶可對學(xué)生的信息進(jìn)行修改。學(xué)生信息刪除功能用戶可刪除學(xué)生的成績信息。學(xué)生成績的排序功能用戶可以對學(xué)生成績排序。二、概要設(shè)計學(xué)生的信息用結(jié)構(gòu)體來存儲 ,把要實現(xiàn)的功能封裝在一個類里面,數(shù)調(diào)用,從而實現(xiàn)學(xué)生成績的管理。三、詳細(xì)設(shè)計構(gòu)造學(xué)生信息

2、結(jié)構(gòu)體存儲學(xué)生信息,總分,平均分等信息。構(gòu)造代碼如下:struct Student/聲明一個名為student的結(jié)構(gòu)體類型string/ 姓 名 string number;/學(xué)號doublemaths;/數(shù)學(xué)double english;/英語double datastruct;/數(shù)double physical;/物理double total;/總分e ;/均分;系統(tǒng)功能函數(shù)類的設(shè)計把該系統(tǒng)要實現(xiàn)的功能封裝在此類中,方便增加和修改。在本系統(tǒng)中設(shè)計了七個函數(shù)分別實現(xiàn)學(xué)生成績的錄入,查詢,輸出,修改,刪除,求總分和平均分.其代碼如下::class SYSTEM /聲明類systempublic

3、:(/ d ();/添加d ();/顯示 d h();/查詢 d e();/ d )/刪除 d ();/排序 d ();/最高分 d ()/最低分stuprivate:t;/定義一個結(jié)構(gòu)體類型t的變量int n;各功能函數(shù)代碼如下:(1) 學(xué)生信息輸入函數(shù) add()void SYSTEM::add()/添加cout”學(xué)號:endl; cinstun.number; cout”姓名:; cout”數(shù)學(xué):stun。maths;cout英語:”stun。english; cout”數(shù)構(gòu): stun.datastruct; coutstun.physical;stun。total=

4、 stun。maths+ stun.english+ stun.datastruct+ stun.physical; stun.average=stun.total/4; n+;/學(xué)生人數(shù)增加一個(2)學(xué)生成績查詢函數(shù) search()void SYSTEM::search()/查詢cout”請選擇查詢方式:”endl; cout”1。按學(xué)號查詢endl; cout”2。按姓名查詢c; switch (c)e 1:/按照學(xué)號查詢stringnum;cout請輸入要查詢的學(xué)號:”endl; cinnum;for(i=0;in;i+) if(stui。number=num)cout”學(xué)號 姓名 數(shù)

5、學(xué) 英語 數(shù)構(gòu) 物理 總分 平均分endl;”mathsstui。datastruct”stui.physicalstui.total”endl; break;if(stui.number!=num)cout未找到該學(xué)生信息!!endl; break;case 2:/按照學(xué)號查詢string name1;coutname1;for(i=0;i n;i+) if(=name1)t分”endl;學(xué)號 姓名 數(shù)學(xué) 英語 數(shù)構(gòu) 物理 總分 平均r”stuimaths”stuil”endl;break;學(xué)生成績輸出函數(shù) show()voi

6、d SYSTEM:show()/輸出cout學(xué)號 姓名 數(shù)學(xué) 英語 數(shù)構(gòu) 物理 總分 平均分endl;for(int i=0;in;i+)stui”il stui.total”stui.averageendl;void SYSTEM:change() /修改string num; int i;cout”請輸入要修改的學(xué)生學(xué)號:”endl;cin num; for(i=0;in;i+)if(stui.number=num)cout該學(xué)號的學(xué)生信息如下:”endl;分”endl;r” ”stuimaths stuit ”endl; cout請輸入新的學(xué)生信息:endl;cout”學(xué)號:”stui.

7、number;stun。number=stui.number; cout姓名:”;=; cout”數(shù)學(xué):”stui.maths; stun.maths =stui.maths; cout”英語:stui 。 english; stun。english=stui.english; cout數(shù)構(gòu):endl;cinstui。datastruct; stun.datastruct=stui.datastruct; cout物理:” stui.physical; stun.physical=stui。physical;stui。totalstui。m

8、athsstui。englishstui.datastruct+ stui 。 physical; stui。average=stui.total/4; break;if(stui。number!=num)cout無此學(xué)生信息!”endl;voidSYSTEM:delet()/刪除string num;cout請輸入要刪除學(xué)生的學(xué)號,然后按回車確認(rèn):”endl;cinnum;rt 0;n;+)if(stui.number=num)生信息for(int j=i;jn-1;j+)1/用后一個學(xué)生信息覆蓋前一個學(xué)/學(xué)生人數(shù)減少一個cout已成功刪除該學(xué)生信息!endl;break;排序函數(shù)sort(

9、)void SYSTEM::sort() /排序cout請選擇排序方式:endl; cout1。按學(xué)生總分排序endl;cout2.按學(xué)生平均分排序”endl; coutk; switch (k)e1:/按學(xué)生總分排序Student p;for(int i=0;i n;i+) for(int j=0;jn-i;j+)if(stuj.totalstuj+1.total)endl;cout”學(xué)號 姓名 數(shù)學(xué) 英語 數(shù)構(gòu) 物理 總分for(int m=0;mn;m+)stum.maths” stum。datastructstum.physical stum。totalendl;break;case

10、2:/按學(xué)生平均分排序Student p;/定義一個Student類型的變量p rt+)rtjn;if(stuj。averagestuj+1。average)p=stuj; stuj=stuj+1; stuj+1=p;cout學(xué)號 姓名 數(shù)學(xué) 英語 數(shù)構(gòu) 物理 平均分endl;for(int m=0;mn;m+)stum”m m stum.datastruct”stum.physical max1)i s ;if(stui.englishmax2) max2=stui.english;if(stui。datastructmax3) max3=stui.datastruct;if(stui。ph

11、ysicalmax4) max4=stui.physical;if(stui。totalmax5) max5=stui.total;if(stui.averagemax6) max6=stui.average;cout”數(shù)學(xué)最高分 英語最高分 數(shù)構(gòu)最高分 物理最高分總分最高平均分最高”1”max3”max6endl;”(6)求各科最低分函數(shù) Min()void SYSTEM::Min()/最低分double min1,min2,min3,min4,min5,min6; 。 maths; 。 english; min6=stu0.average; for(int i=0;in;i+) if(st

12、ui.mathsmin1) min1=stui。maths;if(stui.englishmin2) min2=stui.english;if(stui.datastructmin3) if(stui。physicalmin4) 。physical;if(stui。totalmin5) min5=stui.total;if(stui。averagemin6) min6=stui.average;”endl;t”4min6endl;”主函數(shù)設(shè)計先用循壞語句實現(xiàn)不斷重復(fù),能函數(shù)類中的相應(yīng)函數(shù)實現(xiàn)學(xué)生成績管理系統(tǒng)的各項功能需求。其代碼如下:void main()SYSTEM person; int

13、b;docout*”endl;cout5。刪除學(xué)生成績”最高分endl;cout8。最低分”endl; cout”成績管理系統(tǒng)”endl;入學(xué)生成績詢學(xué)生成績生coutb;switch(b)case 1:cout”請依次輸入該學(xué)生的相關(guān)信息:endl; person。add();break;case 2:person。search(); break;case 3:person。show(); break;case 4:break;case 5:;break; case 6:。t(; break;case 7:person.Max(); break;case 8: person.Min(); break;case 0:cout謝謝使用本系統(tǒng)!!endl;while(b10);四 程序調(diào)試程序調(diào)試界面(DOS環(huán)境)學(xué)生成績錄入學(xué)生成績查詢學(xué)生成績

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論