




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C#學(xué)生管理系統(tǒng)1設(shè)計(jì)一個(gè)windows應(yīng)用程序,在該課程中定義一個(gè)(class學(xué)生類)和(class班級(jí)類),以處理每個(gè)學(xué)生(int學(xué)號(hào)),(string姓名),(double語(yǔ)文,數(shù)學(xué)和英語(yǔ))三門課程的期末考試成績(jī),要求:1、能根據(jù)姓名查詢指定學(xué)生的總成績(jī)(學(xué)生類中double數(shù)學(xué)+語(yǔ)文+英語(yǔ)newclassstudentstudent.sum方法1sum=+++)2、能統(tǒng)計(jì)單科最高分(該科班級(jí)最高分)3、能統(tǒng)計(jì)班級(jí)總分前三名的名單4、能統(tǒng)計(jì)指定課程在不同分?jǐn)?shù)段的學(xué)生人數(shù)百分比提示:1、定義一個(gè)Student類,包含字段(學(xué)號(hào),姓名,語(yǔ)文成績(jī),數(shù)學(xué)成績(jī),英語(yǔ)成績(jī))和屬性(總成績(jī))2、定義一個(gè)Grade班級(jí)類,包含一個(gè)Student類型的數(shù)組(用于保存全班學(xué)生的信息)以及實(shí)現(xiàn)上述要求的方法3、設(shè)計(jì)用戶界面,首先能輸入一個(gè)學(xué)生的信息(輸入成績(jī)),但點(diǎn)擊“添加”按鈕時(shí),將信息加入到班級(jí)對(duì)象的學(xué)生數(shù)組中。當(dāng)點(diǎn)擊“完成”按鈕時(shí)調(diào)用班級(jí)類的方法來(lái)顯示各種統(tǒng)計(jì)結(jié)果。當(dāng)用戶輸入學(xué)生姓名點(diǎn)擊“查詢”按鈕顯示該生的總成績(jī)。新建student類。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceWindowsFormsApplication1{classStudent{//定義學(xué)號(hào),姓名,語(yǔ)文成績(jī),數(shù)學(xué)成績(jī),英語(yǔ)成績(jī),總成績(jī)
publicstringstuNo;publicstringname;publicdoublechinese;publicdoublemath;publicdoubleenglish;publicdoublesumScore{get{returnchinese+math+english;}}}}新建Grade類namespaceWindowsFormsApplication1{classGrade:Student{intsnums;publicStudent[]stu=newStudent[50];//定義構(gòu)造函數(shù)
publicGrade(){snums=0;}publicvoidaddstu(Students)//添加數(shù)據(jù)
{stu[snums]=s;snums++;}publicintsearchstu(stringname)//查詢數(shù)據(jù)
{inti;for(i=0;i<snums;i++){if(stu[i].name==name)break;}if(i==snums)return-1;elsereturni;}新建Grade類publicvoidProThree(){//給所有成績(jī)排序,用后面實(shí)現(xiàn)前三名的排名(主要利用排序?qū)崿F(xiàn)對(duì)成績(jī)的排名)
for(inti=0;i<snums;i++){intk=i;for(intj=i+1;j<snums;j++)if(stu[j].sumScore>stu[k].sumScore)k=j;if(k!=i){Studenttemp;temp=stu[k];stu[k]=stu[i];stu[i]=temp;}}}新建Grade類
//顯示單科成績(jī)的最高分
publicintHighScore(intk)//構(gòu)造一個(gè)函數(shù)實(shí)現(xiàn)對(duì)分?jǐn)?shù)的比較
{intp=0;if(k==0){for(inti=1;i<snums;i++)if(stu[i].math>stu[p].math)p=i;}elseif(k==1){for(inti=1;i<snums;i++)if(stu[i].chinese>stu[p].chinese)p=i;}else{for(inti=1;i<snums;i++)if(stu[i].english>stu[p].english)p=i;}returnp;}新建Grade類
publicstringgetHL(){//調(diào)用HighScore函數(shù)
stringMaxer="";Maxer+="單科語(yǔ)文最高分:"+stu[HighScore(1)].name+"\n";Maxer+="單科數(shù)學(xué)最高分:"+stu[HighScore(0)].name+"\n";Maxer+="單科英語(yǔ)最高分:"+stu[HighScore(2)].name+"\n";returnMaxer+"\n";}//全班的平均成績(jī)
publicstringSumScore(){doublesum=0;doubleavg=0;for(inti=0;i<snums;i++){sum=sum+stu[i].sumScore;}avg=sum/snums;return"班級(jí)總分平均分:"+avg;}新建Grade類
//語(yǔ)文成績(jī)各分?jǐn)?shù)段百分比
publicstringPerC(){doubleper1,per2,per3,per4,per5;doublesumC1=0,sumC2=0,sumC3=0,sumC4=0,sumC5=0;for(inti=0;i<snums;i++){//此算法也可以用switch...case:
if((stu[i].chinese>90)&&(stu[i].chinese<=100)){sumC1++;}elseif((80<=stu[i].chinese)&&(stu[i].chinese<90)){sumC2++;}elseif((70<=stu[i].chinese)&&(stu[i].chinese<80)){sumC3++;}elseif((60<=stu[i].chinese)&&(stu[i].chinese<70)){sumC4++;}else{sumC5++;}}per1=sumC1/snums;per2=sumC2/snums;per3=sumC3/snums;per4=sumC4/snums;per5=sumC5/snums;return"語(yǔ)文成績(jī)百分比:"+"\n"+"90~100:"+per1+"80~90:"+per2+"80~70:"+per3+"70~60:"+per4+"60以下的:"+per5;}新建Grade類
//數(shù)學(xué)成績(jī)各分?jǐn)?shù)段百分比
publicstringPerM(){doubleper1,per2,per3,per4,per5;doublesumC1=0,sumC2=0,sumC3=0,sumC4=0,sumC5=0;for(inti=0;i<snums;i++){//此算法也可以用switch...case:
if((stu[i].math>90)&&(stu[i].math<=100)){sumC1++;}elseif((80<=stu[i].math)&&(stu[i].math<90)){sumC2++;}elseif((70<=stu[i].math)&&(stu[i].math<80)){sumC3++;}elseif((60<=stu[i].math)&&(stu[i].math<70)){sumC4++;}else{sumC5++;}}per1=sumC1/snums;per2=sumC2/snums;per3=sumC3/snums;per4=sumC4/snums;per5=sumC5/snums;returnstring.Format("數(shù)學(xué)成績(jī)百分比:"+"\n"+"90~100:"+per1+"80~90:"+per2+"80~70:"+per3+"70~60:"+per4+"60以下的:"+per5);}新建Grade類publicstringPerE(){//英語(yǔ)成績(jī)各分?jǐn)?shù)段百分比doubleper1,per2,per3,per4,per5;doublesumC1=0,sumC2=0,sumC3=0,sumC4=0,sumC5=0;for(inti=0;i<snums;i++){if((stu[i].english>90)&&(stu[i].english<=100)){sumC1++;}elseif((80<=stu[i].english)&&(stu[i].english<90)){sumC2++;}elseif((70<=stu[i].english)&&(stu[i].english<80)){sumC3++;}elseif((60<=stu[i].english)&&(stu[i].english<70)){sumC4++;}else{sumC5++;}}per1=sumC1/snums;per2=sumC2/snums;per3=sumC3/snums;per4=sumC4/snums;per5=sumC5/snums;returnstring.Format("數(shù)學(xué)成績(jī)百分比:"+"\n"+"90~100:"+per1+"80~90:"+per2+"80~70:"+per3+"70~60:"+per4+"60以下的:"+per5);}}}Form1.cspublicpartialclassForm1:Form{Gradeg1=newGrade();publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){//實(shí)現(xiàn)添加數(shù)據(jù)按鈕
Students=newStudent();s.stuNo=textBox1.Text;=textBox2.Text;s.chinese=Convert.ToDouble(textBox3.Text);s.math=Convert.ToDouble(textBox4.Text);s.english=Convert.ToDouble(textBox5.Text);g1.addstu(s);MessageBox.Show("添加成功");}新建Grade類privatevoidbutton2_Click(objectsender,EventArgse){ClearInfo();//調(diào)用實(shí)現(xiàn)清屏函數(shù)從而實(shí)現(xiàn)清屏。
}privatevoidClearInfo(){//構(gòu)造實(shí)現(xiàn)清屏函數(shù)。
textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();textBox5.Clear();textBox6.Clear();}privatevoidbutton4_Click(objectsender,EventArgse){//實(shí)現(xiàn)查詢按鈕,在TextBox6上顯示
intpos=g1.searchstu(this.textBox6.Text);if(pos!=-1){label6.Text=this.textBox6.Text+"的總成績(jī):"+g1.stu[pos].sumScore;}else{MessageBox.Show("不存在這個(gè)人!");}}新建Grade類privatevoidbutton3_Click(objectsender,EventArgse){//實(shí)現(xiàn)完成按鈕
label6.Text="班級(jí)總分前三名的名單:"+"\n";for(inti=0;i<3;i++){g1.ProThree();label6.Text+=g1.stu[i].name
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能機(jī)器人生產(chǎn)制造合同
- 廣東省珠海市斗門區(qū)2024-2025學(xué)年八年級(jí)上學(xué)期期末生物學(xué)試題(含答案)
- 酒店行業(yè)閱讀題及答案
- 超級(jí)計(jì)算中心建設(shè)運(yùn)營(yíng)合同
- 頂入法法的橋、涵工程 現(xiàn)場(chǎng)質(zhì)量檢驗(yàn)報(bào)告單
- 商業(yè)綜合體設(shè)計(jì)與施工合同
- 教育培訓(xùn)行業(yè)學(xué)員個(gè)人信息保護(hù)合同
- 安徒生童話故事中的道德評(píng)析
- 農(nóng)業(yè)產(chǎn)業(yè)化發(fā)展方案
- 高中英語(yǔ)單詞復(fù)習(xí)策略及實(shí)踐教案
- ISO27001標(biāo)準(zhǔn)培訓(xùn)課件
- 《審核員培訓(xùn)教程》課件
- 《光催化技術(shù)》課件
- 辦公打印機(jī)的租賃合同范文
- 危大工程監(jiān)理巡視檢查用表
- 大埔縣生活垃圾填埋場(chǎng)應(yīng)急加固及滲濾液處理站擴(kuò)容改造工程環(huán)境影響報(bào)告
- 餐飲行業(yè)儀容儀表標(biāo)準(zhǔn)規(guī)范
- 110kVGIS組合電器(含PT)試驗(yàn)作業(yè)指導(dǎo)書
- 進(jìn)貨檢驗(yàn)報(bào)告單
- 醫(yī)院外科腦疝患者的應(yīng)急預(yù)案演練腳本
- HSK標(biāo)準(zhǔn)教程5下-課件-L1
評(píng)論
0/150
提交評(píng)論