版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 學(xué)生信息管理系統(tǒng)(C++)</p><p><b> 1程序功能要求</b></p><p><b> ?。?)信息維護(hù):</b></p><p> 要求:學(xué)生信息數(shù)據(jù)要以文件的形式保存,能實(shí)現(xiàn)學(xué)生信息數(shù)據(jù)的維護(hù)。此模塊包括子模塊有:增加學(xué)生信息、刪除學(xué)生信息、修改學(xué)生信息。</p>
2、<p><b> ?。?)信息查詢:</b></p><p> 要求:查詢時(shí)可實(shí)現(xiàn)按姓名查詢、按學(xué)號查詢。</p><p><b> ?。?)成績統(tǒng)計(jì):</b></p><p> 要求:A輸入任意的一個(gè)課程名(如數(shù)學(xué))和一個(gè)分?jǐn)?shù)段(如60~70),統(tǒng)計(jì)出在此分?jǐn)?shù)段的學(xué)生情況。</p><
3、p> ?。?)排序:能對用戶指定的任意課程名,按成績升序或降序排列學(xué)生數(shù)據(jù)并顯示排序結(jié)果。</p><p><b> 2 開發(fā)環(huán)境</b></p><p> 操作系統(tǒng): Windows XP</p><p> 開發(fā)軟件: Visual C++ 6.0</p><p><b> 3 程序分析<
4、;/b></p><p> ?。?)定義一個(gè)數(shù)組記錄總成績:total[2000];</p><p> ?。?)先定義結(jié)構(gòu)體:struct student</p><p> ?。?)用for循環(huán)實(shí)現(xiàn)一個(gè)查找函數(shù)</p><p><b> ?。?)定義插入函數(shù)</b></p><p><
5、b> ?。?)定義刪除函數(shù)</b></p><p> ?。?)定義了一個(gè)輸出函數(shù)來控制輸出</p><p> ?。?)編寫主函數(shù):其中包括學(xué)生信息的輸入,并求出每個(gè)學(xué)生的總成績用數(shù)組total[2000]進(jìn)行記錄,然后按學(xué)生的總成績從高到低進(jìn)行排序;排序的方法有很多種,這里我用了冒泡法排序;最后調(diào)用查找,插入,刪除,輸出等函數(shù)實(shí)現(xiàn)各種功能。根據(jù)提示選擇功能:cz表示查找,
6、cr表示插入,sc表示刪除,js表示結(jié)束輸入輸出。</p><p><b> 4 程序詳細(xì)內(nèi)容</b></p><p> #include<iostream></p><p> #include<string></p><p> using namespace std;</p>
7、<p> int total[2000]; //總成績; </p><p> struct student</p><p><b> {</b></p><p> int num; //學(xué)號; </p><p> string name;
8、 //姓名; </p><p> string classes; //班級; </p><p> int math; //數(shù)學(xué)成績; </p><p> int english; //英語成績; </p><p> int cl; //c++成
9、績; </p><p> }st[2000],temp; //定義結(jié)構(gòu)體數(shù)組; </p><p><b> //查找函數(shù);</b></p><p> void chazhao(int n) </p><p><b> {</b></p><p> int n
10、umber; </p><p> cout<<"請輸入你的學(xué)號:";</p><p> cin>>number;</p><p> for(int i=1;i<=n;i++)</p><p><b> {</b></p><p> if(
11、st[i].num==number)//查找學(xué)號為number的學(xué)生,并輸出其信息; </p><p><b> {</b></p><p> cout<<st[i].num<<" "<<st[i].name<<" ";</p><p> cout&l
12、t;<st[i].classes<<" "<<st[i].math<<" ";</p><p> cout<<st[i].english<<" "<<st[i].cl<<" ";</p><p> cout<&l
13、t;total[i]<<endl;</p><p> break; </p><p><b> } </b></p><p><b> }</b></p><p><b> }</b></p
14、><p><b> //插入函數(shù);</b></p><p> void charu(int n)</p><p><b> {</b></p><p> int nu,mat,en,ccl,ttotal;</p><p> string na,cla; </p&g
15、t;<p><b> int x;</b></p><p> cout<<"請輸入要插入的學(xué)生信息:";</p><p> cin>>nu>>na>>cla>>mat>>en>>ccl;</p><p> ttotal=
16、mat+en+ccl;</p><p> for(int i=1;i<=n;i++) //查找要插入的學(xué)生的位置,并記下位置x; </p><p><b> {</b></p><p> if(ttotal>=total[i]) </p><p> {x=i;break;}</p
17、><p><b> }</b></p><p> for(int i=n+1;i>x;i--) //將x+1到n位置的學(xué)生信息往后移一個(gè)位置; </p><p><b> {</b></p><p> st[i]=st[i-1];</p><p> total
18、[i]=total[i-1]; </p><p><b> }</b></p><p> //對x位置的信息處理;把要插入的信息放入x的位置; </p><p> st[x].num=nu; st[x].name=na; </p><p> st[x].classes=cla; st[x].mat
19、h=mat;</p><p> st[x].english=en; st[x].cl=ccl;</p><p> total[x]=ttotal;</p><p><b> } </b></p><p><b> //刪除函數(shù);</b></p><p> void
20、shanchu(int n)</p><p><b> {</b></p><p> int m,i,j;</p><p> cout<<"請輸入要刪除的學(xué)生的學(xué)號:";</p><p><b> cin>>m;</b></p>&l
21、t;p> //找到要刪除的信息的位置,并跳出循環(huán),i值就是要刪除信息的位置;</p><p> for(i=1;i<=n;i++) </p><p><b> {</b></p><p> if(m==st[i].num)break; </p><p><b>
22、}</b></p><p> //將i+1到n的學(xué)生信息往前移一個(gè)位置,循環(huán)到n-1時(shí)結(jié)束; </p><p> for(j=i;j<n;j++)</p><p><b> {</b></p><p> st[j]=st[j+1];</p><p> total[j]=
23、total[j+1]; </p><p><b> } </b></p><p><b> } </b></p><p><b> //輸出函數(shù);</b></p><p> void output(int n)</p><p>
24、<b> {</b></p><p> for(int i=1;i<=n;i++)</p><p><b> {</b></p><p> cout<<st[i].num<<" "<<st[i].name<<" ";<
25、;/p><p> cout<<st[i].classes<<" "<<st[i].math<<" ";</p><p> cout<<st[i].english<<" "<<st[i].cl<<" ";</p&
26、gt;<p> cout<<total[i]<<endl;</p><p> } </p><p><b> } </b></p><p><b> //主函數(shù); </b></p><p> int main()<
27、/p><p><b> { </b></p><p> int i,n,j;</p><p><b> string m;</b></p><p> cout<<"請輸入學(xué)生的人數(shù):";</p><p> cin>>n;/
28、/表示學(xué)生的人數(shù);</p><p> //輸入n個(gè)學(xué)生的信息; </p><p> for(i=1;i<=n;i++)</p><p><b> {</b></p><p> cin>>st[i].num>>st[i].name;</p><p> cin&
29、gt;>st[i].classes>>st[i].math;</p><p> cin>>st[i].english>>st[i].cl;</p><p> total[i]=st[i].math+st[i].english+st[i].cl; </p><p><b> }<
30、;/b></p><p> //排序;冒泡排序法,根據(jù)總成績的高到低排列; </p><p> for(i=1;i<n;i++)</p><p> for(j=i+1;j<=n;j++)</p><p><b> {</b></p><p> if(total[j]&g
31、t;total[i])</p><p><b> {</b></p><p> int p=total[i];</p><p> total[i]=total[j];</p><p> total[j]=p;</p><p> temp=st[i];</p><p&g
32、t; st[i]=st[j];</p><p> st[j]=temp; </p><p> } </p><p><b> }</b></p><p> for(i=1;;i++)</p><p><b> {</b>
33、</p><p> cout<<"查找成績輸入cz,插入學(xué)生信息輸入cr,刪除學(xué)生信息輸入sc,結(jié)束請輸入js:";</p><p><b> cin>>m;</b></p><p> if(m=="js")break;</p><p> if(m=
34、="cz"){chazhao(n);}//output(n);</p><p> if(m=="cr"){charu(n);output(n+1);n++;}</p><p> if(m=="sc"){shanchu(n);output(n-1);n--;}</p><p> cout<<
35、endl;</p><p><b> }</b></p><p> //while(1){}</p><p><b> return 0;</b></p><p><b> }</b></p><p><b> 5程序運(yùn)行結(jié)果<
36、/b></p><p><b> 6總結(jié)心得</b></p><p> 通過編寫學(xué)生成績管理系統(tǒng)這個(gè)程序,感覺到自己有很多方面的不足,在編寫過程中不斷的求助于同學(xué)老師,不斷的查找資料和翻書本,自己真是受益匪淺。</p><p> 首先,在編程學(xué)習(xí)中,實(shí)踐是非常重要的,無論自己在讀程序看程序時(shí)是多么的明白,但到了電腦面前,才知道在實(shí)際
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計(jì)——學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 課程設(shè)計(jì)--c++編寫的學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)---高校學(xué)生信息管理系統(tǒng)
- 面向?qū)ο骳++課程設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- c++程序設(shè)計(jì)課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- c++課程設(shè)計(jì)--藥品信息管理系統(tǒng)
- c++客戶信息管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)--超市信息管理系統(tǒng)
- c++課程設(shè)計(jì)--職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)設(shè)計(jì)
- c++課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告---職工信息管理系統(tǒng)課程設(shè)計(jì)
- c課程設(shè)計(jì)報(bào)告(學(xué)生信息管理系統(tǒng))
- c++課程設(shè)計(jì)--職工信息管理
- c++課程設(shè)計(jì)---公司人員信息管理系統(tǒng)
- c++課程設(shè)計(jì)——圖書信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)c語言課程設(shè)計(jì)報(bào)告
- c語言課程設(shè)計(jì)報(bào)告----學(xué)生信息管理系統(tǒng)
評論
0/150
提交評論