學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告 (2)_第1頁
已閱讀1頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  《學(xué)生信息管理系統(tǒng)》</p><p>  程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)報(bào)告</p><p>  專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)系 </p><p>  班 級: </p><p>  姓 名: </p><p

2、>  學(xué) 號: </p><p>  指導(dǎo)教師: </p><p>  完成日期:2012-6-25 </p><p><b>  目錄</b></p><p>  1. 課程設(shè)計(jì)目的- 3 -</p><

3、p>  1.1課程設(shè)計(jì)目的:- 3 -</p><p>  1.2課程設(shè)計(jì)題目:- 3 -</p><p>  1.3題目要求:- 3 -</p><p>  2.總體設(shè)計(jì)- 5 -</p><p>  2.1總體組成框圖:- 5 -</p><p>  -2.2總體流程圖:- 5 -</p&g

4、t;<p>  3. 詳細(xì)設(shè)計(jì)- 7 -</p><p>  3.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)- 7 -</p><p>  3.2信息錄入模塊- 7 -</p><p>  3.1.1函數(shù)功能:- 7 -</p><p>  3.1.2函數(shù)入口:- 8 -</p><p>  3.1.3函數(shù)流程圖:- 8

5、 -</p><p>  3.2顯示學(xué)生信息模塊- 8 -</p><p>  3.2.1函數(shù)功能:- 8 -</p><p>  3.2.2函數(shù)介紹:- 9 -</p><p>  3.2.3函數(shù)流程圖:- 9 -</p><p>  3.3查找學(xué)生信息模塊- 9 -</p><p>

6、;  3.3.1函數(shù)功能:- 9 -</p><p>  3.3.2函數(shù)介紹:- 9 -</p><p>  3.3.3函數(shù)流程圖- 10 -</p><p>  3.4刪除學(xué)生信息模塊- 10 -</p><p>  3.4.1函數(shù)功能:- 10 -</p><p>  3.4.2函數(shù)介紹:- 11 -&

7、lt;/p><p>  3.4.3函數(shù)流程圖:- 11 -</p><p>  3.5修改學(xué)生信息模塊- 11 -</p><p>  3.5.1函數(shù)功能:- 11 -</p><p>  3.5.2函數(shù)介紹:- 12 -</p><p>  3.5.3函數(shù)流程圖:- 12 -</p><p&

8、gt;  4、運(yùn)行結(jié)果- 13 -</p><p>  4.1主界面- 13 -</p><p>  4.2錄入信息- 13 -</p><p>  4.3顯示學(xué)生信息- 14 -</p><p>  4.4查找學(xué)生信息- 14 -</p><p>  4.5刪除學(xué)生信息- 15 -</p>

9、<p>  4.6修改學(xué)生信息- 16 -</p><p>  5、 課程設(shè)計(jì)總結(jié)- 17 -</p><p>  6、參考文獻(xiàn)- 18 -</p><p>  1. 課程設(shè)計(jì)目的 </p><p>  1.1課程設(shè)計(jì)目的:</p><p>  《C++程序設(shè)計(jì)》是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的必修課。自己做

10、一個課程設(shè)計(jì)是學(xué)習(xí)完本書后進(jìn)行的一次全面的綜合性練習(xí)。其目的在于加深對C++編程的理解,培養(yǎng)學(xué)生的實(shí)踐能力,促進(jìn)理論與實(shí)踐的結(jié)合。通過課程設(shè)計(jì),讓學(xué)生能夠熟練運(yùn)用C++進(jìn)行面向?qū)ο缶幊?,建立對象模型,降低軟件的?fù)雜性,改善軟件的重用性和維護(hù)性,提高軟件的生產(chǎn)效率,全面掌握面向?qū)ο缶幊碳夹g(shù)。</p><p>  1.2課程設(shè)計(jì)題目:</p><p>  題目: 學(xué)生信息管理系統(tǒng) </p

11、><p><b>  1.3題目要求: </b></p><p>  1.問題描述(功能要求):</p><p>  學(xué)生信息包括:學(xué)號,姓名,年齡,性別,出生年月,地址,電話,E-mail等。試設(shè)計(jì)一學(xué)生管理系統(tǒng),使之能提供以下功能:</p><p><b>  系統(tǒng)以菜單方式工作</b></p

12、><p>  學(xué)生信息錄入功能(學(xué)生信息用文件保存)----輸入</p><p>  學(xué)生信息瀏覽功能----輸出</p><p>  查詢,排序功能----算法</p><p><b>  按學(xué)號查詢</b></p><p><b>  按姓名查詢</b></p>

13、<p> ?。?)學(xué)生信息的刪除與修改(可選項(xiàng))</p><p>  2.問題的解決方案:</p><p>  根據(jù)系統(tǒng)功能要求,可以講問題解決分為以下步驟:</p><p>  分析系統(tǒng)中的各個實(shí)體之間的關(guān)系及其屬性和行為;</p><p>  根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次;</p><p>  完成類

14、層次中各個類的描述(包括屬性和方法);</p><p>  完成類中各個成員函數(shù)的定義;</p><p>  完成系統(tǒng)的應(yīng)用模塊;</p><p><b>  功能調(diào)用;</b></p><p>  完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p><b>  其他要求:</b

15、></p><p>  只能使用C/C++語言,源程序要有適當(dāng)?shù)淖⑨專钩绦蛉菀组喿x</p><p>  至少采用文本菜單界面(如果能采用圖形菜單界面更好)</p><p>  學(xué)生可自動增加新功能模塊</p><p><b>  2.總體設(shè)計(jì) </b></p><p>  2.1總體組成框

16、圖:</p><p>  圖2-1 物理模型圖</p><p><b>  2.2總體流程圖:</b></p><p>  圖2-2 總體流程圖</p><p><b>  詳細(xì)設(shè)計(jì)</b></p><p><b>  3.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)</b><

17、/p><p>  class student</p><p><b>  {</b></p><p><b>  public:</b></p><p>  student();</p><p>  void set(); //初始化信息,第一次對信息的錄入</

18、p><p>  void add(); //添加學(xué)生信息</p><p>  void del(); //刪除某學(xué)生信息</p><p>  void change(); //修改某學(xué)生信息</p><p>  void search(); //查詢某學(xué)生信息</p><p>  voi

19、d display(); //顯示全部學(xué)生信息</p><p>  bool test(long num);</p><p><b>  private:</b></p><p>  static int num;</p><p>  long xuehao;</p><p><b>

20、;  int age;</b></p><p>  string tel; </p><p>  string name,sex,address,birthday,email;</p><p><b>  };</b></p><p><b>  3.2信息錄入模塊</b></

21、p><p>  3.1.1函數(shù)功能:</p><p>  錄用學(xué)生的基本信息。使用磁盤存儲數(shù)據(jù),以便在后面的使用。</p><p>  3.1.2函數(shù)入口:</p><p>  Student對象的成員函數(shù)。</p><p>  入口函數(shù):set();使用fstring頭文件,向文件寫入數(shù)據(jù)。在錄入數(shù)據(jù)的時(shí)候進(jìn)行數(shù)據(jù)的查找

22、,學(xué)生的學(xué)號是不相同的,對學(xué)號進(jìn)行查找,若有相同的則提示錯誤,若是沒有相同的則允許添加信息。</p><p>  3.1.3函數(shù)流程圖:</p><p>  圖3-1 set()信息錄入函數(shù)流程圖</p><p>  3.2顯示學(xué)生信息模塊</p><p>  3.2.1函數(shù)功能:</p><p>  顯示所有學(xué)生的相

23、關(guān)信息。</p><p>  3.2.2函數(shù)介紹: </p><p><b>  普通成員函數(shù)。</b></p><p>  void display();逐行的讀取文件中的數(shù)據(jù),直到文件中的數(shù)據(jù)讀取完全,將讀出的數(shù)據(jù)顯示到屏幕上。</p><p>  3.2.3函數(shù)流程圖:</p><p>  

24、圖3-2 display()信息展示流程圖</p><p>  3.3查找學(xué)生信息模塊</p><p>  3.3.1函數(shù)功能:</p><p>  查找文件中的學(xué)生的所有信息中符合查找條件的數(shù)據(jù),然后將差得的結(jié)構(gòu)返回給用戶。</p><p>  3.3.2函數(shù)介紹:</p><p><b>  普通成員函數(shù)

25、</b></p><p>  void search ();打開文件,如果文件打開錯誤,提示錯誤信息。打開文件成功后,要求用戶輸入查找的條件,使用文件讀取功能,將特定的數(shù)據(jù)取出用戶輸入的信息進(jìn)行比對,若相同則返回該學(xué)生的基本信息。</p><p>  該函數(shù)提供兩種查詢的條件,可以按照學(xué)號和姓名查找,對與不同的條件的查詢其結(jié)果一定相同。給用戶提供更多的選擇。</p>

26、<p>  3.3.3函數(shù)流程圖</p><p>  圖3-3 search()查找函數(shù)流程圖</p><p>  3.4刪除學(xué)生信息模塊</p><p>  3.4.1函數(shù)功能:</p><p>  刪除文件中該特定條件的信息。對不需要的數(shù)據(jù)進(jìn)行清除,降低數(shù)據(jù)的冗余度。</p><p>  3.4.2函

27、數(shù)介紹:</p><p><b>  普通成員函數(shù)。</b></p><p>  void del ();對需要刪除的數(shù)據(jù),提供姓名的查找形式,在后面的提供更多的查找方式,但是方式都是相同的,只是查詢的條件不相同而已。</p><p>  3.4.3函數(shù)流程圖:</p><p>  圖3-4 del()刪除函數(shù)流程圖&l

28、t;/p><p>  3.5修改學(xué)生信息模塊</p><p>  3.5.1函數(shù)功能:</p><p>  修改文件中的學(xué)生的相關(guān)信息。對文件中有錯誤的信息提供修改的函數(shù)功能。減低數(shù)據(jù)的錯誤率。</p><p>  3.5.2函數(shù)介紹:</p><p><b>  普通成員函數(shù)。</b></p&

29、gt;<p>  void change ();調(diào)用查詢的函數(shù),使用不同的查詢的方式進(jìn)行數(shù)據(jù)的查詢,將查詢得到的結(jié)果返回給用戶,用戶決定是否修改該數(shù)據(jù)。</p><p>  3.5.3函數(shù)流程圖:</p><p>  圖3-5 change()修改函數(shù)流程圖</p><p><b>  4、運(yùn)行結(jié)果</b></p>

30、<p><b>  4.1主界面</b></p><p>  圖4-1—程序主界面</p><p><b>  4.2錄入信息</b></p><p><b>  圖4-2—信息錄入</b></p><p><b>  4.3顯示學(xué)生信息</b>

31、</p><p>  圖4-3—信息一覽表</p><p><b>  4.4查找學(xué)生信息</b></p><p>  圖4-4—學(xué)生信息查詢</p><p><b>  4.5刪除學(xué)生信息</b></p><p>  圖4-5—刪除“李治偉”前</p><

32、;p>  圖4-6—刪除“李治偉”后</p><p><b>  4.6修改學(xué)生信息</b></p><p>  圖4-7—修改學(xué)生“楊尚”信息前</p><p>  圖4-8—修改學(xué)生“楊尚”信息后</p><p><b>  課程設(shè)計(jì)總結(jié)</b></p><p> 

33、 通過這次的課程設(shè)計(jì),讓我充分的感覺到了要自己設(shè)計(jì)一個程序是多么的難,以及學(xué)習(xí)好c++是多么的重要。從一遍一遍得修改到最后的定稿,使我在知識和能力上都得到了極大的提高,在這個程序的設(shè)計(jì)過程中,我清楚的意識到自己的水平有多么的薄弱,課程的知識學(xué)得有多么的不扎實(shí)??淳W(wǎng)上的例子好像覺得也沒那么難,自己一上機(jī)實(shí)際操作就出現(xiàn)了很多問題,調(diào)試的時(shí)候系統(tǒng)總是在報(bào)錯,還有很多警告,每增加一個函數(shù)就要調(diào)試好久,有時(shí)候應(yīng)為少了一個大括號或是分號,導(dǎo)致要找很

34、久很久。雖然系統(tǒng)可以運(yùn)行,也具有了一些基本的功能,但我意識到了自己有太多的不足。以后還會有很多的課程設(shè)計(jì),一定要吸取這次的教訓(xùn),把知識學(xué)懂學(xué)透學(xué)精,真正的為我所用,這樣走上社會我才能真正的發(fā)揮所長。</p><p>  本次的課程設(shè)計(jì)對我們也是一個很好的實(shí)踐的機(jī)會,鍛煉了自己,提高了自己編程的能力,為今后的項(xiàng)目打好基礎(chǔ)。</p><p><b>  6、參考文獻(xiàn)</b>

35、;</p><p>  1.《C++程序設(shè)計(jì)》 作者:譚浩強(qiáng) 清華大學(xué)出版社</p><p>  2.《Visual C++程序設(shè)計(jì)技巧與實(shí)例》 作者:許福 舒志 張威 等 出版社:中國鐵道出版社</p><p>  3.《Visual C++全能速查寶典》作者:劉銳寧,梁水,宋坤 人民郵電出版社</p><p>  4.《C++語言程

36、序設(shè)計(jì)題典》 作者:李春葆,曾平,劉斌 清華大學(xué)出版社</p><p>  #include<iostream></p><p>  #include<fstream></p><p>  #include<string></p><p>  #include<iomanip></p&

37、gt;<p>  using namespace std;</p><p>  class student</p><p><b>  {</b></p><p><b>  public:</b></p><p>  student();</p><p>  

38、void set(); //初始化信息,第一次對信息的錄入</p><p>  void add(); //添加學(xué)生信息</p><p>  void del(); //刪除某學(xué)生信息</p><p>  void change(); //修改某學(xué)生信息</p><p>  void search()

39、; //查詢某學(xué)生信息</p><p>  void display(); //顯示全部學(xué)生信息</p><p>  bool test(long num);</p><p><b>  private:</b></p><p>  static int num;</p><p>  l

40、ong xuehao;</p><p><b>  int age;</b></p><p>  string tel; </p><p>  string name,sex,address,birthday,email;</p><p><b>  };</b></p><

41、p>  student::student() {}</p><p>  void student::set()</p><p><b>  {</b></p><p><b>  int i;</b></p><p>  long setxuehao;</p><

42、p>  string setname;</p><p>  int setage;</p><p>  string setsex;</p><p>  string setbir;</p><p>  string setaddress;</p><p>  string settel; </p&

43、gt;<p>  string setemail;</p><p>  ofstream outfile;</p><p>  outfile.open("f1.txt",ios::out|ios::app); //----打開文件----</p><p>  if(!outfile)</p><p>&

44、lt;b>  {</b></p><p>  cerr<<" open error"<<endl; </p><p><b>  exit(1);</b></p><p><b>  }</b></p><p>  //----依次錄入相

45、應(yīng)個數(shù)的學(xué)生信息----</p><p>  for(i=0;;i++)</p><p><b>  {</b></p><p>  cout<<"當(dāng)姓名輸入為'0'時(shí),停止輸入!??!"<<endl;</p><p>  cout<<"請輸

46、入姓名:"<<endl;</p><p>  cin>>setname;</p><p>  if(setname=="0") break;</p><p>  if(setname!="0")</p><p><b>  { </b><

47、/p><p>  cout<<"請輸入學(xué)號(2011508013):"<<endl;</p><p>  cin>>setxuehao;</p><p>  if(test(setxuehao))</p><p><b>  {</b></p><p

48、>  name=setname;</p><p>  outfile<<setname<<" ";</p><p>  if(1000000000<=setxuehao&&setxuehao<=9999999999)</p><p>  {xuehao=setxuehao;</p

49、><p>  outfile<<setxuehao<<" ";</p><p><b>  }</b></p><p><b>  else </b></p><p>  {cout<<"你輸入的學(xué)號不符合要求"<<

50、;endl;</p><p>  cout<< "請重新輸入!!!"<<endl;</p><p>  cout<<"請輸入學(xué)號(2011508013):"<<endl;</p><p>  cin>>setxuehao;</p><p>  

51、outfile<<setxuehao<<" ";</p><p><b>  }</b></p><p>  cout<<"請輸入年齡:"<<endl;</p><p>  cin>>setage;</p><p>  

52、if(0<=setage)</p><p>  {age=setage;</p><p>  outfile<<setage<<" ";}</p><p><b>  else</b></p><p><b>  {</b></p>

53、<p>  cout<<"你輸入的年齡不符合要求"<<endl;</p><p>  cout<< "請重新輸入!!!"<<endl;</p><p>  cout<<"請輸入年齡:"<<endl;</p><p>  cin

54、>>setage;</p><p>  age=setage;</p><p>  outfile<<setage<<" ";</p><p><b>  }</b></p><p>  cout<<"請輸入性別(男或女):"<

55、;<endl;</p><p>  cin>>setsex;</p><p>  sex=setsex;</p><p>  outfile<<setsex<<" ";</p><p>  cout<<"請輸入生日(1992-10-4):"<

56、<endl;</p><p>  cin>>setbir;</p><p>  birthday=setbir;</p><p>  outfile<<setbir<<" ";</p><p>  cout<<"請輸入電話號碼:"<<e

57、ndl;</p><p>  cin>>settel;</p><p>  tel=settel;</p><p>  outfile<<settel<<" ";</p><p>  cout<<"請輸入家庭住址:"<<endl;</p&

58、gt;<p>  cin>>setaddress;</p><p>  address=setaddress;</p><p>  outfile<<setaddress<<" ";</p><p>  cout<<"請輸入E-mail(840174956@qq.com):&

59、quot;<<endl;</p><p>  cin>>setemail;</p><p>  email=setemail;</p><p>  outfile<<setemail<<endl;</p><p><b>  }</b></p><p&g

60、t;<b>  }</b></p><p>  cout<<endl;</p><p><b>  }</b></p><p>  outfile.close(); //----關(guān)閉文件----</p><p><b>  }</b></p>&

61、lt;p>  void student::add()</p><p><b>  {</b></p><p>  string addname;</p><p>  long addxuehao;</p><p>  int addage;</p><p>  string addse

62、x;</p><p>  string addbirthday;</p><p>  string addaddress;</p><p>  string addtel; </p><p>  string addemail;</p><p>  //----以追加的方式錄入信息,直接將信息追加到以前文件的末尾---

63、-</p><p>  ofstream outfile;</p><p>  outfile.open("f1.txt",ios::out|ios::app); //----打開文件----</p><p>  if(!outfile)</p><p><b>  {</b></p>

64、<p>  cerr<<" open error"<<endl; </p><p><b>  exit(1);</b></p><p><b>  }</b></p><p>  //----依次輸入相應(yīng)的數(shù)據(jù),并且追加到之前的文件中去----</p>

65、<p>  cout<<"請輸入您要添加的數(shù)據(jù)"<<endl;</p><p>  cout<<"請輸入姓名:"<<endl;</p><p>  cin>>addname;</p><p>  cout<<"請輸入學(xué)號(20115

66、08013):"<<endl;</p><p>  cin>>addxuehao;</p><p>  if(test(addxuehao))</p><p><b>  {</b></p><p>  name=addname;</p><p>  outfi

67、le<<addname<<" ";</p><p>  if(1000000000<=addxuehao&&addxuehao<=9999999999)</p><p>  {xuehao=addxuehao;</p><p>  outfile<<addxuehao<<

68、;" ";</p><p><b>  }</b></p><p><b>  else </b></p><p>  {cout<<"你輸入的學(xué)號不符合要求"<<endl;</p><p>  cout<< "

69、請重新輸入!!!"<<endl;</p><p>  cout<<"請輸入學(xué)號(2011508013):"<<endl;</p><p>  cin>>addxuehao;</p><p>  outfile<<addxuehao<<" ";&

70、lt;/p><p><b>  }</b></p><p>  cout<<"請輸入年齡:"<<endl;</p><p>  cin>>addage;</p><p>  if(0<=addage)</p><p>  {age=adda

71、ge;</p><p>  outfile<<addage<<" ";}</p><p><b>  else</b></p><p><b>  {</b></p><p>  cout<<"你輸入的年齡不符合要求"&l

72、t;<endl;</p><p>  cout<< "請重新輸入!!!"<<endl;</p><p>  cout<<"請輸入年齡:"<<endl;</p><p>  cin>>addage;</p><p>  age=addage

73、;</p><p>  outfile<<addage<<" ";</p><p><b>  }</b></p><p>  cout<<"請輸入性別(男或女):"<<endl;</p><p>  cin>>adds

74、ex;</p><p>  sex=addsex;</p><p>  outfile<<addsex<<" ";</p><p>  cout<<"請輸入生日(1992-10-4):"<<endl;</p><p>  cin>>addbi

75、rthday;</p><p>  birthday=addbirthday;</p><p>  outfile<<addbirthday<<" ";</p><p>  cout<<"請輸入電話號碼:"<<endl;</p><p>  cin>

76、;>addtel;</p><p>  tel=addtel;</p><p>  outfile<<addtel<<" ";</p><p>  cout<<"請輸入家庭住址:"<<endl;</p><p>  cin>>addadd

77、ress;</p><p>  address=addaddress;</p><p>  outfile<<addaddress<<" ";</p><p>  cout<<"請輸入E-mail(840174956@qq.com):"<<endl;</p><

78、;p>  cin>>addemail;</p><p>  email=addemail;</p><p>  outfile<<addemail<<endl;</p><p><b>  }</b></p><p><b>  }</b></p>

79、;<p>  void student::del()</p><p><b>  {</b></p><p>  long XUEHAO;</p><p>  bool flag=false;</p><p>  cout<<"\n\t\t刪除學(xué)生的學(xué)號:";</p&g

80、t;<p>  cin>>XUEHAO;</p><p>  ifstream storeFile("f1.txt");</p><p>  if (!storeFile)</p><p><b>  {</b></p><p>  ofstream storeFile1(&

81、quot;f1.txt");//</p><p>  storeFile1.close();</p><p>  cout << endl << endl << "\t數(shù)據(jù)為空!!!!" << endl << endl << "\t";</p><p

82、>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  ofstream tempFile("temp.txt");</p><p>  while (sto

83、reFile >> name>>xuehao>>age>>sex>>birthday>>tel>>address>>email)</p><p><b>  {</b></p><p>  if (XUEHAO==xuehao)</p><p>  

84、flag = true;</p><p><b>  else</b></p><p><b>  {</b></p><p>  tempFile << name<<" "<<xuehao<<" "<<age<&

85、lt;" "<<sex<<" "<<birthday<<" "<<tel<<" "<<address<<" "<<email<<" "<<endl;</p>&l

86、t;p><b>  }</b></p><p><b>  }</b></p><p>  tempFile.close();</p><p>  storeFile.close();</p><p>  if (!flag)</p><p><b>  {&

87、lt;/b></p><p>  cout << endl << endl << "\t數(shù)據(jù)中沒有該學(xué)生!!!" << endl << endl << "\t";</p><p>  system("pause");</p><p&g

88、t;<b>  return;</b></p><p><b>  }</b></p><p>  ofstream storeFile1("f1.txt");</p><p>  ifstream tempFile1("temp.txt");</p><p>

89、;  storeFile1 << tempFile1.rdbuf();//將數(shù)據(jù)從temp文件導(dǎo)回。</p><p>  cout << "\t\t刪除成功?。。?quot;<<endl;</p><p>  storeFile1.close();</p><p>  tempFile1.close();</p&g

90、t;<p><b>  }</b></p><p>  void student::change()</p><p><b>  {</b></p><p>  long XUEHAO;</p><p>  bool flag=false;</p><p>  

91、cout<<"\n\t\t修改的學(xué)生學(xué)號:";</p><p>  cin>>XUEHAO;</p><p>  ifstream storeFile("f1.txt");</p><p>  if (!storeFile)</p><p><b>  {</b&

92、gt;</p><p>  ofstream storeFile1("f1.txt");//</p><p>  storeFile1.close();</p><p>  cout << endl << endl << "\t文件為空!!!!" << endl <<

93、 endl << "\t";</p><p>  system("pause");</p><p>  system("cls");</p><p><b>  return;</b></p><p><b>  }</b>&l

94、t;/p><p>  ofstream tempFile("temp.txt");</p><p>  while (storeFile >> name>>xuehao>>age>>sex>>birthday>>tel>>address>>email)</p>&l

95、t;p><b>  {</b></p><p>  if (XUEHAO==xuehao)</p><p><b>  {</b></p><p>  flag = true;</p><p>  cout<<"請輸入姓名:"<<endl;</

96、p><p>  cin>>name;</p><p>  if(name!="0")</p><p><b>  {</b></p><p>  cout<<"請輸入學(xué)號(2011508013):"<<endl;</p><p&g

97、t;  cin>>xuehao;</p><p>  cout<<"請輸入年齡:"<<endl;</p><p><b>  cin>>age;</b></p><p>  cout<<"請輸入性別(男或女):"<<endl;<

98、/p><p><b>  cin>>sex;</b></p><p>  cout<<"請輸入生日(1992-10-4):"<<endl;</p><p>  cin>>birthday;</p><p>  cout<<"請輸入電話:

99、"<<endl;</p><p><b>  cin>>tel;</b></p><p>  cout<<"請輸入地址:"<<endl;</p><p>  cin>>address;</p><p>  cout<<&

100、quot;請輸入E-mail(840174956@qq.com):"<<endl;</p><p>  cin>>email;</p><p><b>  }</b></p><p><b>  }</b></p><p>  tempFile << n

101、ame<<" "<<xuehao<<" "<<age<<" "<<sex<<" "<<birthday<<" "<<tel<<" "<<address<<

102、;" "<<email<<" "<<endl;</p><p><b>  }</b></p><p>  tempFile.close();</p><p>  storeFile.close();</p><p>  if (!flag)

103、</p><p><b>  {</b></p><p>  cout << endl << endl << "\t數(shù)據(jù)中沒有該學(xué)生!!!" << endl << endl << "\t";</p><p>  system(&quo

104、t;pause");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  ofstream storeFile1("f1.txt");</p><p>  ifstream tempFile1("te

105、mp.txt");</p><p>  storeFile1 << tempFile1.rdbuf();</p><p>  storeFile1.close();</p><p>  tempFile1.close();</p><p>  cout<<"已修改成功!"<<e

106、ndl;</p><p><b>  }</b></p><p>  void student::search()</p><p><b>  {</b></p><p><b>  int w=0;</b></p><p><b>  cha

107、r ch;</b></p><p>  int n;//輸入的學(xué)號</p><p>  string searchname;</p><p>  cout<<"a.按學(xué)號查找 b.按姓名查找"<<endl;</p><p>  ifstream infile("f1.tx

108、t"); </p><p>  if(!infile)</p><p><b>  {</b></p><p>  cerr<<" open error"<<endl;</p><p><b>  exit(1);</b></p>

109、<p><b>  }</b></p><p>  cout<<"請輸入a或者b!"<<endl;</p><p><b>  cin>>ch;</b></p><p>  if(ch=='a')</p><p>&l

110、t;b>  {</b></p><p>  cout<<"請輸入學(xué)號!"<<endl;</p><p><b>  cin>>n;</b></p><p>  while(infile>> name>>xuehao>>age>&g

111、t;sex>>birthday>>tel>>address>>email)</p><p><b>  {</b></p><p>  if(xuehao==n)</p><p><b>  {</b></p><p><b>  w=1;

112、</b></p><p>  cout<<"姓名:"<<name<<endl;</p><p>  cout<<"學(xué)號:"<<xuehao<<endl;</p><p>  cout<<"年齡:"<<

113、age<<endl;</p><p>  cout<<"性別:"<<sex<<endl;</p><p>  cout<<"生日:"<<birthday<<endl;</p><p>  cout<<"電話:"&

114、lt;<tel<<endl;</p><p>  cout<<"地址:"<<address<<endl;</p><p>  cout<<"E-mail:"<<email<<endl;</p><p><b>  }</b

115、></p><p><b>  }</b></p><p><b>  if(w==0)</b></p><p>  cout<<"無此人信息!"<<endl;</p><p><b>  }</b></p>&l

116、t;p>  else if(ch=='b')</p><p><b>  {</b></p><p>  cout<<"請輸入姓名!"<<endl;</p><p>  cin>>searchname;</p><p>  while(infi

117、le>> name>>xuehao>>age>>sex>>birthday>>tel>>address>>email)</p><p>  if(name==searchname)</p><p><b>  {</b></p><p><b&

118、gt;  w=1;</b></p><p>  cout<<"姓名:"<<name<<endl;</p><p>  cout<<"學(xué)號:"<<xuehao<<endl;</p><p>  cout<<"年齡:"

119、;<<age<<endl;</p><p>  cout<<"性別:"<<sex<<endl;</p><p>  cout<<"生日:"<<birthday<<endl;</p><p>  cout<<"電

120、話:"<<tel<<endl;</p><p>  cout<<"地址:"<<address<<endl;</p><p>  cout<<"E-mail:"<<email<<endl;</p><p><b>

121、  }</b></p><p><b>  if(w==0)</b></p><p>  cout<<"無此人信息!"<<endl;</p><p><b>  }</b></p><p>  else cout<<"沒有

122、此選項(xiàng)!"<<endl;</p><p><b>  }</b></p><p>  bool student::test(long num)</p><p><b>  {</b></p><p>  string setname;</p><p> 

123、 int setage;</p><p>  string setsex;</p><p>  string setbir;</p><p>  string setaddress;</p><p>  string settel; </p><p>  string setemail;</p>

124、<p>  long setxuehao;</p><p>  ifstream infile("f1.txt"); </p><p>  if(!infile)</p><p><b>  {</b></p><p>  cerr<<" open error"

125、;<<endl;</p><p><b>  exit(1);</b></p><p><b>  }</b></p><p>  while(infile>>setname>>setxuehao>>setage>>setsex>>birthday&g

126、t;>tel>>setaddress>>email)</p><p><b>  {</b></p><p>  if(setxuehao==num)</p><p><b>  {</b></p><p>  cout<<"學(xué)生學(xué)號不能相同?。?/p>

127、"<<endl;</p><p>  return false;</p><p><b>  }</b></p><p><b>  }</b></p><p>  return true;</p><p><b>  }</b>&

128、lt;/p><p>  void student::display()</p><p><b>  {</b></p><p>  ifstream infile("f1.txt",ios::in); </p><p>  if(!infile)</p><p><b>

129、  {</b></p><p>  cerr<<" open error"<<endl;</p><p><b>  exit(1);</b></p><p><b>  }</b></p><p>  while(infile>>

130、 name>>xuehao>>age>>sex>>birthday>>tel>>address>>email)</p><p><b>  { </b></p><p>  cout<<"姓名:"<<name<<endl;&l

131、t;/p><p>  cout<<"學(xué)號:"<<xuehao<<endl;</p><p>  cout<<"年齡:"<<age<<endl;</p><p>  cout<<"性別:"<<sex<<en

132、dl;</p><p>  cout<<"生日:"<<birthday<<endl;</p><p>  cout<<"電話:"<<tel<<endl;</p><p>  cout<<"地址:"<<addres

133、s<<endl;</p><p>  cout<<"E-mail:"<<email<<endl;</p><p>  cout<<endl<<endl;</p><p><b>  }</b></p><p>  infile.c

134、lose();</p><p><b>  }</b></p><p>  student stu;</p><p>  void main()</p><p><b>  {</b></p><p><b>  char ch;</b></p&

135、gt;<p>  void menu();</p><p><b>  menu();</b></p><p><b>  cin>>ch;</b></p><p>  while(ch!='0')</p><p><b>  {</b>

136、;</p><p>  system("cls");</p><p>  switch(ch)</p><p><b>  {</b></p><p>  case '1':stu.set();break;</p><p>  case '2':

137、stu.add();break;</p><p>  case '3':stu.del();break;</p><p>  case '4':stu.change();break;</p><p>  case '5':stu.search();break;</p><p>  case &#

138、39;6':stu.display();break;</p><p>  case '0':cout<<"退出系統(tǒng)";break;</p><p>  default:cout<<"沒有此選項(xiàng)!"<<endl;break;</p><p><b>  }&l

139、t;/b></p><p><b>  menu();</b></p><p><b>  cin>>ch;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>

140、  void menu()</p><p><b>  {</b></p><p>  cout<<'\t'<<'\t'<<"**********************************************"<<endl;</p><p&

141、gt;  cout<<'\t'<<'\t'<<"********************** **********************"<<endl;</p><p>  cout<<endl;</p><p>  cout<<'\t'<&

142、lt;'\t'<<" ********* 學(xué)生信息管理系統(tǒng) ********* "<<endl;</p><p>  cout<<endl;</p><p>  cout<<'\t'<<'\t'<<"***************

143、******* ********李治偉********"<<endl;</p><p>  cout<<'\t'<<'\t'<<"********************** ******計(jì) 科 1 1*******"<<endl;</p><p>  cout&l

144、t;<'\t'<<'\t'<<"**********************************************"<<endl;</p><p>  cout<<'\t'<<'\t'<<"**********************

145、************************"<<endl;</p><p>  cout<<endl<<endl<<endl;</p><p>  cout<<'\t'<<'\t'<<"********************************

146、**************"<<endl;</p><p>  cout<<'\t'<<'\t'<<" **———— 1.錄入 ————** "<<endl;</p><p>  cout<<'\t'<

147、<'\t'<<" —**——— 2.添加 ———**— "<<endl;</p><p>  cout<<'\t'<<'\t'<<" ——**—— 3.刪除 ——**—— "<<endl

148、;</p><p>  cout<<'\t'<<'\t'<<" —**——— 4.修改 ———**— "<<endl;</p><p>  cout<<'\t'<<'\t'<<"

149、 ——**—— 5.查詢 ——**—— "<<endl;</p><p>  cout<<'\t'<<'\t'<<" —**——— 6.顯示全部 ———**— "<<endl;</p><p>  cout<&l

150、t;'\t'<<'\t'<<" **———— 0.退出 ————** "<<endl;</p><p>  cout<<'\t'<<'\t'<<"************************************

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論