




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、設計題目:成績管理系統設計要求實現如下功能:輸入一個班級的學生基本信息(包括學號,姓名,性別,科目),對N門考試的成績進行管理(例N=5) 要求 :1。用戶錄入每個學生每門課程的分數; 2。能夠計算每個學生的各門功課總分和平均分,并按總分將成績排序,顯示每個學生的總分和排名; 3。計算全班各門功課的平均分,顯示沒門課程中低于平均分的每一個學生的學號,姓名,性別,科目,成績等信息; 4。顯示每門科目中,成績在90分以上的學生信息。另外還輸出每門科目中不及格的學生信息; 5。能按姓名或者學號查找,增加,刪除和保存各個學生的信息。6 文件操作源碼:class.cpp文件:#include<io
2、stream>#include<fstream>#include<string>using 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
3、show() cout<<"學號 :"<<no<<endl; cout<<"姓名 :"<<name<<endl; cout<<"性別 :"<<sex<<endl; cout<<endl; void Init() string n; int num,s; cout<<"請輸入學號:"<<endl; cin>>num; cout<<"請輸入姓名
4、:"<<endl; cin>>n; cout<<"請選擇性別:男 0,女 1"<<endl; cin>>s; no=num; name=n; string s1,s2; if(s=0)s1="boy"Student:setSex(s1); else s2="girl"Student:setSex(s2); ;class Classesprivate: string name;public: int number; Student c100; int getNumbe
5、r()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<<"請輸入班級姓名:"<<endl; cin>>nam; cout<<"請輸入班級人數:"<<endl; cin>>number; for(int i=0;i<
6、number;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
7、searchByName() string nam; cout<<"請輸入要查找的學生姓名:"<<endl; cin>>nam; int i; for(i=0;i<number;i+) if(ci.getName()=nam) ci.show(); void serchByNo() int n; cout<<"請輸入要查找的學號;"<<endl; cin>>n; int i; for(i=0;i<100;i+) if(ci.getNo()=n)ci.show();brea
8、k; ;class Courseprivate: string name; int score; public: string getName()return name; void Init() string nam; cout<<"請輸入課程名:"<<endl; cin>>nam; setName(nam); void setName(string nam)name=nam;class OpreatorCoupublic: Classes c1; Course co20; int Mark100100,StuAll100,n; void
9、 setN(int nn)n=nn; int getN()return n; int getMark()return Mark100100; Course getCo()return co20; void IN() cout<<"請輸入課程數量:"<<endl; cin>>n; for(int i=0;i<n;i+) coi.Init(); ofstream outS; outS.open("course.txt",ios:out); if(!outS) cerr<<"文件打不開"
10、<<endl; abort(); for(int i=0;i<n;i+)outS<<coi.getName()<<endl;outS.close(); void input(Course co20,int n,Student c, int number ) int s; for(int i=0;i<n;i+) for(int j=0;j<number;j+) cout<<"請輸入"<<cj.getName()<<"的"<<coi.getName()<
11、;<"成績"<<endl; cin>>s;if(s<0|s>100)cout<<"你輸入的成績有誤請重新輸入!(成績范圍為0-100!)"<<endl; j=j-1;else Markij=s; ofstream out; out.open("score.txt",ios:out); if(!out) cerr<<"文件打不開"<<endl; abort(); for(int i=0;i<n;i+) out<<
12、;coi.getName(); for(int j=0;j<number;j+) out<<" "<<Markij<<" " out<<endl; out.close(); void CountStu(int Mark100100,int number,int n)for(int i=0;i<number;i+)int s=0;for(int j=0;j<n;j+)s=s+Markji;StuAlli=s; void CountCouAvg(int Mark100100,Student c
13、,int number,Course co,int n) float CouAll10; for(int i=0;i<n;i+) float s=0.0; for(int j=0;j<number;j+) s=s+Markij; CouAlli=s/n; for(int i=0;i<n;i+)cout<<coi.getName()<<"的平均分是:"<<(CouAlli)<<endl; for(int i=0;i<n;i+) for(int j=0;j<number;j+) if(Markij&l
14、t;CouAlli) cout<<cj.getName()<<"的"<<coi.getName()<<"成績小于平均分。"<<endl; void showUnpass(int Mark100100,Student c,int number,Course co,int n) for(int i=0;i<n;i+) for(int j=0;j<number;j+) if(Markij<60) cout<<cj.getName()<<"的"
15、;<<coi.getName()<<"成績不及格!"<<endl; void showGood(int Mark100100,Student c,int number,Course co,int n) for(int i=0;i<n;i+) for(int j=0;j<number;j+) if(Markij>90) cout<<cj.getName()<<"的"<<coi.getName()<<"成績優秀!成績為:"<<
16、Markij<<endl; void order(Student c,int number,int StuAll,int n) for(int i=0;i<number;i+) int sum=0;Student stu; if(StuAlli<StuAlli+1) sum=StuAlli; StuAlli=StuAlli+1; StuAlli+1=sum; stu=ci; ci=ci+1; ci+1=stu; for(int i=0;i<number;i+) cout<<ci.getName()<<"的排名是:"<
17、;<(i+1)<<" 總分:"<<StuAlli<<endl; ofstream out; out.open("studentscore.txt",ios:out); if(!out) cerr<<"文件打不開"<<endl; abort(); for(int i=0;i<number;i+)out<<ci.getName()<<" "<<StuAlli<<" "<<
18、;(i+1)<<endl;out.close(); void Delete(int Mark100100,Student c,int number,int n) string na; cout<<"請輸入要刪除的學生姓名:"<<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;k<number;k+) Markjk=
19、Markjk+1; elsecout<<"您要刪除的學生不存在!"<<endl; cout<<"刪除成功!"<<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
20、; in>>sno>>sname>>sex; while(!in.eof() i=i+1; ci.setNo(sno); ci.setName(sname); ci.setSex(sex); in>>sno>>sname>>sex; c1.setStudent(c); c1.setNumber(i+1); in.close(); char nam20; ifstream ins("course.txt",ios:in); if(!ins) cerr<<"文件打不開"<
21、;<endl; abort(); int j=-1; ins>>nam; while(!ins.eof() j+; coj.setName(nam); ins>>nam; setN(j+1); ins.close(); cout<<"讀取文件完畢,請繼續操作!"<<endl; ;主函數:#include"class.cpp"#include<iostream> void showMenue()cout<<"*學生成績管理系統*"<<endl;co
22、ut<<"請選擇功能:"<<endl;cout<<"1 輸入學生成績"<<endl;cout<<"2 根據成績排序輸出。"<<endl;cout<<"3 顯示成績大于90分的學生"<<endl;cout<<"4 顯示不及格學生"<<endl;cout<<"5 按姓名查找"<<endl;cout<<"6 按學號查找
23、"<<endl;cout<<"7 顯示成績小于課程平均分的學生"<<endl;cout<<"8 刪除學生信息"<<endl;cout<<"0 退出"<<endl;cout<<endl; void main()int choice,input ;cout<<"請選擇初始化方式:1.手動輸入 2.從文件讀取"<<endl;cin>>input;OpreatorCou op;if(input=1) op.c1.Init();op.IN();if(in
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江省杭州八中2025屆高三下學期期末學習能力診斷數學試題含解析
- 吉林省白城市洮南十中2024-2025學年高三第五次教學質量檢測試題考試數學試題含解析
- 新疆維吾爾自治區2025年初三下學期第四次月考英語試題含答案
- 統編版二年級語文下冊期末測試卷(D)(含答案)
- 部編版2024-2025學年五下語文期中模擬卷(1-4)(有答案)
- 收割機操作員勞務合同
- 工程承包合同稅務處理框架協議
- 合同履行擔保制度探索與實踐
- 中醫內科學與中醫臨證方法課件
- 3《這是我們的校園》公開課一等獎創新教學設計(表格式)-1
- “皖南八校”2024-2025學年高一第二學期期中考試-生物(乙)及答案
- 血站安全與衛生培訓課件
- 巖土真實考試題及答案
- 2024年全國中學生生物學聯賽試題含答案
- 數獨題目高級50題(后附答案)
- 全媒體運營師-國家職業標準(2023年版)
- 2023年浙江高職考數學真題卷
- 深圳市失業人員停止領取失業保險待遇申請表樣表
- JIS G4305-2021 冷軋不銹鋼板材、薄板材和帶材
- 附件:湖北省重點水利水電工程施工招標投標評分標準-鄂水
- 充填灌漿試驗施工方案
評論
0/150
提交評論