




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、中南民族大學(xué)計(jì)算機(jī)科學(xué)學(xué)院課程設(shè)計(jì)報(bào)告課 程 面向?qū)ο蟪绦蛟O(shè)計(jì)語言題 目 成績統(tǒng)計(jì)系統(tǒng)年 級 2014級 專 業(yè) 軟件工程 學(xué) 生 學(xué) 號 指導(dǎo)教師 2015年6 月 8日中南民族大學(xué)計(jì)算機(jī)科學(xué)學(xué)院本科課程設(shè)計(jì)任 務(wù) 書設(shè)計(jì)名稱: 成績統(tǒng)計(jì)系統(tǒng) 指導(dǎo)教師: 下達(dá)時(shí)間: 2015-5-8學(xué)生姓名: 學(xué) 號: 專 業(yè): 軟件工程一、 課程設(shè)計(jì)的基本要求根據(jù)所學(xué)知識,編寫指定題目的C+語言程序,并規(guī)范地完成課程設(shè)計(jì)報(bào)告。通過課程設(shè)計(jì),加深對C+面向?qū)ο蟪绦蛟O(shè)計(jì)課程所學(xué)知識的理解,熟練掌握和鞏固C+語言的基本知識和語法規(guī)范,掌握C+語言的基礎(chǔ)知識,理解面向?qū)ο笙到y(tǒng)的封裝性、繼承性和多態(tài)性;熟練使用C語
2、言中的函數(shù)、數(shù)組、指針、鏈表和字符串等基本知識;掌握類的定義、標(biāo)準(zhǔn)String類和向量; 理解掌握友元函數(shù)和重載操作符,動(dòng)態(tài)數(shù)組;理解掌握繼承和多態(tài)性;掌握模版的使用;能夠進(jìn)行程序調(diào)試過程中的異常處理;進(jìn)一步掌握利用C+進(jìn)行類的定義和操作方法;進(jìn)一步掌握類的繼承和派生方法;進(jìn)一步理解虛函數(shù)和多態(tài);綜合利用上述知識,學(xué)習(xí)設(shè)計(jì)并編寫面向?qū)ο蟮腃+簡單應(yīng)用程序;培養(yǎng)解決復(fù)雜任務(wù)功能分解方法(自頂向下逐步求精、模塊化設(shè)計(jì)、信息隱藏等)。學(xué)會(huì)編制結(jié)構(gòu)清晰、風(fēng)格良好、數(shù)據(jù)結(jié)構(gòu)適當(dāng)?shù)腃+語言程序,從而具備利用計(jì)算機(jī)編程分析解決綜合性實(shí)際問題的初步能力。具體要求如下:1、 采取模塊化方式進(jìn)行程序設(shè)計(jì),要求程序
3、的功能設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)及整體結(jié)構(gòu)設(shè)計(jì)合理。學(xué)生也可根據(jù)自己對題目的理解增加新的功能模塊(視情況可另外加分)。2、 系統(tǒng)以菜單界面方式(至少采用文本菜單界面,如能采用圖形菜單界面更好)工作,運(yùn)行界面友好,演示程序以用戶和計(jì)算機(jī)的對話方式進(jìn)行。3、 程序算法說明清晰,理論分析與計(jì)算正確,運(yùn)行情況良好,實(shí)驗(yàn)測試數(shù)據(jù)無誤,容錯(cuò)性強(qiáng)(能對錯(cuò)誤輸入進(jìn)行判斷控制)。4、 編程風(fēng)格良好(包括縮進(jìn)、空行、適當(dāng)注釋、變量名和函數(shù)名見名知意,程序容易閱讀等);5、 寫出規(guī)范的課程設(shè)計(jì)報(bào)告,具體要求見相關(guān)說明文檔。二、 課程設(shè)計(jì)的主要內(nèi)容用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)成績管理系統(tǒng)。建立一個(gè)成績類管理所有成績信息,其中應(yīng)包含如
4、下一些功能:求最高分、最低分、平均分、總分、按分?jǐn)?shù)段統(tǒng)計(jì)等。要求能夠從文件中讀取成績信息進(jìn)行初始化。三、 課程設(shè)計(jì)的進(jìn)程安排12015年5月8日(第9周):布置并下達(dá)課程設(shè)計(jì)題目。22015年5月15日(第10周)之前:聯(lián)系指導(dǎo)教師,理解課程設(shè)計(jì)題目及相關(guān)要求,查閱相關(guān)資料,進(jìn)行課程設(shè)計(jì)。32015年5月15日至6月5日(第1013周):課程設(shè)計(jì)源程序的調(diào)試、修改與檢查,書寫設(shè)計(jì)報(bào)告。地點(diǎn):學(xué)院實(shí)驗(yàn)機(jī)房9-202、203、204、205、206。42015年6月5日之前(第13周):上交、檢查設(shè)計(jì)報(bào)告。地點(diǎn):計(jì)算機(jī)科學(xué)學(xué)院實(shí)驗(yàn)機(jī)房。指導(dǎo)教師: 杜小坤2015年5月8日成績統(tǒng)計(jì)系統(tǒng)一 目的用面向
5、對象的方法設(shè)計(jì)一個(gè)成績管理系統(tǒng)。建立一個(gè)成績類管理所有成績信息,其中包括以下功能:查詢各科及總分最高分,查詢各科及總分最低分,查詢各科及總分平均分,以及查詢總分按分?jǐn)?shù)段統(tǒng)計(jì)信息。相應(yīng)成績信息從文件中讀取并進(jìn)行初始化,保留初始化的學(xué)生成績信息于文件中,并且可以向文件中添加學(xué)生成績信息。二 需求分析1、查詢學(xué)生各科及總分最高分、最低分和平均分由于學(xué)生成績信息繁多,為便于使用者較快得到相應(yīng)信息,其中查詢學(xué)生各科及總分最高分和最低分是一個(gè)重要的查詢需求。2、查詢學(xué)生總分分?jǐn)?shù)段統(tǒng)計(jì)信息為了快速了解學(xué)生成績的整體情況,其中查詢學(xué)生總分分?jǐn)?shù)段的統(tǒng)計(jì)信息是一個(gè)便捷的查詢方式,能夠?yàn)槭褂谜呖焖龠_(dá)到其需求信息。三
6、 概要設(shè)計(jì)1、建立一個(gè)Student類,用于存取學(xué)生的成績信息類中成員包括學(xué)生的姓名、學(xué)號、數(shù)學(xué)成績、英語成績、C+成績;成員函數(shù)包括構(gòu)造函數(shù)、求取總分成績函數(shù)。2、定義相關(guān)函數(shù)用于求取最高分、最低分、平均分以及總分排序在類外分別求取最高分、最低分、平均分和總分成績排序函數(shù),利用這幾個(gè)函數(shù)來實(shí)現(xiàn)成績管理系統(tǒng)相應(yīng)功能。3、定義菜單函數(shù) 定義菜單界面函數(shù),提示使用者使用相應(yīng)功能以及要進(jìn)行的操作步驟。四 詳細(xì)設(shè)計(jì)1、Student類和主要功能函數(shù)偽代碼class Student /建立一個(gè)學(xué)生類 public: /類成員 string name; /姓名long sno; /學(xué)號int Math;
7、/數(shù)學(xué)成績int English; /英語成績int Cjj; /C+成績/類主要函數(shù)int Totalscore()return Math+English+Cjj; /計(jì)算學(xué)生總分成績void input(); /輸入學(xué)生信息; /主要功能函數(shù)int FindMaxscore(定義一個(gè)數(shù)組為形參) /求最高分函數(shù)for(i=0;i<n; int i+) if(數(shù)組某成員大于定義的最大值) 定義的最大值=數(shù)組某成員; return 定義的最大值;int FindMinscore(定義一個(gè)數(shù)組為形參) /求最低分 for(i=0;i<n;i+) if(數(shù)組某成員小于定義的最小值) 定
8、義的最小值=數(shù)組某成員; return 定義的最小值;int Averagescore(定義一個(gè)數(shù)組為形參) /求平均分 for(i=1;i<n;i+) 累加求數(shù)組成員的總和; return 平均分;void Datasort(定義一個(gè)數(shù)組為形參) /分?jǐn)?shù)由最高到最低排序 采用交換排序法,依次比較數(shù)組相鄰成員的大小,較大的成員排在前面,較小的成員排在后面; 2、main()函數(shù)中主要功能偽代碼int main()cout<<"請輸入添加的學(xué)生人數(shù)n(無學(xué)生信息添加請輸入0):"<<endl;cin>>n;Student stuN;
9、/定義一個(gè)Student類數(shù)組 for(int m=0;m<n;m+)stum.input();/調(diào)用Student類添加學(xué)生信息函數(shù),添加學(xué)生信息ofstream out("f1.text",ios:out|ios:app); /定義輸出文件流對象out,打開輸出文件f1.text并添加學(xué)生信息 for(int s=0;s<n;s+) out<<<<" "<<stus.sno<<" "<<stus.Math<<" &quo
10、t;<<stus.English<<" "<<stus.Cjj; /向文件中寫入添加的學(xué)生具體信息out.close();ifstream in("f1.text",ios:in); /定義輸入文件流對象in,打開輸入文件f1.textint j=0;while(!in.eof()/直到文件末尾跳出循環(huán) in>>>>stu2j.sno>>stu2j.Math>>stu2j.English>>stu2j.Cjj;/依次讀入學(xué)生信息 score
11、1j=stu2j.getMath(); score2j=stu2j.getEnglish(); score3j=stu2j.getCjj(); score4j=stu2j.Totalscore();/分別將學(xué)生數(shù)學(xué)成績、英語成績、C+成績、總分成績放入一個(gè)數(shù)組中 j+;int t;docout<<"請輸入菜單相應(yīng)功能數(shù)字:"cin>>t;if(t等于1) 調(diào)用求取最高分函數(shù),顯示學(xué)生各科及總分最高分;if(t等于2) 調(diào)用求取最低分函數(shù),輸出學(xué)生各科及總分最低分;if(t等于3) 調(diào)用求取平均分函數(shù),輸出學(xué)生各科及總分平均分;if(t等于4) 調(diào)用排
12、序函數(shù)并輸出學(xué)生成績總分排名及全體成員各科信息;if(t等于5) cout<<"*學(xué)生成績總分分?jǐn)?shù)段統(tǒng)計(jì)情況*"<<endl;int Total1N=0,Total2N=0,Total3N=0; /定義三個(gè)數(shù)組,數(shù)組成員并初始化為零,存放各個(gè)分?jǐn)?shù)段學(xué)生總分成績for(j=0;j<N;j+) if(某學(xué)生總分大于290分) Total1j=某學(xué)生總分; else if(某學(xué)生總分大于280分) Total2j=某學(xué)生總分; else if(某學(xué)生總分大于等于270分) Total3j=某學(xué)生總分;cout<<setw(25)<&
13、lt;"290<總分<=300分?jǐn)?shù)段:n"for(j=0;j<N;j+) if(Total1j)/如果Total1j不為零則執(zhí)行if內(nèi)語句 cout<< <Total1j<<endl; cout<<setw(25)<<"280<總分<=290分?jǐn)?shù)段:n"for(j=0;j<N;j+) if(Total2j)/如果Total2j不為零則執(zhí)行if內(nèi)語句 cout<< Total2j<<endl;cout<<setw(25)<&l
14、t;"270<=總分<=280分?jǐn)?shù)段:n"for(j=0;j<N;j+) if(Total3j) /如果Total3j不為零則執(zhí)行if內(nèi)語句 cout<<Total3j<<endl;if(t等于6)cout<<"歡迎使用成績統(tǒng)計(jì)系統(tǒng)!"<<endl;break;if(t!=1&&t!=2&&t!=3&&t!=4&&t!=5&&t!=6) /錯(cuò)誤判斷cout<<"輸入錯(cuò)誤!"<
15、;<endl;while(t);in.close();/關(guān)閉文件f1.textreturn 0;五 調(diào)試分析在調(diào)試過程中,令我印象最深刻的是在定義Student類對象并初始化時(shí),其中部分輸入使用了中文字符,導(dǎo)致在調(diào)試檢查時(shí)花了很長時(shí)間才發(fā)現(xiàn)這個(gè)錯(cuò)誤。其次,在調(diào)用求取最高分、最低分、平均分函數(shù)時(shí),由于一個(gè)學(xué)生有多個(gè)信息,在使用相應(yīng)學(xué)生信息作為實(shí)參來調(diào)用函數(shù)時(shí),我用類似stu2.getMath()這樣的形式作為數(shù)組名,結(jié)果一直顯示錯(cuò)誤,最后通過score1j=stu2j.getMath();這一語句來轉(zhuǎn)換,成功解決了這一錯(cuò)誤。其中,在實(shí)現(xiàn)總分排名這一功能時(shí),我是使用了一個(gè)排序函數(shù),然后取用在
16、數(shù)組中相應(yīng)位置數(shù)作為排名成績,在操作調(diào)試過程中因?yàn)榕判蚝瘮?shù)定義成void或者int型錯(cuò)誤以及在使用for循環(huán)邏輯錯(cuò)誤,使得結(jié)果一直無法輸出學(xué)生總分成績以及排名信息。不過,經(jīng)過耐心的調(diào)試和修改,最后成功解決了這一問題。最后,最重要的是文件操作部分的內(nèi)容,這是本次課程設(shè)計(jì)中的難點(diǎn)。當(dāng)時(shí),我是依據(jù)課本上的一個(gè)例子仿照編寫的,直接在main函數(shù)里定義文件,向文件里編寫數(shù)據(jù),然后讀取。后面功能函數(shù)實(shí)現(xiàn)所調(diào)用的實(shí)參均是按照文件讀取中格式輸入,結(jié)果導(dǎo)致每次運(yùn)行添加的學(xué)生信息在下一次運(yùn)行時(shí)無法保留。我自己在百度上參考了一些例子,也參照了班里同學(xué)的例子。由于在編寫程序初設(shè)計(jì)程序整體功能結(jié)構(gòu)框架沒有重視文件操作這
17、一功能,導(dǎo)致在修改源程序達(dá)到永久保存添加學(xué)生信息功能時(shí),修改時(shí)有點(diǎn)繁瑣。不過,經(jīng)過和同學(xué)討論和書本上相關(guān)例子,最終解決了文件添加學(xué)生信息的功能。六 測試結(jié)果以下是我編寫成績統(tǒng)計(jì)系統(tǒng)過程中使用的初步學(xué)生成績信息,其中總分、最高分、最低分、平均分均是經(jīng)過實(shí)際驗(yàn)證得到的數(shù)據(jù)。姓名學(xué)號數(shù)學(xué)成績英語成績C+成績總分王2011909192273李2012959294281趙2013959899292柳2014969798291洪2015949596285梁2016979899294最高分979899294最低分909192273平均分94.595.1796.33286圖一:上圖一是文件f1.text中原本
18、保留的學(xué)生成績信息截圖顯示。圖二:圖三:上圖二、三是查詢各科及總分最高分運(yùn)行結(jié)果。圖四:上圖四是查詢各科及總分最低分運(yùn)行結(jié)果。圖五:上圖五是查詢各科及總分平均分結(jié)果顯示。圖六:上圖六是查詢學(xué)生成績總分排名及各科信息結(jié)果顯示。圖七:上圖七是查詢學(xué)生總分分?jǐn)?shù)段信息結(jié)果及退出功能顯示。圖八:上圖八是結(jié)束第一次運(yùn)行,第二次運(yùn)行向文件f1.text中添加三位學(xué)生信息。圖九:上圖九是添加完三位學(xué)生信息后,文件f1.text中學(xué)生信息顯示截圖。圖十:上圖十是第二次重新運(yùn)行向文件中添加三位學(xué)生信息后運(yùn)行功能四結(jié)果顯示。七 用戶使用說明 在添加完學(xué)生信息后,會(huì)有以下提示:(一) 進(jìn)入界面后會(huì)有以下提示:1、查詢
19、各科及總分最高分(請輸入1);2、查詢各科及總分最低分(請輸入2);3、查詢各科及總分平均分(請輸入3);4、查詢總分排名及全體成員各科信息(請輸入4);5、查詢總分分?jǐn)?shù)段統(tǒng)計(jì)情況(請輸入5);6、 退出(請輸入6)。(二) 在用戶輸入1后會(huì)有以下提示: 1.1、查詢數(shù)學(xué)最高分請輸入11; 1.2、查詢英語最高分請輸入12;1.3、查詢C+最高分請輸入13; 1.4、查詢總分最高分請輸入14; 1.5、返回菜單請輸入15。(三) 在用戶輸入2后會(huì)有以下提示:2.1、查詢數(shù)學(xué)最低分請輸入21;2.2、查詢英語最低分請輸入22;2.3、查詢C+最低分請輸入23;2.4、查詢總分最低分請輸入24;2
20、.5、返回菜單請輸入25 。(四) 在用戶輸入3后會(huì)有以下提示: 3.1、查詢數(shù)學(xué)平均分請輸入31; 3.2、查詢英語平均分請輸入32; 3.3、查詢C+平均分請輸入33; 3.4、查詢總分平均分請輸入34;3.5、返回菜單請輸入35。 八 課程設(shè)計(jì)總結(jié)在編寫這次課程設(shè)計(jì)之前,我所編寫的程序大部分都是提供了詳細(xì)的設(shè)計(jì)信息,以及設(shè)計(jì)的框架,只需要向里面填寫相應(yīng)代碼即可,這讓我感覺所學(xué)的知識一直沒有用到實(shí)際應(yīng)用過程中去。通過這一次課程設(shè)計(jì),從理解任務(wù)書題意,到具體框架設(shè)計(jì),到具體功能代碼的實(shí)現(xiàn),以及到最后正確結(jié)果的輸出讓我體會(huì)到了這一年來所學(xué)知識的真正應(yīng)用。在此過程中,也讓我對C語言和C+兩本書中
21、不熟悉的知識點(diǎn)更加熟悉了解,從中也提高了我對專業(yè)課學(xué)習(xí)的興趣。本次課程設(shè)計(jì),其中比較難得地方是做好文件操作處理這一功能,由于起初在理解任務(wù)書及設(shè)計(jì)程序整體結(jié)構(gòu)框架時(shí)沒有考慮到位,導(dǎo)致最后添加功能時(shí)很繁瑣,不過最后還是成功解決了這一問題。從中也讓我明白了,一個(gè)優(yōu)秀的程序要建立在一個(gè)優(yōu)秀的需求分析的基礎(chǔ)上,并要結(jié)合良好的詳細(xì)設(shè)計(jì),才能在后續(xù)修改過程中變得更加簡單。附具體源碼:#include<iostream>#include<fstream>#include<iomanip>#include<string>using namespace std;#
22、define N 40class Student /建立一個(gè)學(xué)生類 public: string name; /姓名long sno; /學(xué)號int Math; /數(shù)學(xué)成績int English; /英語成績int Cjj; /C+成績Student();Student(string name1,long sno1,int Math1,int English1,int Cjj1); /構(gòu)造函數(shù)string getname()return name; /取姓名long getsno()return sno; /取學(xué)號int getMath()return Math; /取數(shù)學(xué)成績int getE
23、nglish()return English; /取英語成績int getCjj()return Cjj; /取C+成績int Totalscore()return Math+English+Cjj; /計(jì)算學(xué)生總分成績void input(); /輸入學(xué)生信息;Student:Student() name=" " sno=0; Math=0; English=0; Cjj=0;Student:Student(string name1,long sno1,int Math1,int English1,int Cjj1) name=name1; sno=sno1; Math=
24、Math1; English=English1; Cjj=Cjj1;void Student:input()cout<<"請依次輸入學(xué)生姓名,學(xué)號,數(shù)學(xué)成績,英語成績,C+成績"<<endl;cout<<"姓名:"cin>>name;cout<<"學(xué)號:"cin>>sno;cout<<"數(shù)學(xué)成績:"cin>>Math;cout<<"英語成績:"cin>>English;cout
25、<<"C+成績:"cin>>Cjj;/Student類結(jié)束void menu() /總菜單界面cout<<"*"<<endl;cout<<" * "<<endl;cout<<" 歡迎進(jìn)入成績統(tǒng)計(jì)系統(tǒng) "<<endl;cout<<" 1、查詢各科及總分最高分(請輸入1) "<<endl;cout<<" 2、查詢各科及總分最低分(請輸入2) "<
26、;<endl;cout<<" 3、查詢各科及總分平均分(請輸入3) "<<endl;cout<<" 4、查詢總分排名及全體成員各科信息(請輸入4)"<<endl;cout<<" 5、查詢總分分?jǐn)?shù)段統(tǒng)計(jì)情況(請輸入5) "<<endl;cout<<" 6、退出(請輸入6) "<<endl; cout<<" * "<<endl;cout<<"*"
27、;<<endl;cout<<endl<<endl;void menu1() /菜單1界面cout<<"*"<<endl;cout<<" 1.1、查詢數(shù)學(xué)最高分請輸入11 "<<endl;cout<<" 1.2、查詢英語最高分請輸入12 "<<endl;cout<<" 1.3、查詢C+最高分請輸入13 "<<endl;cout<<" 1.4、查詢總分最高分請輸入14
28、 "<<endl;cout<<" 1.5、返回菜單請輸入15 "<<endl; cout<<"*"<<endl;cout<<endl;void menu2() /菜單2界面cout<<"*"<<endl;cout<<" 2.1、查詢數(shù)學(xué)最低分請輸入21 "<<endl;cout<<" 2.2、查詢英語最低分請輸入22 "<<endl;cout&
29、lt;<" 2.3、查詢C+最低分請輸入23 "<<endl;cout<<" 2.4、查詢總分最低分請輸入24 "<<endl;cout<<" 2.5、返回菜單請輸入25 "<<endl;cout<<"*"<<endl;cout<<endl;void menu3() /菜單3界面cout<<"*"<<endl;cout<<" 3.1、查詢數(shù)學(xué)平均分請
30、輸入31 "<<endl;cout<<" 3.2、查詢英語平均分請輸入32 "<<endl;cout<<" 3.3、查詢C+平均分請輸入33 "<<endl;cout<<" 3.4、查詢總分平均分請輸入34 "<<endl;cout<<" 3.5、返回菜單請輸入35 "<<endl;cout<<"*"<<endl;cout<<endl;int
31、FindMaxscore(int score,int n) /求最高分 int i,pMaxScore; pMaxScore=score0; for(i=0;i<n;i+) if(scorei>pMaxScore) pMaxScore=scorei; return pMaxScore;int FindMinscore(int score,int n) /求最低分 int i,pMinScore; pMinScore=score0; for(i=0;i<n;i+) if(scorei<pMinScore) pMinScore=scorei; return pMinScor
32、e;int Averagescore(int score,int n) /求平均分 int i; float aver; aver=score0; for(i=1;i<n;i+) aver=aver+scorei; return aver/n;void Datasort(int score,int n) /分?jǐn)?shù)由最高到最低排序 int i,j,temp; for(i=0;i<n-1;i+) for(j=i+1;j<n;j+) if(scorej>scorei) temp=scorej; scorej=scorei; scorei=temp; int main()int
33、n=0;cout<<"請輸入添加的學(xué)生人數(shù)n(無學(xué)生信息添加請輸入0):"<<endl;cin>>n;Student stuN; for(int m=0;m<n;m+)stum.input();ofstream out("f1.text",ios:out|ios:app); /定義輸出文件流對象out,打開輸出文件f1.text并添加學(xué)生信息 if(!out) /如果文件打開失敗,out返回0值 cout<<"cannot open output file.n" abort();
34、/退出程序for(int s=0;s<n;s+) out<<<<" "<<stus.sno<<" "<<stus.Math<<" "<<stus.English<<" "<<stus.Cjj;out.close();Student stu2N;int score1N,score2N,score3N,score4N; ifstream in("f1.text",ios
35、:in); /定義輸入文件流對象in,打開輸入文件f1.textif(!in) /如果文件打開失敗,in返回0值 cout<<"cannot open input file.n" abort();int j=0;while(!in.eof() in>>>>stu2j.sno>>stu2j.Math>>stu2j.English>>stu2j.Cjj; score1j=stu2j.getMath(); score2j=stu2j.getEnglish(); score3j=stu2j.
36、getCjj(); score4j=stu2j.Totalscore(); j+;Datasort(score4,j); /總分由高到低排序menu(); /菜單界面函數(shù)int t;docout<<"請輸入菜單相應(yīng)功能數(shù)字:"cin>>t;cout<<endl;if(t=1) int e;menu1();cout<<"*學(xué)生成績各科及總分最高分*"<<endl;do cout<<"請輸入功能1相應(yīng)數(shù)字:" cin>>e; cout<<end
37、l; if(e=11) cout<<setw(20)<<"數(shù)學(xué)最高分:"<<setw(6)<<FindMaxscore(score1,j)<<endl; if(e=12) cout<<setw(20)<<"英語最高分:"<<setw(6)<<FindMaxscore(score2,j)<<endl; if(e=13) cout<<setw(20)<<"C+最高分:"<<setw(6
38、)<<FindMaxscore(score3,j)<<endl; if(e=14) cout<<setw(20)<<"總分最高分:"<<setw(6)<<FindMaxscore(score4,j)<<endl; if(e=15)break; if(e!=11&&e!=12&&e!=13&&e!=14&&e!=15) /錯(cuò)誤判斷 cout<<"輸入錯(cuò)誤!"<<endl;while(e)
39、;if(t=2) int f;menu2();cout<<"*學(xué)生成績各科及總分最低分*"<<endl;docout<<"請輸入功能2相應(yīng)數(shù)字:"cin>>f;cout<<endl;if(f=21) cout<<setw(20)<<"數(shù)學(xué)最低分:"<<setw(6)<<FindMinscore(score1,j)<<endl;if(f=22) cout<<setw(20)<<"英語最
40、低分:"<<setw(6)<<FindMinscore(score2,j)<<endl;if(f=23) cout<<setw(20)<<"C+最低分:"<<setw(6)<<FindMinscore(score3,j)<<endl;if(f=24) cout<<setw(20)<<"總分最低分:"<<setw(6)<<FindMinscore(score4,j)<<endl;if(f=25
41、)break;if(f!=21&&f!=22&&f!=23&&f!=24&&f!=25) cout<<"輸入錯(cuò)誤!"<<endl;while(f);if(t=3)int g;menu3();cout<<"*學(xué)生成績各科及總分平均分*"<<endl;docout<<"請輸入功能3相應(yīng)數(shù)字:"cin>>g;cout<<endl;if(g=31) cout<<setw(20)<
42、<"數(shù)學(xué)學(xué)科平均分:"<<setw(6)<<Averagescore(score1,j)<<endl;if(g=32) cout<<setw(20)<<"英語學(xué)科平均分:"<<setw(6)<<Averagescore(score2,j)<<endl;if(g=33) cout<<setw(20)<<"C+學(xué)科平均分:"<<setw(6)<<Averagescore(score3,j)&
43、lt;<endl;if(g=34) cout<<setw(20)<<"總分平均分:"<<setw(6)<<Averagescore(score4,j)<<endl;if(g=35)break;if(g!=31&&g!=32&&g!=33&&g!=34&&g!=35) cout<<"輸入錯(cuò)誤!"<<endl;while(g);if(t=4) cout<<"*學(xué)生成績總分排名及全體成員
44、各科信息*"<<endl;cout<<setw(10)<<"姓名"<<setw(10)<<"學(xué)號"<<setw(10)<<"數(shù)學(xué)"<<setw(10)<<"英語"<<setw(10)<<"C+"<<setw(10)<<"總分"<<setw(10)<<"總分名次"<
45、<endl;for(int j=0;j<N;j+) for(int a=0;a<N;a+) if(stu2j.Totalscore()=score4a) cout<<setw(10)<<stu2j. getname()<<setw(10)<<stu2j.getsno()<<setw(10)<<stu2j.getMath() /輸出學(xué)生各科成績及總分信息 <<setw(10)<<stu2j.getEnglish()<<setw(10)<<stu2j.getCjj()<<setw(10)<<stu2j.Totalscore()<<setw(10)<<a+1<<endl; if(t=5) cout<<"*學(xué)生成績總分分?jǐn)?shù)段統(tǒng)計(jì)情況*"<<endl;int Total1N=0,Tot
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆河南上蔡第一高級中學(xué)物理高二下期末達(dá)標(biāo)檢測模擬試題含解析
- 中央企業(yè)安全生產(chǎn)管理評價(jià)辦法
- 2025屆內(nèi)蒙古巴林右旗大板第三中學(xué)高二物理第二學(xué)期期末綜合測試試題含解析
- 你對安全生產(chǎn)有什么看法
- 2025年江西省吉安市峽江縣峽江中學(xué)高一物理第二學(xué)期期末聯(lián)考試題含解析
- 2025屆貴州省遵義鳳岡二中物理高二第二學(xué)期期末檢測模擬試題含解析
- 江蘇省揚(yáng)州市梅嶺中學(xué)2025屆高二物理第二學(xué)期期末統(tǒng)考試題含解析
- 安徽省濱湖壽春中學(xué)2025年物理高二下期末學(xué)業(yè)質(zhì)量監(jiān)測模擬試題含解析
- 養(yǎng)雞場申請書
- 假期參與實(shí)踐活動(dòng)總結(jié)
- 2025年省國有資本運(yùn)營控股集團(tuán)有限公司人員招聘筆試備考試題及答案詳解(名校卷)
- 2025年輔警招聘考試試題庫完整答案
- 宿州蕭縣鄉(xiāng)鎮(zhèn)事業(yè)單位招聘考試真題2024
- 2025至2030全球及中國近炸引信傳感器行業(yè)項(xiàng)目調(diào)研及市場前景預(yù)測評估報(bào)告
- 部編版三年級語文上冊 寫字表
- 工廠十周年活動(dòng)策劃方案
- 天津匯融商業(yè)管理有限公司招聘筆試題庫2025
- 廣東教育學(xué)院德育研究中心
- 2025至2030中國清潔機(jī)器人市場經(jīng)營效益與投融資發(fā)展?fàn)顩r報(bào)告
- 產(chǎn)品標(biāo)品牌管理制度
- 高壓氣體絕緣設(shè)備中SF6分解產(chǎn)物檢測SO2傳感器的設(shè)計(jì)與應(yīng)用
評論
0/150
提交評論