c++課程設(shè)計---學(xué)生信息管理系統(tǒng)_第1頁
已閱讀1頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  C++課程設(shè)計——</b></p><p><b>  學(xué)生信息管理系統(tǒng)</b></p><p>  姓 名: </p><p>  學(xué) 號: </p><p>  專 業(yè): 信息與計算科學(xué)</p>

2、;<p>  學(xué) 院: 理 學(xué) 院 </p><p>  指導(dǎo)老師: </p><p>  日 期: 2012 . 12 . 12 </p><p>  學(xué)生管理系統(tǒng)——C++課程設(shè)計報告</p><p><b>  概述</b></p>

3、<p>  C++課程設(shè)計是實(shí)踐性教學(xué)中的一個重要環(huán)節(jié),它以C++教程課程為基礎(chǔ),是一門獨(dú)立于課程之外的特殊課程。課程設(shè)計是讓同學(xué)們對所學(xué)的課程更全面的學(xué)習(xí)和應(yīng)用,理解和掌握課程的相關(guān)知識。《C++教程》是一門重要的專業(yè)基礎(chǔ)課,是計算機(jī)理論和應(yīng)用的核心基礎(chǔ)課程。C++課程設(shè)計,要求學(xué)生在選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)以及算法方面的應(yīng)用,加深對課程基本內(nèi)容的理解。同時,在程序設(shè)計方法以及上機(jī)操作等基本技能和科學(xué)作風(fēng)方面受到比較系統(tǒng)和嚴(yán)格

4、的訓(xùn)練。</p><p><b>  題目描述</b></p><p>  設(shè)計一個學(xué)生管理系統(tǒng),要求能輸入學(xué)生的信息,學(xué)生包含以下信息:姓名、學(xué)號、性別、出生年月、入學(xué)年份、院系。對學(xué)生信息能進(jìn)行查詢、修改、插入、刪除等功能,并制作一個類似菜單的界面。由于學(xué)生管理系統(tǒng)中有學(xué)生的重要信息,為確保學(xué)生信息的安全性,需要設(shè)計一個登錄系統(tǒng)才能進(jìn)入菜單界面,只有登錄后才能對系

5、統(tǒng)中學(xué)生信息的錄入、查詢、修改、插入、刪除等操作。查詢功能需要分總體查詢和條件查詢;修改功能能修改學(xué)生單項(xiàng)信息和全部信息;插入功能能將新來的學(xué)生信息插入到指定位置;為了學(xué)生信息的誤刪,設(shè)計一個確認(rèn)刪除機(jī)制。</p><p><b>  系統(tǒng)分析</b></p><p>  這是一個學(xué)生信息管理系統(tǒng),需為其設(shè)計一個功能的界面式菜單,通過菜單對其各項(xiàng)功能一目了然,并通過i

6、f條件選擇結(jié)構(gòu)的設(shè)計,對各項(xiàng)功能按模塊實(shí)現(xiàn),并用while循環(huán)語句對各個模塊完美的配合實(shí)現(xiàn)其界面的循環(huán)和跳轉(zhuǎn),并運(yùn)用的C++中的特有的string、bool型數(shù)據(jù),使得程序的設(shè)計更加完美。系統(tǒng)需要模擬學(xué)生信息管理系統(tǒng)的錄入、查詢、修改、插入、刪等各項(xiàng)功能。</p><p><b>  各項(xiàng)功能模塊如下:</b></p><p>  錄 入 2、查 詢 3、

7、修 改 </p><p>  插 入 5、刪 除 0、退 出 </p><p>  從主菜單中選擇各項(xiàng)功能,進(jìn)入相應(yīng)的子菜單:錄入功能支持錄入單個學(xué)生信息和多個學(xué)生信息,完成錄入信息后返回主菜單;查詢功能支持總體查詢和條件查詢,查詢完畢后可以選擇返回主菜單;修改功能能對某個學(xué)生的各項(xiàng)信息進(jìn)行單一修改,也可以修改某個學(xué)生的全部信息,成功修改后返回主菜單,若沒有找到需要修改

8、的學(xué)生信息,可以選擇繼續(xù)修改或返回主菜單;插入功能支持單個插入和多個插入,插入是指將新來的學(xué)生信息插入到指定的位置,插入完畢后返回主菜單;刪除功能支持單個刪除和多個刪除,刪除學(xué)生信息會嚴(yán)重影響學(xué)生信息安全的操作,為確保學(xué)生信息的安全,采用了刪除確認(rèn)機(jī)制,只有確認(rèn)后才進(jìn)行刪除;退出功能是結(jié)束整個循環(huán),退出學(xué)生信息管理系統(tǒng),同樣采用了退出確認(rèn)機(jī)制,只有確認(rèn)后才會退出系統(tǒng)。并且每個子功能菜單中都有返回項(xiàng),即使選錯功能后能隨時返回主菜單而不執(zhí)行

9、而任何操作,這樣使系統(tǒng)更加完善。</p><p><b>  詳細(xì)設(shè)計</b></p><p><b>  錄入學(xué)生信息</b></p><p>  在成功登陸學(xué)生信息管理系統(tǒng)后,系統(tǒng)初始的學(xué)生信息為空,無法進(jìn)行各功能的使用與實(shí)現(xiàn),所以需要先錄入學(xué)生的基本信息。學(xué)生基本信息包括:學(xué)生姓名、學(xué)生學(xué)號、性別、出生年月、入學(xué)年份

10、、院系等六項(xiàng)信息。錄入學(xué)生后,系統(tǒng)自定義給予學(xué)生一個序號,該序號與學(xué)生信息錄入系統(tǒng)的先后順序有關(guān),序號的多少表示當(dāng)前學(xué)生系統(tǒng)中已錄入學(xué)生的個數(shù)。對于有同名或同學(xué)號的一些操作,都將是根據(jù)序號優(yōu)先原則,比如修改、刪除等功能。學(xué)生人數(shù)由變量n控制,每當(dāng)錄入一個學(xué)生信息時,n就會自加1。初始時n=0表示當(dāng)前沒有任何學(xué)生信息。多個錄入則是對單個錄入執(zhí)行的一個for循環(huán)語句。</p><p>  //錄入部分代碼實(shí)現(xiàn)如下:&

11、lt;/p><p><b>  n=n+1;</b></p><p>  cout<<" 請輸入姓名: ";cin>>name[n];</p><p>  cout<<" 請輸入學(xué)號: ";cin>>num[n];</p><p>  c

12、out<<" 請輸入出生年、月、日: ";cin>>year[n]>>mon[n]>>day[n];</p><p>  cout<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[n];</p><p>  cout<<" 請輸入入學(xué)年份:

13、";cin>>date[n];</p><p>  cout<<" 請輸入院系: ";cin>>yuan[n];</p><p>  cout<<endl<<" 已成功錄入 "<<endl;</p><p><b>  查詢學(xué)生信息&l

14、t;/b></p><p>  當(dāng)沒有任何學(xué)生信息即n=0時,將會無法查詢;總體查詢查詢當(dāng)前已錄入的全體學(xué)生信息,學(xué)生按錄入的先后即系統(tǒng)給定的序號輸出,并有一個整體的列表,使得各個學(xué)生的信息一目了然。條件查詢針對用戶給定的條件(如某個學(xué)號、姓名等),在系統(tǒng)中逐一進(jìn)行查找,查找到符合相應(yīng)條件的學(xué)生則給予輸出,若沒有找到任何相符的學(xué)生信息,系統(tǒng)則給出沒有找到相應(yīng)學(xué)生的報告信息。</p><p

15、>  //總體查詢部分代碼實(shí)現(xiàn)如下:</p><p>  for(i=1;i<=n;i++){cout<<" ||"<<setw(3)<<i<<" ||"<<setw(9)<<num[i]<<" ||"<<setw(9)<<name[i

16、]<<" ||";</p><p>  if(sex[i]==1)cout<<" 男 ";else if(sex[i]==2)cout<<" 女 ";else cout<<"未知";</p><p>  cout<<"|| "<

17、;<setw(4)<<year[i]<<"."<<setw(2)<<mon[i]<<"."<<setw(2)<<day[i]<<" ||"<<setw(6)<<date[i]<<" ||"<<setw(9)&

18、lt;<yuan[i]<<" ||"<<endl;}</p><p>  //條件查詢部分代碼實(shí)現(xiàn)如下:</p><p>  for(i=1;i<=n;i++){if(chaxun==num[i]||chaxun==name[i]||chaxun==year[i]||chaxun==date[i]||chaxun==yuan[i]){

19、a=1;</p><p>  cout<<" ||"<<setw(3)<<i<<" ||"<<setw(9)<<num[i]<<" ||"<<setw(9)<<name[i]<<" ||";</p>&

20、lt;p>  if(sex[i]==1)cout<<" 男 ";else if(sex[i]==2)cout<<" 女 ";else cout<<"未知";</p><p>  cout<<"|| "<<setw(4)<<year[i]<<&qu

21、ot;."<<setw(2)<<mon[i]<<"."<<setw(2)<<day[i]<<" ||"<<setw(6)<<date[i]<<" ||"<<setw(9)<<yuan[i]<<" ||"&

22、lt;<endl;}}</p><p><b>  修改學(xué)生信息</b></p><p>  進(jìn)入修改子菜單后,首先選擇要修改的選項(xiàng),如修改學(xué)號或者姓名等,選擇修改項(xiàng)后,然后指定要修改的學(xué)生的姓名或者學(xué)號,然后系統(tǒng)會自動匹配,如果系統(tǒng)沒有找到相應(yīng)的學(xué)生的姓名或?qū)W號,系統(tǒng)將反饋沒有找到的相應(yīng)信息,無法進(jìn)行修改;如若找到后,將會進(jìn)行修改,請輸入修改后的信息即可,修改

23、完成后,系統(tǒng)將對該學(xué)生的信息進(jìn)行更新。修改中提供全部修改功能項(xiàng),使得修改更加完善與方便實(shí)用。</p><p>  //修改部分代碼實(shí)現(xiàn)如下:</p><p>  cout<<" 請選擇修改項(xiàng): ";cin>>a;if(a==0)cout<<" 返回主菜單界面 "<<endl;</p>&l

24、t;p>  else if(a>7){cout<<" 輸入不正確,請重新輸入"<<endl;f1=true;}</p><p>  else{cout<<" 請輸入要修改的學(xué)號或姓名:";cin>>chaxun;m=0;</p><p>  for(i=1;i<=n;i++)if(ch

25、axun==name[i]||chaxun==num[i]){m=i;i=n+1;}</p><p>  if(m==0){cout<<" 沒有找到相應(yīng)學(xué)生的信息,無法進(jìn)行修改"<<endl;f1=true;}</p><p>  else if(a==1){cout<<" 請輸入新的名字: ";cin>&g

26、t;name[m];}</p><p>  else if(a==2){cout<<" 請輸入新的學(xué)號:";cin>>num[m];}</p><p>  else if(a==3){cout<<" 請輸入新的性別(1、男 / 2、女):";cin>>sex[m];}</p><p&

27、gt;  else if(a==4){cout<<" 請輸入新的年、月、日:";cin>>year[m]>>mon[m]>>day[m];}</p><p>  else if(a==5){cout<<" 請輸入新的入學(xué)年份:";cin>>date[m];}</p><p>  

28、else if(a==6){cout<<" 請輸入新的院系:";cin>>yuan[m];}</p><p>  else if(a==7){cout<<" 請輸入姓名: ";cin>>name[m];</p><p>  cout<<" 請輸入學(xué)號: ";cin>

29、>num[m];cout<<" 請輸入出生年、月、日: ";</p><p>  cin>>year[m]>>mon[m]>>day[m];cout<<" 請選擇性別(1、男 / 2、女): ";</p><p>  cin>>sex[m];cout<<&quo

30、t; 請輸入入學(xué)年份: ";cin>>date[m];</p><p>  cout<<" 請輸入院系: ";cin>>yuan[m];}</p><p>  if(m!=0)cout<<" 已成功修改 "<<endl;}}</p><p><b>

31、;  插入學(xué)生信息</b></p><p>  插入功能與錄入功能有些相似,都具有錄入學(xué)生信息的作用,但是插入功能的區(qū)別在于,插入能使錄入的學(xué)生信息插入到指定的位置,這個位置是指系統(tǒng)的序號,如系統(tǒng)已經(jīng)有5個學(xué)生的信息了,如果是錄入一個新的學(xué)生信息,系統(tǒng)將會將這個學(xué)生序號定為6,即在前面5個學(xué)生的后面,而插入則可以插入的這個人中的任何順序,輸入插入位置為1則插入到第一號位置,但是果然插入的位置大于5(當(dāng)

32、前學(xué)生的個數(shù)),為了是學(xué)生的序號連續(xù),系統(tǒng)將強(qiáng)制轉(zhuǎn)化為6,即在五個學(xué)生的后面。而多個插入則是由第一個插入的學(xué)生決定,如果出入3個,插入位置為3,則這三個學(xué)生的位置分別為3、4、5,而原來3、4、5的則變?yōu)?、7、8的位置,其基本原理與單個相似,插入是將要插入的該位置以及之后的學(xué)生信息相應(yīng)的往后移動,信息移動完成后,要插入的位置的學(xué)生信息為空,然后輸入學(xué)生的信息即賦值給該位置,然后完成插入,然后學(xué)生的個數(shù)同樣會自加1。</p>

33、<p>  //插入部分代碼實(shí)現(xiàn)如下:</p><p>  cout<<" 請選擇插入的位置:";cin>>m;if(m==0)m=1;else if(m>n)m=n+1;if(m<=n)</p><p>  for(i=n;i>=m;i--){name[i+1]=name[i];num[i+1]=num[i];y

34、ear[i+1]=year[i];mon[i+1]=mon[i];day[i+1]=day[i];sex[i+1]=sex[i];date[i+1]=date[i];yuan[i+1]=yuan[i];}</p><p>  n=n+1;cout<<" 請輸入姓名: ";cin>>name[m];cout<<" 請輸入學(xué)號: ";<

35、/p><p>  cin>>num[m];cout<<" 請輸入出生年、月、日: ";cin>>year[m]>>mon[m]>>day[m];</p><p>  cout<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[m];cout<<&

36、quot; 請輸入入學(xué)年份: ";</p><p>  cin>>date[m];cout<<" 請輸入院系: ";cin>>yuan[m];cout<<" 已成功插入 "<<endl;}</p><p><b>  刪除學(xué)生信息</b></p>

37、<p>  刪除學(xué)生功能是輸入要刪除學(xué)生的學(xué)號或姓名,系統(tǒng)自動尋找與之匹配的學(xué)生,若沒有找到將無法執(zhí)行刪除操作,若找到后,將會進(jìn)入刪除確認(rèn)機(jī)制,這是為了確定學(xué)生的信息安全,確保不會被誤刪而丟失數(shù)據(jù)。刪除功能的實(shí)現(xiàn)是將將要刪除的學(xué)生序號找到,從該序號開始,后一個學(xué)生的信息依次賦值給前一個學(xué)生,直到最后一個學(xué)生賦值給倒數(shù)第二個學(xué)生終止,并且學(xué)生數(shù)會自減1,多個刪除與單個刪除基本相似,利用循序即可實(shí)現(xiàn)。</p>&l

38、t;p>  //刪除部分代碼實(shí)現(xiàn)如下:</p><p>  cout<<" 請輸入要刪除的學(xué)號或姓名:";cin>>chaxun;m=0;</p><p>  for(i=1;i<=n;i++)if(chaxun==name[i]||chaxun==num[i]){m=i;i=n+1;}</p><p>  i

39、f(m==0){cout<<" 沒有找到相應(yīng)學(xué)生的信息,無法進(jìn)行刪除"<<endl;f1=true;}</p><p>  else {cout<<" 您是否確定刪除該學(xué)生信息(Y 確定/N 取消): ";</p><p>  f0=true;while(f0){cin>>e;if(e=='Y&

40、#39;||e=='y')f0=false;</p><p>  else if(e=='N'||e=='n'){cout<<" 已取消刪除該學(xué)生信息"<<endl;</p><p>  f1=true;f0=false;}else cout<<" 輸入錯誤,請重新輸入(Y 確

41、定/N 取消):";}</p><p>  while(e=='Y'||e=='y'){e='e';for(i=m;i<=n;i++){name[i]=name[i+1];num[i]=num[i+1];year[i]=year[i+1];mon[i]=mon[i+1];day[i]=day[i+1];sex[i]=sex[i+1];date[i]=

42、date[i+1];yuan[i]=yuan[i+1];}n=n-1;cout<<" 已成功刪除 "<<endl;}}</p><p>  登陸學(xué)生信息管理系統(tǒng)</p><p>  因?yàn)閷W(xué)生系統(tǒng)含有學(xué)生的重要信息,并且能對學(xué)生信息進(jìn)行修改、刪除等操作,所以將學(xué)生管理系統(tǒng)設(shè)定為一個加密系統(tǒng)。此處,為了方便演示,賬號隨意輸入,密碼定為2012.<

43、;/p><p>  //登陸部分代碼實(shí)現(xiàn)如下:</p><p>  while(f0){cout<<endl<<" 賬號:";cin>>chaxun;cout<<" 密碼(2012):";</p><p>  cin>>chaxun;if(chaxun=="20

44、12")f0=false;else cout<<" 賬號或密碼不正確,請重新輸入"<<endl;}cout<<endl<<" 登錄成功,歡迎進(jìn)入主菜單界面"<<endl;</p><p>  退出學(xué)生信息管理系統(tǒng)</p><p>  退出系統(tǒng)即終止整個循環(huán)即可。修改總循環(huán)的bool

45、值為false,并進(jìn)入一個退出確認(rèn)機(jī)制,如果取消則不會退出返回到主菜單,如果確認(rèn)則會退出結(jié)束本程序。</p><p>  //退出部分實(shí)現(xiàn)代碼如下:</p><p>  if(k==0){f0=true;while(f0){f0=false;cout<<" 是否確定退出系統(tǒng)?(Y 確定 / N 取消)";cin>>e;if(e=='y&#

46、39;||e=='Y') f=false;else if(e=='n'||e=='N')cout<<endl;else f0=true;}}</p><p><b>  總結(jié)</b></p><p>  通過這次C++課程設(shè)計,我認(rèn)識到從課本上學(xué)到的知識是遠(yuǎn)遠(yuǎn)不夠的。本次設(shè)計使我深入的了解了C++編程在實(shí)際問

47、題下的靈活運(yùn)用,并對C++有了更進(jìn)一步的認(rèn)識。</p><p>  雖然經(jīng)過努力終于把該系統(tǒng)完成,可是該系統(tǒng)還是不完善,程序中的一些算法還不是很清楚,只不過把簡單的功能實(shí)現(xiàn)了出來,這些缺憾歸根結(jié)底都是因?yàn)槲业腃++語言和數(shù)據(jù)結(jié)構(gòu)的水平還不是很高 ,還需要經(jīng)過不懈的努力才能做出比較完善的系統(tǒng)。這次課程設(shè)計讓我明白要真正的掌握一門編程語言需要的不僅僅是課本上的東西,還要在實(shí)際的編程過程中慢慢的掌握其中的奧妙。同時我明

48、白了,要成為一名優(yōu)秀的編程人員必須具備堅(jiān)實(shí)的編程語言基礎(chǔ)、熟練的調(diào)試程序的技能,耐心也很重要、同時細(xì)心也是不可缺少的。所以為了自己的夢想,在以后的學(xué)習(xí)過程中,我要不斷的充實(shí)自己,努力的學(xué)習(xí)。通過本次課程設(shè)計讓我熟悉了軟件開發(fā)的基本過程;初步掌握了軟件開發(fā)過程的問題分析、系統(tǒng)設(shè)計、程序編碼、測試等階段的基本任務(wù)和技能方法;培養(yǎng)了我的算法設(shè)計和算法分析的能力;提高了綜合運(yùn)用所學(xué)的理論知識和方法以及獨(dú)立分析和解決問題的能力。</p>

49、;<p>  雖然課程設(shè)計的過程是艱辛的,但是當(dāng)看著自己的程序能夠運(yùn)行的瞬間,無限的滿足感會讓自己感到從未有過的興奮。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 鄭莉 李寧編著:《C++教程》人民郵電出版社 2010版</p><p>  [2] 耿國華主編:《數(shù)據(jù)結(jié)構(gòu)》(C語言描述)高等教育出版社

50、 2005版</p><p>  [3] 金遠(yuǎn)平著:《數(shù)據(jù)結(jié)構(gòu)》(C++描述)清華大學(xué)出版社 2005版 </p><p><b>  附錄:</b></p><p>  //學(xué)生信息管理系統(tǒng)源代碼</p><p>  #include<iostream></p><p>  #inc

51、lude<iomanip></p><p>  #include<string></p><p>  using namespace std;</p><p>  const int t=100;</p><p>  void main()</p><p>  {int a,b,c,i,j,k,

52、m,n;</p><p>  int sex[t];</p><p><b>  char e;</b></p><p>  bool f,f0,f1;</p><p>  string name[t]={"v"},num[t]={"0"},year[t]={"0&quo

53、t;},mon[t]={"0"},day[t]={"0"},date[t]={"0"},yuan[t]={"v"},chaxun;</p><p>  n=0;f=true;f0=true;cout<<endl;</p><p>  cout<<" ==============

54、=========================== "<<endl;</p><p>  cout<<" || 學(xué) 生 信 息 管 理 系 統(tǒng) || "<<endl;</p><p>  cout<<" ||

55、 || "<<endl;</p><p>  cout<<" || 歡 迎 使 用 || "<<endl;</p><p>  cout<<" || || "<&l

56、t;endl;</p><p>  cout<<" || 版權(quán)所有者:汪志成 || "<<endl;</p><p>  cout<<" || 2012.3.18 || "<<endl;</p><

57、p>  cout<<" ========================================= "<<endl<<endl;</p><p>  cout<<" 本系統(tǒng)為加密系統(tǒng),需要登錄成功后方能使用 "<<endl;</p><p>  while(f0){cout&l

58、t;<endl<<" 賬號:";cin>>chaxun;cout<<" 密碼(2012):";cin>>chaxun;</p><p>  if(chaxun=="2012")f0=false;else cout<<" 賬號或密碼不正確,請重新輸入"<<en

59、dl;}cout<<endl<<" 登錄成功,歡迎進(jìn)入主菜單界面"<<endl;</p><p>  while(f){cout<<endl;</p><p>  cout<<" ========================================= "<<endl;

60、</p><p>  cout<<" || || "<<endl;</p><p>  cout<<" || 學(xué) 生 信 息 管 理 系 統(tǒng) || "<<endl;</p><p> 

61、 cout<<" || || "<<endl;</p><p>  cout<<" || 1、錄入 2、查詢 3、修改 || "<<endl;</p><p>  cout<<" ||

62、 4、插入 5、刪除 0、退出 || "<<endl;</p><p>  cout<<" || || "<<endl;</p><p>  cout<<" ==========================

63、=============== "<<endl<<endl;</p><p>  cout<<" 請選擇主菜單功能: ";cin>>k;</p><p>  if(k==0){f0=true;while(f0){f0=false;cout<<" 是否確定退出系統(tǒng)?(Y 確定 / N 取消)&

64、quot;;cin>>e;</p><p>  if(e=='y'||e=='Y') {f=false;cout<<endl<<" ========================================= "<<endl;</p><p>  cout<<"

65、|| 學(xué) 生 信 息 管 理 系 統(tǒng) || "<<endl;</p><p>  cout<<" || || "<<endl;</p><p>  cout<<" || 謝 謝 使 用

66、 || "<<endl;</p><p>  cout<<" || || "<<endl;</p><p>  cout<<" || 版權(quán)所有者:汪志成 || "&

67、lt;<endl;</p><p>  cout<<" || 2012.3.18 || "<<endl;</p><p>  cout<<" ========================================= "<<endl<

68、;<endl;}else if(e=='n'||e=='N')cout<<endl;else f0=true;}}</p><p>  else if(k==1){cout<<" ============== 錄 入 =============== "<<endl;</p><p>  cout

69、<<" || 1、單個 2、多個 0、返回 || "<<endl;cout<<" ===================================== "<<endl;</p><p>  f1=true;while(f1){f1=false;cout<<endl<<"

70、請選擇操作: ";cin>>a;if(a==0) cout<<" 返回主菜單界面 "<<endl;</p><p>  else if(a==1){n=n+1;cout<<" 請輸入姓名: ";cin>>name[n];cout<<" 請輸入學(xué)號: ";cin>>

71、;num[n];cout<<" 請輸入出生年、月、日: ";cin>>year[n]>>mon[n]>>day[n];</p><p>  cout<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[n];cout<<" 請輸入入學(xué)年份: ";cin>

72、>date[n];cout<<" 請輸入院系: ";cin>>yuan[n];cout<<endl<<" 已成功錄入 "<<endl;}</p><p>  else if(a==2){cout<<" 請輸入要錄入的個數(shù):";cin>>m;for(i=0;i<

73、m;i++){n=n+1;cout<<" 請輸入姓名: ";cin>>name[n];cout<<" 請輸入學(xué)號: ";cin>>num[n];cout<<" 請輸入出生年、月、日: ";cin>>year[n]>>mon[n]>>day[n];</p><p&g

74、t;  cout<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[n];cout<<" 請輸入入學(xué)年份: ";cin>>date[n];cout<<" 請輸入院系: ";cin>>yuan[n];cout<<" 已成功錄入 "<<i+1<&l

75、t;" 個"<<endl<<endl;}}</p><p>  else {cout<<" 輸入不正確,請重新輸入"<<endl;f1=true;}}}</p><p>  else if(k==2){cout<<" ============== 查 詢 ============

76、=== "<<endl;</p><p>  cout<<" || 1、總體查詢 2、條件查詢 0、返回 || "<<endl;cout<<" ===================================== "<<endl;</p><p>  f1=true;whil

77、e(f1){f1=false;cout<<endl<<" 請選擇操作: ";cin>>a;if(a==0) cout<<" 返回主菜單界面 "<<endl;</p><p>  else if(a==1){if(n==0)cout<<" 當(dāng)前還沒有錄入任何學(xué)生的信息"<<

78、endl;</p><p>  else{cout<<" ========================================================================== "<<endl;</p><p>  cout<<" ||序號|| 學(xué) 號 || 姓 名 ||性別||

79、出生年月 ||入學(xué)年份|| 院 系 ||"<<endl;</p><p>  for(i=1;i<=n;i++){cout<<" ||"<<setw(3)<<i<<" ||"<<setw(9)<<num[i]<<" ||"<<

80、;setw(9)<<name[i]<<" ||";</p><p>  if(sex[i]==1)cout<<" 男 ";else if(sex[i]==2)cout<<" 女 ";else cout<<"未知";</p><p>  cout<

81、<"|| "<<setw(4)<<year[i]<<"."<<setw(2)<<mon[i]<<"."<<setw(2)<<day[i]<<" ||"<<setw(6)<<date[i]<<" ||

82、"<<setw(9)<<yuan[i]<<" ||"<<endl;}</p><p>  cout<<" ========================================================================== "<<endl;}}</p>

83、;<p>  else if(a==2){cout<<" (支持查詢項(xiàng)):姓名、學(xué)號、出生年份、入學(xué)年份、院系 "<<endl<<endl<<" 請輸入條件: ";cin>>chaxun;a=0;cout<<" ==============================================

84、============================ "<<endl;</p><p>  cout<<" ||序號|| 學(xué) 號 || 姓 名 ||性別|| 出生年月 ||入學(xué)年份|| 院 系 ||"<<endl;</p><p>  for(i=1;i<=n;i++){if(chaxun==

85、num[i]||chaxun==name[i]||chaxun==year[i]||chaxun==date[i]||chaxun==yuan[i]){a=1;</p><p>  cout<<" ||"<<setw(3)<<i<<" ||"<<setw(9)<<num[i]<<"

86、 ||"<<setw(9)<<name[i]<<" ||";</p><p>  if(sex[i]==1)cout<<" 男 ";else if(sex[i]==2)cout<<" 女 ";else cout<<"未知";</p><

87、;p>  cout<<"|| "<<setw(4)<<year[i]<<"."<<setw(2)<<mon[i]<<"."<<setw(2)<<day[i]<<" ||"<<setw(6)<<date[i]&l

88、t;<" ||"<<setw(9)<<yuan[i]<<" ||"<<endl;}}</p><p>  if(a==0)cout<<" ========================================================================== "

89、;<<endl<<" || 沒 有 找 到 相 應(yīng) 的 學(xué) 生 信 息 || "<<endl;</p><p>  cout<<" ===================================================================

90、======= "<<endl;}</p><p>  else {cout<<" 輸入不正確,請重新輸入"<<endl;f1=true;}}}</p><p>  else if(k==3){cout<<" ============================= 修 改 ============

91、=================== "<<endl;</p><p>  cout<<" || 1.姓名 2.學(xué)號 3.性別 4.出生年月 5.入學(xué)時間 6.院系 7.全部 0.返回|| "<<endl;cout<<" ====================================================

92、================ "<<endl;</p><p>  f1=true;while(f1){f1=false;cout<<endl<<" 請選擇修改項(xiàng): ";cin>>a;if(a==0)cout<<" 返回主菜單界面 "<<endl;</p><p>

93、  else if(a>7){cout<<" 輸入不正確,請重新輸入"<<endl;f1=true;}</p><p>  else{cout<<" 請輸入要修改的學(xué)號或姓名:";cin>>chaxun;m=0;for(i=1;i<=n;i++)if(chaxun==name[i]||chaxun==num[i])

94、{m=i;i=n+1;}</p><p>  if(m==0){cout<<" 沒有找到相應(yīng)學(xué)生的信息,無法進(jìn)行修改"<<endl;f1=true;}</p><p>  else if(a==1){cout<<" 請輸入新的名字: ";cin>>name[m];}else if(a==2){cout&

95、lt;<" 請輸入新的學(xué)號:";cin>>num[m];}</p><p>  else if(a==3){cout<<" 請輸入新的性別(1、男 / 2、女):";cin>>sex[m];}else if(a==4){cout<<" 請輸入新的年、月、日:";cin>>year[m]&g

96、t;>mon[m]>>day[m];}</p><p>  else if(a==5){cout<<" 請輸入新的入學(xué)年份:";cin>>date[m];}else if(a==6){cout<<" 請輸入新的院系:";cin>>yuan[m];}</p><p>  else if(

97、a==7){cout<<" 請輸入姓名: ";cin>>name[m];cout<<" 請輸入學(xué)號: ";cin>>num[m];cout<<" 請輸入出生年、月、日: ";cin>>year[m]>>mon[m]>>day[m];</p><p>  cou

98、t<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[m];cout<<" 請輸入入學(xué)年份: ";cin>>date[m];cout<<" 請輸入院系: ";cin>>yuan[m];}</p><p>  if(m!=0)cout<<" 已成功修

99、改 "<<endl;}}}</p><p>  else if(k==4){cout<<" ============== 插 入 =============== "<<endl;</p><p>  cout<<" || 1、單個 2、多個 0、返回 || "<<

100、endl;cout<<" ===================================== "<<endl;</p><p>  f1=true;while(f1){f1=false;cout<<endl<<" 請選擇操作: ";cin>>a;if(a==0)cout<<" 返回主菜

101、單界面"<<endl;</p><p>  else if(a==1){cout<<" 請選擇插入的位置:";cin>>m;if(m==0)m=1;else if(m>n)m=n+1;</p><p>  if(m<=n)for(i=n;i>=m;i--){name[i+1]=name[i];num[i+1

102、]=num[i];year[i+1]=year[i];mon[i+1]=mon[i];day[i+1]=day[i];sex[i+1]=sex[i];date[i+1]=date[i];yuan[i+1]=yuan[i];}</p><p>  n=n+1;cout<<" 請輸入姓名: ";cin>>name[m];cout<<" 請輸入學(xué)號: &

103、quot;;cin>>num[m];cout<<" 請輸入出生年、月、日: ";cin>>year[m]>>mon[m]>>day[m];</p><p>  cout<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[m];cout<<" 請輸入入學(xué)年份

104、: ";cin>>date[m];cout<<" 請輸入院系: ";cin>>yuan[m];cout<<" 已成功插入 "<<endl;}</p><p>  else if(a==2){cout<<" 請輸入要插入的個數(shù):";cin>>b;for(j=0;j

105、<b;j++){</p><p>  cout<<" 請選擇插入的位置:";cin>>m;if(m==0)m=1;else if(m>n)m=n+1;</p><p>  if(m<=n)for(i=n;i>=m;i--){name[i+1]=name[i];num[i+1]=num[i];year[i+1]=year[i

106、];mon[i+1]=mon[i];day[i+1]=day[i];sex[i+1]=sex[i];date[i+1]=date[i];yuan[i+1]=yuan[i];}</p><p>  n=n+1;cout<<" 請輸入姓名: ";cin>>name[m];cout<<" 請輸入學(xué)號: ";cin>>num[m];c

107、out<<" 請輸入出生年、月、日: ";cin>>year[m]>>mon[m]>>day[m];</p><p>  cout<<" 請選擇性別(1、男 / 2、女): ";cin>>sex[m];cout<<" 請輸入入學(xué)年份: ";cin>>date[

108、m];cout<<" 請輸入院系: ";cin>>yuan[m];cout<<" 已成功插入 "<<j+1<<" 個"<<endl<<endl;}}</p><p>  else {cout<<" 輸入不正確,請重新輸入"<<e

109、ndl;f1=true;}}}</p><p>  else if(k==5){cout<<" ============== 刪 除 =============== "<<endl;</p><p>  cout<<" || 1、單個 2、多個 0、返回 || "<<endl;cout

110、<<" ===================================== "<<endl;</p><p>  f1=true;while(f1){c=n;f1=false;cout<<endl<<" 請選擇操作: ";cin>>a;if(a==0)cout<<" 返回主菜單界面&q

111、uot;<<endl;</p><p>  else if(a==1){cout<<" 請輸入要刪除的學(xué)號或姓名:";cin>>chaxun;m=0;for(i=1;i<=n;i++)if(chaxun==name[i]||chaxun==num[i]){m=i;i=n+1;}</p><p>  if(m==0){cout&l

112、t;<" 沒有找到相應(yīng)學(xué)生的信息,無法進(jìn)行刪除"<<endl;f1=true;}</p><p>  else {cout<<" 您是否確定刪除該學(xué)生信息(Y 確定/N 取消): ";f0=true;while(f0){cin>>e;if(e=='Y'||e=='y')f0=false;else if

113、(e=='N'||e=='n'){cout<<" 已取消刪除該學(xué)生信息"<<endl;f1=true;f0=false;}else cout<<" 輸入錯誤,請重新輸入(Y 確定/N 取消):";}</p><p>  while(e=='Y'||e=='y'){e='

114、;e';for(i=m;i<=n;i++){name[i]=name[i+1];num[i]=num[i+1];year[i]=year[i+1];mon[i]=mon[i+1];day[i]=day[i+1];sex[i]=sex[i+1];date[i]=date[i+1];yuan[i]=yuan[i+1];}</p><p>  n=n-1;cout<<" 已成功刪除

115、"<<endl;}}} </p><p>  else if(a==2){cout<<" 請輸入要刪除的個數(shù):";cin>>b;for(j=0;j<b;j++){cout<<" 請輸入要刪除的學(xué)號或姓名:";cin>>chaxun;m=0;for(i=1;i<=n;i++)if(chaxun=

116、=name[i]||chaxun==num[i]){m=i;i=n+1;}</p><p>  if(m==0){cout<<" 沒有找到相應(yīng)學(xué)生的信息,無法進(jìn)行刪除"<<endl;f1=true;}</p><p>  else {cout<<" 您是否確定刪除該學(xué)生信息(Y 確定/N 取消): ";f0=tru

117、e;while(f0){cin>>e;if(e=='Y'||e=='y')f0=false;else if(e=='N'||e=='n'){cout<<" 已取消刪除該學(xué)生信息"<<endl;f1=true;f0=false;}else cout<<" 輸入錯誤,請重新輸入(Y 確定/N 取消):

118、";}</p><p>  while(e=='Y'||e=='y'){e='e';for(i=m;i<=n;i++){name[i]=name[i+1];num[i]=num[i+1];year[i]=year[i+1];mon[i]=mon[i+1];day[i]=day[i+1];sex[i]=sex[i+1];date[i]=date[i+1

119、];yuan[i]=yuan[i+1];}</p><p>  n=n-1;cout<<" 已成功刪除 "<<c-n<<" 個 "<<endl<<endl;}}}}</p><p>  else {cout<<" 輸入不正確,請重新輸入"<<end

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論