學(xué)生成績(jī)管理系統(tǒng) C++_第1頁(yè)
學(xué)生成績(jī)管理系統(tǒng) C++_第2頁(yè)
學(xué)生成績(jī)管理系統(tǒng) C++_第3頁(yè)
學(xué)生成績(jī)管理系統(tǒng) C++_第4頁(yè)
學(xué)生成績(jī)管理系統(tǒng) C++_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、設(shè)計(jì)題目:成績(jī)管理系統(tǒng)設(shè)計(jì)要求實(shí)現(xiàn)如下功能:輸入一個(gè)班級(jí)的學(xué)生基本信息(包括學(xué)號(hào),姓名,性別,科目),對(duì)N門考試的成績(jī)進(jìn)行管理(例N=5)要求 :1.用戶錄入每個(gè)學(xué)生每門課程的分?jǐn)?shù);2。能夠計(jì)算每個(gè)學(xué)生的各門功課總分和平均分,并按總分將成績(jī)排序,顯示每個(gè)學(xué)生的總分和排名;3.計(jì)算全班各門功課的平均分,顯示沒門課程中低于平均分的每一個(gè)學(xué)生的學(xué)號(hào),姓名,性別,科目,成績(jī)等信息;4.顯示每門科目中,成績(jī)?cè)?0分以上的學(xué)生信息.另外還輸出每門科目中不及格的學(xué)生信息;5.能按姓名或者學(xué)號(hào)查找,增加,刪除和保存各個(gè)學(xué)生的信息。6 文件操作源碼:class.cpp文件:includeiostreamincl

2、udefstream#includestringusing namespace std;class Student private: int no; string name,sex; public: string getName()return name;string getSex()return sex; int getNo()return no; void setSex(string s)sex=s;void setNo(int sno)no=sno;void setName(string nam)name=nam; void show() cout”學(xué)號(hào) :"<no<

3、;<endl; cout”姓名 :"<<nameendl; cout”性別 :”sexendl; coutendl; void Init() string n; int num,s; cout”請(qǐng)輸入學(xué)號(hào):"endl; cin>num; cout<”請(qǐng)輸入姓名:”endl; cinn; cout<”請(qǐng)選擇性別:男 0,女 1"endl; cin>s; no=num; name=n; string s1,s2; if(s=0)s1="boy”;Student:setSex(s1); else s2=”girl”;S

4、tudent::setSex(s2); ;class Classesprivate: string name;public: int number; Student c100; int getNumber()return number; Student getStu()return c100; void setStudent(Student a100)c100=a100; void setNumber(int num)number=num; void Init() number=0; string nam; cout"請(qǐng)輸入班級(jí)姓名:”<<endl; cin>nam

5、; cout”請(qǐng)輸入班級(jí)人數(shù):”<endl; cin>>number; for(int i=0;inumber;i+) ci.Init(); ofstream out; out。open(”student.txt”,ios:out); if(!out) cerr<"文件打不開”endl; abort(); for(int i=0;i<number;i+)out<ci。getNo()” ”ci。getName()” "<ci.getSex()<endl;out.close(); void searchByName() strin

6、g nam; cout<”請(qǐng)輸入要查找的學(xué)生姓名:"endl; cin>nam; int i; for(i=0;i<number;i+) if(ci.getName()=nam) ci。show(); void serchByNo() int n; cout”請(qǐng)輸入要查找的學(xué)號(hào);"<endl; cin>n; int i; for(i=0;i100;i+) if(ci.getNo()=n)ci.show();break; ;class Courseprivate: string name; int score;public: string get

7、Name()return name; void Init() string nam; cout"請(qǐng)輸入課程名:”endl; cinnam; setName(nam); void setName(string nam)name=nam;;class OpreatorCoupublic: Classes c1; Course co20; int Mark100100,StuAll100,n; void setN(int nn)n=nn; int getN()return n; int getMark()return Mark100100; Course getCo()return co2

8、0; void IN() cout<”請(qǐng)輸入課程數(shù)量:”<endl; cin>n; for(int i=0;in;i+) coi。Init(); ofstream outS; outS.open("course。txt”,ios:out); if(!outS) cerr<”文件打不開”endl; abort(); for(int i=0;in;i+)outScoi。getName()endl;outS。close(); void input(Course co20,int n,Student c, int number ) int s; for(int i=0

9、;i<n;i+) for(int j=0;jnumber;j+) cout”請(qǐng)輸入”<<cj。getName()"的”<coi。getName()<"成績(jī)”<endl; cin>s;if(s0|s100)cout”你輸入的成績(jī)有誤請(qǐng)重新輸入!(成績(jī)范圍為0100!)”<endl; j=j1;else Markij=s; ofstream out; out。open("score。txt”,ios:out); if(!out) cerr<<”文件打不開"<endl; abort(); for

10、(int i=0;i<n;i+) outcoi。getName(); for(int j=0;jnumber;j+) out<” ”Markij<” ”; outendl; out。close(); void CountStu(int Mark100100,int number,int n)for(int i=0;inumber;i+)int s=0;for(int j=0;jn;j+)s=s+Markji;StuAlli=s; void CountCouAvg(int Mark100100,Student c,int number,Course co,int n) floa

11、t CouAll10; for(int i=0;in;i+) float s=0。0; for(int j=0;jnumber;j+) s=s+Markij; CouAlli=s/n; for(int i=0;in;i+)cout<coi。getName()<"的平均分是:"<(CouAlli)<endl; for(int i=0;in;i+) for(int j=0;j<number;j+) if(Markij<CouAlli) cout<<cj。getName()<"的”coi。getName()”成績(jī)小于

12、平均分。"endl; void showUnpass(int Mark100100,Student c,int number,Course co,int n) for(int i=0;i<n;i+) for(int j=0;jnumber;j+) if(Markij60) cout<cj。getName()<”的”<coi。getName()”成績(jī)不及格!”<endl; void showGood(int Mark100100,Student c,int number,Course co,int n) for(int i=0;i<n;i+) for

13、(int j=0;j<number;j+) if(Markij90) cout<cj.getName()"的”<<coi。getName()<<”成績(jī)優(yōu)秀!成績(jī)?yōu)椋骸盡arkij<endl; void order(Student c,int number,int StuAll,int n) for(int i=0;inumber;i+) int sum=0;Student stu; if(StuAlli<StuAlli+1) sum=StuAlli; StuAlli=StuAlli+1; StuAlli+1=sum; stu=ci; c

14、i=ci+1; ci+1=stu; for(int i=0;inumber;i+) cout<ci。getName()”的排名是:”(i+1)<<” 總分:”<StuAlli<<endl; ofstream out; out.open(”studentscore.txt”,ios::out); if(!out) cerr”文件打不開"endl; abort(); for(int i=0;inumber;i+)out<ci。getName()” "StuAlli<" ”<(i+1)endl;out。close()

15、; void Delete(int Mark100100,Student c,int number,int n) string na; cout<"請(qǐng)輸入要?jiǎng)h除的學(xué)生姓名:”endl; cin>na; for(int i=0;i<number;i+) if(ci。getName()=na) for(i;i<number;i+) ci=ci+1; for(int j=0;j<n;j+) for(int k=i;knumber;k+) Markjk=Markjk+1; elsecout<"您要?jiǎng)h除的學(xué)生不存在!”endl; cout<”

16、刪除成功!”<endl; void ReadText(Student c,int number,Course co,int n) char sname30,sex30; int sno; ifstream in(”student。txt",ios::in); if(!in) cerr<”文件打不開”<<endl; abort(); int i=-1; insno>>snamesex; while(!in。eof()) i=i+1; ci。setNo(sno); ci。setName(sname); ci。setSex(sex); in>sno

17、snamesex; c1。setStudent(c); c1。setNumber(i+1); in.close(); char nam20; ifstream ins(”course。txt",ios::in); if(!ins) cerr”文件打不開"endl; abort(); int j=1; ins>nam; while(!ins.eof() j+; coj.setName(nam); ins>nam; setN(j+1); ins。close(); cout<<”讀取文件完畢,請(qǐng)繼續(xù)操作!”<<endl; ;主函數(shù):#inclu

18、de”class。cpp"includeiostream void showMenue()cout<"*學(xué)生成績(jī)管理系統(tǒng)*"<<endl;cout”請(qǐng)選擇功能:”<endl;cout”1 輸入學(xué)生成績(jī)”endl;cout<”2 根據(jù)成績(jī)排序輸出?!?lt;endl;cout<”3 顯示成績(jī)大于90分的學(xué)生”<endl;cout<”4 顯示不及格學(xué)生”endl;cout<”5 按姓名查找"<endl;cout”6 按學(xué)號(hào)查找”endl;cout<”7 顯示成績(jī)小于課程平均分的學(xué)生”<e

19、ndl;cout<”8 刪除學(xué)生信息”endl;cout”0 退出"endl;cout<endl;void main()int choice,input ;cout<"請(qǐng)選擇初始化方式:1。手動(dòng)輸入 2。從文件讀取”<endl;cininput;OpreatorCou op;if(input=1) op。c1.Init();op。IN();if(input=2)op。ReadText(op.c1。c,op.c1。getNumber(),op.co,op。getN()); do showMenue(); cinchoice; switch(choice) case 1: o

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論