




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、#include<iostream.h>#include<fstream.h>#include<stdlib.h>#include<string.h>#include<stdio.h>class Stu /構(gòu)建學(xué)生類public:friend void Input(Stu stud) ;friend void Statistic(Stu stud);friend void Lookup(Stu stud) ;friend void Modify(Stu stud) ;friend void Delete(Stu stud) ;frie
2、nd void Output(Stu stud) ;friend void Sort(Stu stud) ;friend void Insert(Stu stud) ;friend void Write(Stu stud,int n); friend int Read(Stu stud);private:char class_020;int num;char name8;float elec;float c_program;float media;float english;float math;float sport;float polity;float average;int order;
3、stud100;void Write(Stu stud,int n) /向文件中寫入數(shù)據(jù)fstream myFile;myFile.open("student.dat",ios:out|ios:binary);if(!myFile)cout<<"student.dat can't open!"<<endl;abort();int count=n;myFile<<count<<endl<<endl;for(int i=0;i<=count;i+)myFile<<studi
4、.class_0<<" "<<studi.num<<" "<<<<" "<<studi.elec<<" "<<studi.c_program<<" "<<studi.media<<" "<<studi.english<<" "<<studi.math<<&qu
5、ot; "<<studi.sport<<" "<<studi.polity<<" "<<studi.average<<endl; myFile.close();int Read(Stu stud) /從文件中讀數(shù)據(jù) fstream myFile; myFile.open("student.dat",ios:in|ios:binary); if(!myFile)cout<<"student.dat can't open!&qu
6、ot;<<endl;abort(); int count; myFile.seekg(0); myFile>>count; for(int i=0;i<=count;i+) myFile>>studi.class_0>>studi.num>>>>studi.elec>>studi.c_program>>studi.media>>studi.english>>studi.math>>studi.sport>>studi.poli
7、ty>>studi.average; myFile.close(); return count ;void Input(Stu stud) /-輸入學(xué)生成績(jī)system("cls"); /*運(yùn)行前清屏*/int i=0;int flag;char sign;cout<<endl<<"=>> 請(qǐng)輸入學(xué)生成績(jī) <<="<<endl;while(sign!='n'&&sign!='N') /*判斷*/ cout<<"班級(jí)
8、:" /*交互輸入*/ cin>>studi.class_0; loop:cout<<"學(xué)號(hào):" cin>>studi.num;int c=0;while(c<i)c+;if(studi.num=studi-c.num)cout<<" 你輸入的學(xué)號(hào)已經(jīng)存在!請(qǐng)重新輸入。"<<endl;goto loop;cout<<"姓名:" cin>>; doflag=0; cout<<"電子技術(shù)成績(jī):&qu
9、ot; cin>>studi.elec; if(studi.elec>100 |studi.elec<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n" else flag=1;while(flag=0); do flag=0; cout<<"C+程序設(shè)計(jì)成績(jī):" cin>>studi.c_program; if(studi.c_program>100 |studi.c_program<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n&quo
10、t; else flag=1;while(flag=0); doflag=0;cout<<"多媒體技術(shù)成績(jī):" cin>>studi.media; if(studi.media>100 |studi.media<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n" else flag=1;while(flag=0); doflag=0; cout<<"大學(xué)英語成績(jī):" cin>>studi.english; if(studi.english>100
11、|studi.english<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n" else flag=1;while(flag=0); doflag=0;cout<<"高等數(shù)學(xué)成績(jī):" cin>>studi.math; if(studi.math>100 |studi.math<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n" else flag=1;while(flag=0); doflag=0; cout<<"大學(xué)體育成績(jī)
12、:" cin>>studi.sport; if(studi.sport>100 |studi.sport<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n" else flag=1;while(flag=0); doflag=0; cout<<"馬克思主義政治經(jīng)濟(jì)學(xué)成績(jī):" cin>>studi.polity; if(studi.polity>100 |studi.polity<1) cout<<"對(duì)不起,請(qǐng)輸入1-100之間的數(shù)字!n&qu
13、ot; else flag=1;while(flag=0); studi.average=(studi.elec+studi.c_program+studi.media+studi.english+studi.math+studi.sport+studi.polity)/7; cout<<"平均分為:"<<studi.average<<endl; cout<<"=>提示:是否繼續(xù)寫入學(xué)生成績(jī)?(Y/N)" cin>>sign; /*輸入判斷*/ i+; Write(stud,i);void
14、 Statistic(Stu stud) /-統(tǒng)計(jì)學(xué)生數(shù)據(jù) system("cls"); /*運(yùn)行前清屏*/ int n=Read(stud);cout<<endl<<"=>> 輸出學(xué)生統(tǒng)計(jì)數(shù)據(jù) <<="<<endl; cout<<"班級(jí)"<<"t"<<"學(xué)號(hào)"<<"t"<<" 姓名"<<"t"<&l
15、t;" 平均分"<<endl;for(int i=0;i<n;i+)cout<<studi.class_0<<"t"<<studi.num<<"t"<<<<"t"<<studi.average<<endl; system("pause"); void Lookup(Stu stud) /-查找學(xué)生成績(jī) system("cls"); /*運(yùn)行前清
16、屏*/ int n=Read(stud);int s; int i=0;cout<<endl<<"=>> 查找學(xué)生成績(jī) <<="<<endl;cout<<"請(qǐng)輸入需要查找學(xué)生的學(xué)號(hào):"<<endl; cin>>s; while(studi.num-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n) cout<<"=>提示:對(duì)不起,無法找到該學(xué)生的信息!"<<endl; /*輸
17、入失敗信息*/ elsecout<<"-"<<endl; cout<<"班級(jí):"<<studi.class_0<<endl; /*輸出該學(xué)生信息*/ cout<<"學(xué)號(hào):"<<studi.num<<endl; cout<<"姓名:"<<<<endl; cout<<"電子技術(shù):"<<studi.elec<<end
18、l; cout<<"C+程序設(shè)計(jì):"<<studi.c_program<<endl; cout<<"多媒體技術(shù):"<<studi.media<<endl; cout<<"大學(xué)英語:"<<studi.english<<endl; cout<<"高等數(shù)學(xué):"<<studi.math<<endl; cout<<"大學(xué)體育:"<<stud
19、i.sport<<endl; cout<<"馬克思主義政治經(jīng)濟(jì)學(xué):"<<studi.polity<<endl; cout<<"平均分:"<<studi.average<<endl;void Modify(Stu stud) /-修改學(xué)生成績(jī) system("cls"); /*運(yùn)行前清屏*/ int n=Read(stud);int s; int i=0;cout<<endl<<"=>> 修改學(xué)生成績(jī) <
20、;<="<<endl;cout<<"請(qǐng)輸入需要修改成績(jī)學(xué)生的學(xué)號(hào):"<<endl; cin>>s; while(studi.num-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n) cout<<"=>提示:對(duì)不起,無該學(xué)生的成績(jī)"<<endl; /*輸入失敗信息*/ elsecout<<"-該學(xué)生的信息-"<<endl; /*格式頭*/ cout<<"班級(jí)&q
21、uot;<<"t"<<"學(xué)號(hào)"<<"t"<<"姓名"<<"t"<<"電子"<<"t"<<"c+"<<"t"<<" 多媒體"<<"t"<<"英語"<<"t"<<"數(shù)
22、學(xué)"<<"t"<<"體育"<<"t"<<"政治"<<"t"<<"平均分"<<endl;cout<<"-"<<endl; cout<<studi.class_0<<"t"<<studi.num<<"t"<<<<&
23、quot;t"<<studi.elec<<"t"<<studi.c_program<<"t"<<studi.media<<"t"<<studi.english<<"t"<<studi.math<<"t"<<studi.sport<<"t"<<studi.polity<<"t"<
24、;<studi.average<<endl;cout<<"請(qǐng)重新輸入該學(xué)生的信息"<<endl;cout<<"班級(jí):"<<endl; /*交互輸入*/ cin>>studi.class_0; cout<<"學(xué)號(hào):"<<endl; cin>>studi.num; cout<<"姓名:"<<endl; cin>>; cout<<"
25、電子技術(shù)成績(jī):"<<endl; cin>>studi.elec; cout<<"C+程序設(shè)計(jì)成績(jī):"<<endl; cin>>studi.c_program; cout<<"多媒體技術(shù)成績(jī):"<<endl; cin>>studi.media; cout<<"大學(xué)英語成績(jī):"<<endl; cin>>studi.english; cout<<"高等數(shù)學(xué)成績(jī):"<
26、;<endl; cin>>studi.math; cout<<"大學(xué)體育成績(jī):"<<endl; cin>>studi.sport; cout<<"馬克思主義政治經(jīng)濟(jì)學(xué)成績(jī):"<<endl; cin>>studi.polity; studi.average=(studi.elec+studi.c_program+studi.media+studi.english+studi.math+studi.sport+studi.polity)/7; cout<<&
27、quot;平均分為:"<<studi.average<<endl; char c; cout<<"是否保存數(shù)據(jù)?(y/n)"<<endl; cin>>c; if(c!='n'&&c!='N') Write(stud,n);void Delete(Stu stud) /-按學(xué)號(hào)查找,刪除學(xué)生信息 system("cls"); /*運(yùn)行前清屏*/ int n=Read(stud);int s; int i=0,j;cout<<en
28、dl<<"=>> 刪除學(xué)生成績(jī) <<="<<endl;cout<<"請(qǐng)輸入需要?jiǎng)h除學(xué)生的學(xué)號(hào):"<<endl; /*交互式問尋*/ cin>>s; while(studi.num-s)!=0&&i<n) i+; /*查找判斷*/ if(i=n) cout<<"=>提示:對(duì)不起,無法找到該學(xué)生"<<endl; /*返回失敗信息*/ elsefor(j=i;j<n-1;j+) /*刪除操作*/ st
29、rcpy(studj.class_0,studj+1.class_0); studj.num=studj+1.num; strcpy(,studj+1.name); studj.elec=studj+1.elec; studj.c_program=studj+1.c_program; studj.media=studj+1.media; studj.english=studj+1.english; studj.math=studj+1.math; studj.sport=studj+1.sport; studj.polity=studj+1.polity;studj.ave
30、rage=studj+1.average;cout<<"=>提示:已成功刪除!"<<endl; /*返回成功信息*/ Write(stud,n-1); void Insert(Stu stud) /-增加學(xué)生成績(jī) system("cls"); /*運(yùn)行前清屏*/int n=Read(stud);char s;cout<<endl<<"=>> 增加學(xué)生成績(jī)<<="<<endl;while(s!='n'&&s!=
31、9;N')cout<<"班級(jí):"<<endl; /*交互輸入*/ cin>>studn.class_0; cout<<"學(xué)號(hào):" cin>>studn.num; cout<<"姓名:" cin>>; cout<<"電子技術(shù)成績(jī):" cin>>studn.elec; cout<<"C+程序設(shè)計(jì)成績(jī):" cin>>studn.c_progra
32、m; cout<<"多媒體技術(shù)成績(jī):" cin>>studn.media; cout<<"大學(xué)英語成績(jī):" cin>>studn.english; cout<<"高等數(shù)學(xué)成績(jī):" cin>>studn.math; cout<<"大學(xué)體育成績(jī):" cin>>studn.sport; cout<<"馬克思主義政治經(jīng)濟(jì)學(xué)成績(jī):" cin>>studn.polity; studn.av
33、erage=(studn.elec+studn.c_program+studn.media+studn.english+ studn.math+studn.sport+studn.polity)/7; cout<<"平均分"<<studn.average;n+; cout<<"=>提示:插入成功!"<<endl; /*返回成功信息*/cout<<"是否繼續(xù)輸入(y/n)"<<endl;cin>>s;Write(stud,n); void Sort
34、(Stu stud) /-按平均分對(duì)學(xué)生成績(jī)記錄項(xiàng)進(jìn)行降序排序 system("cls"); /*運(yùn)行前清屏*/ int i,j,k; float s; char t20;cout<<endl<<"=>> 降序排序成績(jī) <<="<<endl;int n=Read(stud);for(i=0;i<n-1;i+) /*冒泡法排序*/ for(j=0;j<n-1-i;j+) if(studj.average<studj+1.average) strcpy(t,studj+1.clas
35、s_0); strcpy(studj+1.class_0,studj.class_0); strcpy(studj.class_0,t); k=studj+1.num; studj+1.num=studj.num; studj.num=k; strcpy(t,studj+1.name); strcpy(studj+1.name,); strcpy(,t); s=studj+1.elec; studj+1.elec=studj.elec; studj.elec=s; s=studj+1.c_program; studj+1.c_program=studj.
36、c_program; studj.c_program=s; s=studj+1.media; studj+1.media=studj.media; studj.media=s; s=studj+1.english; studj+1.english=studj.english; studj.english=s; s=studj+1.math; studj+1.math=studj.math; studj.math=s; s=studj+1.sport; studj+1.sport=studj.sport; studj.sport=s; s=studj+1.polity; studj+1.poli
37、ty=studj.polity; studj.polity=s; s=studj+1.average; studj+1.average=studj.average; studj.average=s; cout<<"-"<<endl; /*格式頭*/ cout<<"班級(jí)"<<"t"<<"學(xué)號(hào)"<<"t"<<"姓名"<<"t"<<"電子&quo
38、t;<<"t"<<"C+"<<"t"<<"多媒體"<<"t"<<"英語"<<"t"<<"數(shù)學(xué)"<<"t"<<"體育"<<"t"<<"政治"<<"t"<<"平均分&
39、quot;<<"t"<<"名次"<<endl; cout<<"-"<<endl; for(i=0;i<n;i+) /*循環(huán)輸入*/ studi.order=i+1;cout<<studi.class_0<<"t"<<studi.num<<"t"<<<<"t"<<studi.elec<<"
40、t"<<studi.c_program<<"t"<<studi.media<<"t "<<studi.english<<" t"<< studi.math<<"t"<<studi.sport<<"t "<<studi.polity<<"t"<<studi.average<<"t"&
41、lt;<studi.order<<endl; Write(stud,n);void Output(Stu stud) /-顯示全部學(xué)生成績(jī) system("cls"); /*運(yùn)行前清屏*/int n=Read(stud);cout<<endl<<"=>> 顯示全部學(xué)生成績(jī) <<="<<endl;if(!stud)cout<<"沒有記錄" elsecout<<"-"<<endl; /*格式頭*/ cout
42、<<"班級(jí)"<<"t"<<"學(xué)號(hào)"<<"t"<<"姓名"<<"t"<<"電子"<<"t"<<"c+"<<"t"<<"多媒體"<<"t"<<"英語"<<"t&quo
43、t;<<"數(shù)學(xué)"<<"t"<<"體育"<<"t"<<"政治"<<"t"<<"平均分"<<endl;cout<<"-"<<endl; for(int i=0;i<n;i+) /*循環(huán)輸入*/ cout<<studi.class_0<<"t "<<studi.n
44、um<<"t "<<<<"t "<<studi.elec<<" t"<<studi.c_program<<"t "<<studi.media<<"t "<<studi.english<<"t "<< studi.math<<" t"<<studi.sport<<
45、;"t"<<studi.polity<<"t"<<studi.average<<endl; cout<<"-"<<endl; int menu() /*菜單函數(shù)*/ char c; do system("cls"); /*運(yùn)行前清屏*/ cout<<"*n"<<endl; cout<<" -<<歡迎您使用學(xué)生成績(jī)管理系統(tǒng)-n"<<endl; cout<<" *nn"<<endl;/*菜單選擇*/ cout<<" * 【1】輸入學(xué)生成績(jī) * "<<en
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 定制家具現(xiàn)場(chǎng)管理辦法
- 廣西存量資金管理辦法
- 征信機(jī)構(gòu)備案管理辦法
- 能源集團(tuán)采購(gòu)管理辦法
- 財(cái)政出借資金管理辦法
- 2025年護(hù)士執(zhí)業(yè)資格考試題庫實(shí)戰(zhàn):護(hù)理科研方法與實(shí)踐臨床觀察題
- 2025年大學(xué)英語四級(jí)考試模擬試卷聽力專項(xiàng)訓(xùn)練試題
- 完善工程項(xiàng)目管理辦法
- 2025年服裝設(shè)計(jì)師(服裝設(shè)計(jì)時(shí)尚元素)考試試題
- 外聘教師人員管理辦法
- 【公開課】三角形的邊+課件+2025-2026學(xué)年人教版八年級(jí)數(shù)學(xué)上冊(cè)
- 2025年廣東省普通高中學(xué)業(yè)水平合格性考試模擬一歷史試題(含答案)
- 2025年4月自考03346項(xiàng)目管理試題
- 艾梅乙反歧視培訓(xùn)課件
- 2025安全生產(chǎn)月一把手講安全公開課三十二(91P)
- 2025課件:紅色基因作風(fēng)建設(shè)七一黨課
- 在線網(wǎng)課學(xué)習(xí)課堂《人工智能(北理 )》單元測(cè)試考核答案
- 康復(fù)科護(hù)理管理制度
- 2024年度醫(yī)患溝通課件
- 《中國(guó)近現(xiàn)代史綱要(2023版)》課后習(xí)題答案合集匯編
- 國(guó)家綜合性消防救援隊(duì)伍消防員管理規(guī)定
評(píng)論
0/150
提交評(píng)論