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

下載本文檔

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

文檔簡介

C#M程設(shè)計姓名:班級:學(xué)號:指導(dǎo)老師:簡介該系統(tǒng)是用Visua?Studio2010和Access?2007通過C#S言進行相關(guān)代碼的編寫,生成相關(guān)程序。學(xué)生成績管理系統(tǒng)是構(gòu)建于Visual?C#.NET平臺上的Windows應(yīng)用程序。本文描述的是基于Windows環(huán)境的學(xué)生成績管理系統(tǒng),主要工具Microsoft?Visual?Studio?2010毀計窗體,Access?2007建立數(shù)據(jù)庫,?學(xué)生成績管理管理系統(tǒng)為用戶提供充足的信息和快捷的查詢手段,實現(xiàn)學(xué)生基本信息、成績的錄入,刪除,查詢,維護以及成績的統(tǒng)計分析等幾方面的功能,是現(xiàn)實問題的迫切要求。?本篇報告介紹一個學(xué)生信息管理系統(tǒng)的從分析到設(shè)計最后到開發(fā)的全過程為,給出了學(xué)生信息管理系統(tǒng)的設(shè)計和技術(shù)實現(xiàn)的過程,特別在細節(jié)上分析功能和函數(shù)的實現(xiàn)思想。涉及到學(xué)生信息管理的基本功能在本報告中都有相應(yīng)的描述。管理信息系統(tǒng)正在向著網(wǎng)絡(luò)化、智能化和集成化等趨勢發(fā)展。學(xué)生成績管理系統(tǒng)是為了更好的管理學(xué)生考試成績而開發(fā)的數(shù)據(jù)管理軟件。它對于一個學(xué)校是不可缺少的重要部分,它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要。?在這次的課程設(shè)計中,讓我了解到MicrosoftVisualStudio2010,同時學(xué)習(xí)了Access數(shù)據(jù)庫的建立和連接與導(dǎo)入。能在VisualC#.NET平臺上進行Access數(shù)據(jù)庫的修改與控制,將C#語句與SQL語句混合使用,成功的完成了學(xué)生成績管理系統(tǒng)的整體設(shè)計,加深鞏固了選擇的條件語句,還有曾經(jīng)學(xué)習(xí)過的基本運算語句,同時也為以后的進一步學(xué)習(xí)墊下了了良好的基礎(chǔ)。目錄TOC\o"1-5"\h\z第一章緒論4設(shè)計目的4開發(fā)工具選擇4開發(fā)環(huán)境4第二章需求分析5系統(tǒng)目標5功能需求分析6性能需求分析6第三章總體設(shè)計73.1設(shè)計概述73.1功能模塊設(shè)計7第四章數(shù)據(jù)庫設(shè)計8數(shù)據(jù)庫需求分析8數(shù)據(jù)庫表設(shè)計9第五章詳細設(shè)計10系統(tǒng)程序流程圖11系統(tǒng)主要功能模塊13系統(tǒng)登錄13學(xué)生登錄模塊15管理員登錄模塊20第六章總結(jié)41第一章緒論?課程設(shè)計目的?本次課程設(shè)計的目的是使學(xué)生能熟練掌握簡單的簡單Windows窗體應(yīng)用程序的設(shè)計和.net的應(yīng)用,復(fù)習(xí)熟練基本運算符,和基本的條件語句、判斷語句,將Access的使用和Microsoft?Visual?Studio?2010的使用結(jié)合起來,希望通過本次的課程設(shè)計鍛煉我們使用C崎言解決實際問題的能力。??系統(tǒng)開發(fā)環(huán)境?系統(tǒng)開發(fā)平臺:Microsoft?Visual?Studio?2010卷統(tǒng)開發(fā)語言C#?數(shù)據(jù)庫管理軟件:Access錦統(tǒng)開發(fā)程序?本系統(tǒng)后臺數(shù)據(jù)庫采用Access數(shù)據(jù)庫,該數(shù)據(jù)庫系統(tǒng)在安全性、準確性和運行速度方面有絕對的優(yōu)勢,并且處理數(shù)據(jù)量大,效率高;前臺采用Microsoft?公司的Visual?Studio?2010作為主要開發(fā)工具,可與Access?2007數(shù)據(jù)庫無縫鏈接。?TB告主要內(nèi)容?本報告詳細的介紹了學(xué)生信息管理系統(tǒng)的開發(fā)過程,主要涉及到的工作如下:系統(tǒng)的需求分析、系統(tǒng)的總體設(shè)計設(shè)計思路、系統(tǒng)的數(shù)據(jù)庫設(shè)計、系統(tǒng)各模塊的詳細設(shè)計、系統(tǒng)運行測試。第二章需求分析系統(tǒng)設(shè)計目標?(1)登錄模塊中,有不同的權(quán)限設(shè)置,分為學(xué)生登錄和管理員登錄(2)學(xué)生用戶可根據(jù)不同的用戶名和相應(yīng)的密碼進行登錄,并可修改密碼。(3)管理員可以根據(jù)不同的用戶名和相應(yīng)的密碼進行登錄,并可修改密碼。?(4)學(xué)生界面中學(xué)生可以按照姓名,學(xué)號,郵箱來查詢成績(5)管理員界面中管理員可以實現(xiàn)學(xué)生成績的錄入,刪除,修改,查詢,成績的分析,將成績導(dǎo)出到Excel表中,還可以根據(jù)成績畫出柱狀圖。?功能需求分析????本系統(tǒng)的功能需求分析如下:?(1)濘生密碼修改:學(xué)生可在成功登錄后對自己的密碼進行修改,以防個人信息外泄。?(2)濘生成績查詢:學(xué)生根據(jù)姓名,學(xué)號,郵箱進行查詢。?(3)?學(xué)生成績和信息的錄入:用于學(xué)生成績管理,錄入學(xué)生成績和學(xué)生個人信息,也可以實現(xiàn)對成績的其他操作。?性能需求分析?(1)?登錄、用戶界面需求:簡潔、易懂、易用、友好的用戶界面。?(2)殘全保密性需求:只有憑借用戶名和密碼登陸系統(tǒng),才能進行信息的管理,同時也可以進行密碼修改。?(3)?數(shù)據(jù)分析需求:可根據(jù)學(xué)生要求進行條件查詢,分不同的姓名,學(xué)號,郵箱進行相應(yīng)查詢。?(4)?數(shù)據(jù)統(tǒng)計要求:可對學(xué)生成績和個人信息進行添加更改和刪除。第三章總體設(shè)計?設(shè)計總體概述?根據(jù)需求把整個系統(tǒng)分化成不同的模塊,每個模塊完成一個特定的子功能。把這些模塊結(jié)合起來組成一個整體。逐一實現(xiàn)各個功能;?功能模塊設(shè)計(1)登錄模塊,根據(jù)不同權(quán)限,鏈接數(shù)據(jù)庫,然后登錄。(2)管理員登錄模塊,在此模塊中有成績查詢,修改,刪除,添加,分析,導(dǎo)出Excel表,繪出矩形圖,退出登錄,幫助,密碼修改等功能模塊。(3)學(xué)生登錄模塊,在此模塊中有查詢,退出登錄,幫助,密碼修改等模塊功能(4)成績查詢模塊,連接數(shù)據(jù)庫,用SELEC語句實現(xiàn)(5)成績修改模塊,連接數(shù)據(jù)庫,用UPDATES句實現(xiàn)(6)成績刪除模塊,連接數(shù)據(jù)庫,用DELETE句實現(xiàn)(7)成績添加模塊,連接數(shù)據(jù)庫,用INSER幫句插入實現(xiàn)(8)成績分析模塊,連接數(shù)據(jù)庫,讀出數(shù)據(jù)庫中的成績,按照個門

成績分別求出他們的最高分,最低分,平均分等。(9)導(dǎo)出Excel表模塊,將想要保存的信息導(dǎo)出到Excel表中(10)繪出矩形圖模塊,根據(jù)成績分析模塊繪出矩形圖。(11)退出登錄模塊,退出當(dāng)前登錄,切換用戶(12)幫助模塊,給與一些非法操作的解決辦法(13)密碼修改模塊,修改當(dāng)前用戶的密碼第四章數(shù)據(jù)庫設(shè)計4.1數(shù)據(jù)庫需求分析?數(shù)據(jù)庫中存儲學(xué)生的基本信息和成績、管理員和學(xué)生的登錄號和密碼。4.2數(shù)據(jù)庫的E-R圖如下密碼,所建立的數(shù)據(jù)庫表如下:14.2數(shù)據(jù)庫的E-R圖如下密碼,所建立的數(shù)據(jù)庫表如下:1、管理員表:2、學(xué)生表:3、學(xué)生基本信息和成績表:第五章詳細設(shè)計

?系統(tǒng)總體結(jié)構(gòu)?經(jīng)過對系統(tǒng)的需求分析,學(xué)生成績管理系統(tǒng)主要劃分為兩個部分:學(xué)生成績查詢,管理員模塊。成績管理系統(tǒng)系統(tǒng)程序模塊流產(chǎn)——.?—1「簪】碼修改詢法口幫助錄模塊退出登錄學(xué)b登錄模塊5.1.1學(xué)成績管理系統(tǒng)a成成績刪除幫助成到績分Ex成

詢析cel,碼修改詢法口幫助錄模塊退出登錄學(xué)b登錄模塊5.1.1學(xué)成績管理系統(tǒng)a成成績刪除幫助成到績分Ex成

詢析cel,1r表退出繪出矩形圖VJV-/<.1.2管理員登錄LlP匚1一~匚A幫助退出登錄密碼修改系統(tǒng)主要功能模塊系統(tǒng)登錄模塊登錄:代碼:privatevoidbuttonLogin_Click(objectsender,EventArgse)(.//判斷登錄狀態(tài)并彈出對應(yīng)提示框(MessageBox.Show(請輸入用戶名或密碼");}else((stringuser=BoxUser.Text;stringpassword=BoxPassword.Text;strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();OleDbCommandobjCommand=newOleDbCommand("select*fromstudent",objConnection);DataSetds=newDataSet();OleDbDataAdaptersda=newOleDbDataAdapter("select*fromstudent",objConnection);;sda.Fill(ds,"student");OleDbDataReaderreader=objCommand.ExecuteReader();inti;for(i=0;i<ds.Tables["student"].Rows.Count;i++)(reader.Read();if(reader["username"].Equals(user)&&reader["password"].Equals(password))(this.DialogResult=DialogResult.OK;this.Close();break;}}if(i==ds.Tables["student"].Rows.Count)MessageBox.Show(用戶名或者密碼輸入有誤!");//關(guān)閉Reader.reader.Close();objConnection.Close();}{strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();OleDbCommandobjCommand=newOleDbCommand("select*fromadmin”,objConnection);DataSetds=newDataSet();OleDbDataAdaptersda=newOleDbDataAdapter(”select*fromadmin",objConnection);;sda.Fill(ds,"admin”);OleDbDataReaderreader=objCommand.ExecuteReader();inti;for(i=0;i<ds.Tables["admin"].Rows.Count;i++){reader.Read();if(reader["username"].Equals(user)&&reader["password"].Equals(password)){this.DialogResult=DialogResult.OK;this.Close();break;}}if(i==ds.Tables["admin"].Rows.Count)MessageBox.Show(用戶名或者密碼輸入有誤!");//關(guān)閉Reader.reader.Close();objConnection.Close();}}}學(xué)生登錄模塊(1)學(xué)生界面模塊(2)成績查詢模塊代碼://查詢學(xué)生信息stringcheckinfo="";strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();OleDbCommandobjCommand=newOleDbCommand("select*frominformation",objConnection);OleDbDataReaderreader=objCommand.ExecuteReader();switch(flag)〃分別根據(jù)姓名,學(xué)號,郵箱查詢學(xué)生信息(break;break;break;)if(checkinfo.Length==0||checkinfo.Trim()==string.Empty)(〃輸入查詢信息為空,直接列出所有學(xué)生信息this.init(reader);)else(//依據(jù)輸入查詢信息checkinfo查詢學(xué)生信息并顯示到顯示區(qū)while(reader.Read())(if(reader["name"].ToString().Equals(checkinfo)||reader["studentiD"].ToString().Equals(checkinfo)||reader["email"].ToString().Equals(checkinfo))(ListViewitemlvi=newListViewitem(reader["name"].ToString());)))//關(guān)閉Reader.reader.Close();objConnection.Close();(3)密碼修改模塊代碼:privatevoidtoolStripMenuItem8_Click(objectsender,EventArgse)(xiugaimima2xiu=newxiugaimima2();xiu.Show();}privatevoidbutton1_Click(objectsender,EventArgse)(stringuser=tbusername.Text;stringpassword=tbpassword.Text;strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();OleDbCommandobjCommand=newOleDbCommand("select*fromstudent",objConnection);DataSetds=newDataSet();OleDbDataAdaptersda=newOleDbDataAdapter("select*fromstudent",objConnection);;sda.Fill(ds,"student");OleDbDataReaderreader=objCommand.ExecuteReader();inti;for(i=0;i<ds.Tables["student"].Rows.Count;i++)(reader.Read();if(reader["username"].Equals(user)&&reader["password"].Equals(password))(re[username]='"+user+"'";OleDbCommandcmd=newOleDbCommand(s,objConnection);cmd.ExecuteNonQuery();MessageBox.Show(修改成功!");break;}}if(i==ds.Tables["student"].Rows.Count)MessageBox.Show(請確認密碼!");//關(guān)閉Reader.reader.Close();objConnection.Close();)(4)退出登錄模塊privatevoidtoolStripMenuItem1_Click(objectsender,EventArgse)(Application.Restart();)(5)幫助模塊privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse)(.MessageBox.Show(請確定是不是沒考!");)privatevoidtoolStripMenuItem6_Click(objectsender,EventArgse){―MessageBox.Show(請聯(lián)系管理員!");)privatevoidtoolStripMenuItem7_Click(objectsender,EventArgse){MessageBox.Show(請聯(lián)系老師!");)管理員登錄模塊(1)管理員界面模塊(2)成績添加模塊代碼:privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse){//初始化信息錄入窗口,進行輸入InfoInputinputForm=newInfoInput();inputForm.Show();)privatevoidbuttonAdd_Click(objectsender,EventArgse){〃將學(xué)生信息錄入stringsex;sex='男";elsesex=女";strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);OleDbCommandcmd=newOleDbCommand("insertinto[information]"+”([name],[studentID],[class],[sex],[email],[courseOne],[courseTwo],[courseThree])values('"+objConnection.Open();//添加成功或失敗分別彈出對應(yīng)提示框{MessageBox.Show(成功添加同學(xué)的信息!");this.Close();}elseMessageBox.Show(添加失敗,請確定是否添加該同學(xué)相關(guān)信息");objConnection.Close();}(3)成績查詢模塊代碼:privatevoidtoolStripMenuItem1_Click(objectsender,EventArgse){//查詢學(xué)生信息stringcheckInfo="";strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();OleDbCommandobjCommand=newOleDbCommand("select*frominformation",objConnection);OleDbDataReaderreader=objCommand.ExecuteReader();switch(flag)〃分別根據(jù)姓名,學(xué)號,郵箱查詢學(xué)生信息{break;break;break;)if(checkInfo.Length==0||checkInfo.Trim()==string.Empty)(〃輸入查詢信息為空,直接列出所有學(xué)生信息this.init(reader);)else(//依據(jù)輸入查詢信息checkInfo查詢學(xué)生信息并顯示到顯示區(qū)while(reader.Read())(if(reader["name"].ToString().Equals(checkInfo)||reader["studentID"].ToString().Equals(checkInfo)||reader["email"].ToString().Equals(checkInfo))(ListViewItemlvi=newListViewItem(reader["name"].ToString());)))//關(guān)閉Reader.reader.Close();objConnection.Close();)(4)成績修改模塊代碼:privatevoidtoolStripMenuItem2_Click(objectsender,EventArgse)(.MessageBox.Show(朱選中修改項!");else(xiugaixi=newxiugai();strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();OleDbCommandobjCommand=newOleDbCommand("select*frominformationwherename='"OleDbDataReaderreader=objCommand.ExecuteReader();reader.Read();//sex=reader["sex"].ToString();if(reader["sex"].ToString()==男")else//objConnection.Close();〃objCommand.ExecuteNonQuery();objConnection.Close();xi.Show();}}privatevoidbutton1_Click(objectsender,EventArgse){stringsex;sex='男";elsesex=女";strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);objConnection.Open();cmd.ExecuteNonQuery();objConnection.Close();MessageBox.Show(修改成功!");}(5)成績刪除模塊代碼:privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse){MessageBox.Show(朱選中刪除項!");else{strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";OleDbConnectionobjConnection=newOleDbConnection(strConnection);OleDbCommandcmd=newOleDbCommand("deletefrominformationwherename='"objConnection.Open();cmd.ExecuteNonQuery();objConnection.Close();MessageBox.Show(B除成功!");)(6)成績分析模塊代碼:privatevoidtoolStripMenuItem5_Click(objectsender,EventArgse)(.cjfenxicj=newcjfenxi();cj.Show();OleDbDataAdaptersda;DataSetds;OleDbConnectionobjConnection;strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";objConnection=newOleDbConnection(strConnection);ds=newDataSet();objConnection.Open();sda=newOleDbDataAdapter("select*frominformation",objConnection);OleDbCommandobjCommand=newOleDbCommand("selectcourseOnefrominformation",objConnection);OleDbDataReaderreader=objCommand.ExecuteReader();sda.Fill(ds,"information");DataTabledtb=newDataTable();sda.Fill(dtb);DataRow口dd=dtb.Select("courseOne=courseOne");H*********//intk=ds.Tables["information"].Rows.Count;Int32sum=0;Int32max=0,min=100;Int32i=0,m=0,n=0;foreach(DataRowdrindd)(sum+=Convert.ToInt32(dr["courseOne"].ToString());)for(intj=0;j<dd.Length;j++)(if((Convert.ToInt32(dd[j]["courseOne"].ToString()))>=max)max=Convert.ToInt32(dd[j]["courseOne"].ToString());if((Convert.ToInt32(dd[j]["courseOne"].ToString()))<=min)min=Convert.ToInt32(dd[j]["courseOne"].ToString());if((Convert.ToInt32(dd[j]["courseOne"].ToString()))>=0&&(Convert.ToInt32(dd[j]["courseOne"].ToString()))<=60)i++;elseif((Convert.ToInt32(dd[j]["courseOne"].ToString()))>=60&&(Convert.ToInt32(dd[j]["courseOne"].ToString()))<=80)m++;elsen++;}floatavg=(float)sum/(dd.Length);floatjg=(float)i/(dd.Length);reader.Read();//將檢索出來的數(shù)據(jù),輸出到listViewInfo(窗體顯示區(qū))ListViewItemlvi=newListViewItem('語文)H***************************DataRow口dd1=dtb.Select("courseTwo=courseTwo");//*********Int32sum1=0;Int32max1=0,min1=100;Int32i1=0,m1=0,n1=0;foreach(DataRowdrindd1){sum1+=Convert.ToInt32(dr["courseTwo"].ToString());}for(intj=0;j<dd1.Length;j++){if((Convert.ToInt32(dd1[j]["courseTwo"].ToString()))>=max1)max1=Convert.ToInt32(dd1[j]["courseTwo"].ToString());if((Convert.ToInt32(dd1[j]["courseTwo"].ToString()))<=min1)min1=Convert.ToInt32(dd1[j]["courseTwo"].ToString());if((Convert.ToInt32(dd1[j]["courseTwo"].ToString()))>=0&&(Convert.ToInt32(dd1[j]["courseTwo"].ToString()))<=60)i1++;elseif((Convert.ToInt32(dd1[j]["courseTwo"].ToString()))>=60&&(Convert.ToInt32(dd1[j]["courseTwo"].ToString()))<=80)m1++;elsen1++;}floatavg1=(float)sum1/(dd1.Length);floatjg1=(float)i1/(dd1.Length);reader.Read();//將檢索出來的數(shù)據(jù),輸出到listViewInfo(窗體顯示區(qū))ListViewItemlvi1=newListViewItem('數(shù)學(xué))//******************DataRow口dd2=dtb.Select("courseThree=courseThree");//*********Int32sum2=0;Int32max2=0,min2=100;Int32i2=0,m2=0,n2=0;foreach(DataRowdrindd2)(sum2+=Convert.ToInt32(dr["courseThree"].ToString());}for(intj=0;j<dd2.Length;j++)(if((Convert.ToInt32(dd2[j]["courseThree"].ToString()))>=max2)max2=Convert.ToInt32(dd2[j]["courseThree"].ToString());if((Convert.ToInt32(dd2[j]["courseThree"].ToString()))<=min2)min2=Convert.ToInt32(dd2[j]["courseThree"].ToString());if((Convert.ToInt32(dd2[j][

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論