2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩23頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  程序設(shè)計(jì)報(bào)告</b></p><p>  課程名稱(chēng): C++程序設(shè)計(jì) </p><p>  設(shè)計(jì)題目: 學(xué)生信息管理系統(tǒng) </p><p>  系 別: 計(jì)算機(jī)科學(xué)與技術(shù)系 </p><p>  專(zhuān)

2、 業(yè): 網(wǎng)絡(luò)工程 </p><p>  姓 名: </p><p>  起止日期: 2011年5月23日 ~ 2011年6月15日</p><p>  指導(dǎo)教師: </p>&l

3、t;p><b>  1.引言1</b></p><p><b>  2.需求分析1</b></p><p>  2.1 課程設(shè)計(jì)題目1</p><p>  2.2 課程設(shè)計(jì)任務(wù)與要求1</p><p>  2.3 設(shè)計(jì)需求1</p><p>  2.4 軟硬件

4、運(yùn)行環(huán)境1</p><p><b>  3.概要設(shè)計(jì)1</b></p><p>  3.1算法設(shè)計(jì)思想1</p><p>  3.2 程序?qū)崿F(xiàn)流程圖2</p><p><b>  4.詳細(xì)設(shè)計(jì)2</b></p><p><b>  4.1 主函數(shù)2&l

5、t;/b></p><p>  4.2 錄入函數(shù)3</p><p><b>  4.3輸出函數(shù)4</b></p><p><b>  4.4查找函數(shù)5</b></p><p><b>  4.5刪除函數(shù)6</b></p><p><b

6、>  4.6顯示函數(shù)7</b></p><p><b>  4.7修改函數(shù)7</b></p><p><b>  4.8保存函數(shù)8</b></p><p><b>  4.9統(tǒng)計(jì)函數(shù)8</b></p><p>  5.調(diào)試與操作說(shuō)明9</p&g

7、t;<p>  5.1 初始化界面9</p><p>  5.1 錄入學(xué)生信息界面10</p><p>  5.2 保存學(xué)生信息界面10</p><p>  5.3 顯示學(xué)生信息界面11</p><p>  5.4 查找學(xué)生信息界面11</p><p>  5.5 修改學(xué)生信息界面12<

8、/p><p>  5.6 統(tǒng)計(jì)學(xué)生信息界面12</p><p>  5.7刪除學(xué)生信息界面13</p><p>  6.課程設(shè)計(jì)總結(jié)與體會(huì)13</p><p><b>  8.附錄13</b></p><p><b>  課程設(shè)計(jì)的主要內(nèi)容</b></p>

9、<p><b>  1.引言</b></p><p>  “信息手段革命”轉(zhuǎn)向“信息內(nèi)容革命”,引發(fā)了全球性數(shù)字校園建設(shè)浪潮。為滿(mǎn)足為學(xué)校服務(wù)這一基本功能,數(shù)字校園應(yīng)定位于信息服務(wù),對(duì)學(xué)生的信息的高效而準(zhǔn)確系統(tǒng)設(shè)計(jì)的出發(fā)點(diǎn)和最終目的,既要能滿(mǎn)足學(xué)生和老師的一般需求,又要能夠針對(duì)用戶(hù)的類(lèi)型、需求特征等確定它的權(quán)限以便進(jìn)行管理。</p><p>  當(dāng)今社會(huì)是一

10、個(gè)講究效率的社會(huì),人們?yōu)榱斯?jié)省時(shí)間提高效率進(jìn)行著個(gè)中改造、常識(shí)和分析,運(yùn)用各種高科技手段來(lái)適應(yīng)不斷變化的社會(huì),各種各樣的信息管理系統(tǒng)逐漸成為了人們工作的不可缺少的工具。隨著各個(gè)高校的擴(kuò)招,大學(xué)生的人數(shù)也越來(lái)越多,每次的學(xué)生信息統(tǒng)計(jì)工作也變得越來(lái)越繁重,而且經(jīng)常產(chǎn)生差錯(cuò)。如果仍用手工操作或使用相當(dāng)煩瑣的軟件,既浪費(fèi)了人力,又浪費(fèi)了物力,效率無(wú)法提高。針對(duì)這種情況開(kāi)發(fā)了學(xué)生信息管理系統(tǒng)軟件,能夠適應(yīng)現(xiàn)今社會(huì)各個(gè)學(xué)校的需要簡(jiǎn)化學(xué)生信息管理過(guò)程

11、,提高效率。該系統(tǒng)軟件具有簡(jiǎn)單易學(xué)易用,便于管理等特點(diǎn),是學(xué)校信息管理的一種重要工具</p><p><b>  2.需求分析</b></p><p>  2.1 課程設(shè)計(jì)題目</p><p><b>  學(xué)生信息管理系統(tǒng)</b></p><p>  2.2 課程設(shè)計(jì)任務(wù)與要求</p>

12、<p>  設(shè)計(jì)一個(gè)程序?qū)崿F(xiàn)基本的學(xué)生信息數(shù)據(jù)管理,如:具有建立文件,讀取文件和保存記錄的功能,并可增加、顯示、修改、刪除、查詢(xún)學(xué)生記錄的功能,并能對(duì)學(xué)生成績(jī)進(jìn)行統(tǒng)計(jì).其中數(shù)據(jù)的查找、數(shù)據(jù)的刪除又可通過(guò)不同的方式如按學(xué)號(hào)或姓名等進(jìn)行操作。</p><p><b>  2.3 設(shè)計(jì)需求</b></p><p>  學(xué)生信息管理系統(tǒng),為了替代人工管理而開(kāi)發(fā)的一

13、個(gè)軟件系統(tǒng),它代替人工完成對(duì)學(xué)生成績(jī)信息數(shù)據(jù)的搜集、處理、加工、存儲(chǔ)等工作,具有嚴(yán)密性、安全性,大大增大了過(guò)往人工管理的準(zhǔn)確性,提高了工作效率,減小了工作人員的工作量</p><p>  學(xué)生信息管理系統(tǒng)要完成對(duì)學(xué)生信息數(shù)據(jù)的處理,其中包括學(xué)生基本信息(姓名、學(xué)號(hào)、各科成績(jī))的錄入、存儲(chǔ)。這些基本信息數(shù)據(jù)構(gòu)成一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù),這是該系統(tǒng)進(jìn)一步對(duì)數(shù)據(jù)處理的基礎(chǔ)。</p><p>  2.4

14、軟硬件運(yùn)行環(huán)境</p><p>  操作系統(tǒng):Windows XP ,Microsoft Visual C++6.0</p><p><b>  3.概要設(shè)計(jì)</b></p><p><b>  算法設(shè)計(jì)思想</b></p><p> ?。?)本系統(tǒng)的開(kāi)發(fā)盡量采用目前現(xiàn)在學(xué)?,F(xiàn)有的軟,硬件環(huán)境以及先

15、進(jìn)的系統(tǒng)開(kāi)發(fā)方案,從而達(dá)到充分利用學(xué)校現(xiàn)有資源,提高系統(tǒng)開(kāi)發(fā)水平和應(yīng)用效果的目的</p><p> ?。?)所開(kāi)發(fā)的系統(tǒng)應(yīng)符合學(xué)校學(xué)生信息管理系統(tǒng)的規(guī)定,滿(mǎn)足學(xué)校對(duì)學(xué)生日常管理的需要,并達(dá)到操作過(guò)程中的直觀,方便,實(shí)用,安全等要求.</p><p>  (3)所開(kāi)發(fā)的系統(tǒng)應(yīng)該滿(mǎn)足模塊化程序設(shè)計(jì)方案,這樣即便于系統(tǒng)功能的各種組合和修改,有便于未參與開(kāi)發(fā)的技術(shù)維護(hù)人員的補(bǔ)充,維護(hù).</p

16、><p> ?。?)所開(kāi)發(fā)的系統(tǒng)應(yīng)具備數(shù)據(jù)庫(kù)維護(hù)功能,能夠及時(shí)根據(jù)用戶(hù)需求進(jìn)行數(shù)據(jù)的添加,刪除和修改等操作.</p><p>  3.2 程序?qū)崿F(xiàn)流程圖</p><p><b>  4.詳細(xì)設(shè)計(jì)</b></p><p><b>  4.1 主函數(shù)</b></p><p>  vo

17、id main()</p><p><b>  {</b></p><p>  school pp;</p><p><b>  int k=1;</b></p><p><b>  char n;</b></p><p>  pp.begin();&l

18、t;/p><p>  while(k==1)</p><p><b>  {</b></p><p>  n=pp.mainmenu();</p><p><b>  switch(n)</b></p><p><b>  {</b></p>

19、<p>  case '1':pp.input(); break;</p><p>  case '2':pp.show(); break;</p><p>  case '3':pp.found(); break;</p><p>  case '4':pp.del(); break;<

20、;/p><p>  case '5':pp.mend(); break;</p><p>  case '6':pp.output(); break;</p><p>  case '7':pp.save(); break;</p><p><b>  case '0':&

21、lt;/b></p><p>  if(pp.getkey()==1)</p><p><b>  {</b></p><p>  cout<<"\t\t\t是否保存? 1 : 保存 0:不保存 : ";</p><p><b>  cin>>k;</

22、b></p><p><b>  if(k==1)</b></p><p>  pp.save();</p><p><b>  }</b></p><p>  pp.clear();</p><p><b>  k=0;</b></p>

23、;<p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  4.2 錄入函數(shù)</b>&l

24、t;/p><p>  void school::input(){   student *p,*p2=NULL;   p=head;                    &#

25、160;                        int n;   while(p->next)    p=p->next; 

26、;  while(n)   {          p2=new student;       p2->input();       p->next=p2;  

27、     p2->next=NULL;       p=p->next;                     &

28、#160;                 school::setkey(1);       cout<<"\t\t\t按1繼續(xù),按0返回 : ";   

29、;    cin>>n;   }}</p><p><b>  4.3輸出函數(shù)</b></p><p>  void output()</p><p><b>  {</b></p><p>  cout<<"學(xué)

30、生基本信息如下:"<<endl;</p><p>  cout<<"學(xué)號(hào):"<<number</p><p>  <<" 姓名:"<<name</p><p>  <<" 性別:"<<sex</p&g

31、t;<p>  <<" 電話(huà)號(hào)碼:"<<tel</p><p>  <<" 民族:"<<nation</p><p>  <<" 出生日期:"<<birth</p><p>  <<"

32、 政治面貌:"<<party<<endl</p><p>  <<"身份證號(hào):"<<id</p><p>  <<" 高數(shù):"<<score[0]</p><p>  <<" 大學(xué)英語(yǔ)英語(yǔ):"<<

33、;score[1]</p><p>  <<" 面向?qū)ο蟪绦蛟O(shè)計(jì):"<<score[2]</p><p>  <<" 大學(xué)物理:"<<score[3]</p><p>  <<" 數(shù)據(jù)結(jié)構(gòu):"<<score[4]</p

34、><p>  <<" 馬克思列寧主義哲學(xué):"<<score[5]</p><p>  <<" 總分:"<<getg()<<endl;</p><p><b>  }</b></p><p>  void output(

35、ofstream & os) </p><p><b>  {</b></p><p>  os<<setw(6)<<number</p><p>  <<setw(15)<<name</p><p>  <<s

36、etw(6)<<sex</p><p>  <<setw(20)<<tel</p><p>  <<setw(6)<<nation</p><p>  <<setw(20)<<birth</p><p>  <<setw(20)<<pa

37、rty</p><p>  <<setw(20)<<id</p><p>  <<setw(6)<<score[0]</p><p>  <<setw(6)<<score[1]</p><p>  <<setw(6)<<score[2]</p

38、><p>  <<setw(6)<<score[3]</p><p>  <<setw(6)<<score[4]</p><p>  <<setw(6)<<score[5]<<endl;</p><p><b>  }</b></p&g

39、t;<p><b>  };</b></p><p><b>  4.4查找函數(shù)</b></p><p>  void school::found()</p><p><b>  {</b></p><p>  student *p;</p><

40、;p>  int num=-1,n=9;</p><p>  char name[20]="^";</p><p><b>  do</b></p><p><b>  {</b></p><p>  cout<<"\t\t1:按學(xué)號(hào)查找,2:按姓名查

41、找: ";</p><p><b>  cin>>n;</b></p><p>  }while(n<1||n>2);</p><p><b>  if(n==1)</b></p><p><b>  {</b></p><

42、p>  cout<<"\t\t\t輸入學(xué)號(hào): ";</p><p><b>  cin>>num;</b></p><p><b>  }</b></p><p><b>  if(n==2)</b></p><p><b

43、>  {</b></p><p>  cout<<"\t\t\t輸入姓名: ";</p><p>  cin>>name;</p><p><b>  }</b></p><p>  if(!find(&p,num,name) )</p>

44、<p><b>  {</b></p><p>  cout<<"\t\t找不到你要查找的內(nèi)容!"<<endl;</p><p><b>  return;</b></p><p><b>  }</b></p><p>

45、  (p->next)->output();</p><p><b>  }</b></p><p><b>  4.5刪除函數(shù)</b></p><p>  void school::del()</p><p><b>  {</b></p><

46、p>  student *p,*p2;</p><p><b>  int num;</b></p><p>  cout<<"\t\t\t輸入學(xué)號(hào): ";</p><p><b>  cin>>num;</b></p><p>  if( !fin

47、d(&p,num,"^") )</p><p><b>  {</b></p><p>  cout<<"\t\t找不到你要?jiǎng)h除的內(nèi)容!"<<endl;</p><p><b>  return;</b></p><p><

48、;b>  }</b></p><p>  (p->next)->output();</p><p>  p2=p->next;</p><p>  p->next=p2->next;</p><p>  delete p2;</p><p>  cout<<&

49、quot;刪除成功,顯示結(jié)果請(qǐng)選擇菜單2!"<<endl;</p><p>  school::setkey(1);</p><p><b>  }</b></p><p><b>  4.6顯示函數(shù)</b></p><p>  void school::show(){&#

50、160;  student *p;   p=head;   while(p->next)   {    (p->next)->output();    p=p->next;   }}</p><p><b>  4.7

51、修改函數(shù)</b></p><p>  void school::mend(){   student *p;   int num=-1,n;   char name[20]="^";   do   {      

52、   cout<<"\t\t1:按學(xué)號(hào)修改,2:按姓名修改: ";      cin>>n;   }while(n<1||n>2);   if(n==1)   {    cout<<"\t\t

53、\t輸入學(xué)號(hào): ";       cin>>num;   }   if(n==2)   {    cout<<"\t\t\t輸入姓名: ";    cin>>name; 

54、  }   if( !find(&p,num,name) )   {    cout<<"\t\t找不到你要修改的內(nèi)容!"<<endl;    return;   }   (p->next)->output();

55、   (p->next)->input();   school::setkey(1);}</p><p><b>  4.8保存函數(shù)</b></p><p>  void school::save(){   student *p;   p=head; &#

56、160; ofstream os("student.txt",ios::out);   if (school::getkey()==1)   {       while(p->next)    {      

57、60; (p->next)->output(os);        p=p->next;    }   }   cout<<"\t\t\t文件已保存! "<<endl;   school::setkey(0)

58、;}</p><p><b>  4.9統(tǒng)計(jì)函數(shù)</b></p><p>  void school::count()</p><p><b>  {</b></p><p>  student *p;</p><p><b>  p=head;</b>

59、;</p><p><b>  int n=0;</b></p><p>  double g[6]={0,0,0,0,0};</p><p>  float j[6]={0,0,0,0,0};</p><p>  while(p->next)</p><p><b>  {<

60、;/b></p><p>  p=p->next; </p><p><b>  n++;</b></p><p>  for(int i=0;i<6;i++)</p><p><b>  { </b></p><p>  g[i]=g[i]+( p-&g

61、t;getscore(i) );</p><p>  (p->getscore(i) )>=60? j[i]++ : 0 ;</p><p><b>  }</b></p><p><b>  }</b></p><p>  cout<<"\t\t\b\b\b\b高

62、數(shù)總分:"<<g[0]<<" 平均分:"<<g[0]/n</p><p>  <<" 及格率:"<<j[0]/n<<endl<<"\t\t\b\b\b\b大學(xué)英語(yǔ)總分:"<<g[1]</p><p>  <<

63、;" 平均分:"<<g[1]/n<<" 及格率:"<<j[1]/n<<endl</p><p>  <<"\t\t\b\b\b\b面向?qū)ο蟪绦蛟O(shè)計(jì)總分: "<<g[2]<<" 平均分: "<<g[2]/n</p>

64、<p>  <<" 及格率:"<<j[2]/n<<endl</p><p>  <<"\t\t\b\b\b\b大學(xué)物理總分:"<<g[3]<<" 平均分:"<<g[3]/n</p><p>  <<" 及格率:&

65、quot;<<j[3]/n<<endl<<"\t\t\b\b\b\b數(shù)據(jù)結(jié)構(gòu)總分:"<<g[4]</p><p>  <<" 平均分:"<<g[4]/n<<" 及格率:"<<j[4]/n<<endl</p><p>

66、  <<"\t\t\b\b\b\b馬克思列寧主義哲學(xué)總分: "<<g[5]<<" 平均分: "<<g[5]/n</p><p>  <<" 及格率:"<<j[5]/n<<endl;</p><p><b>  }</b>&

67、lt;/p><p><b>  5.調(diào)試與操作說(shuō)明</b></p><p><b>  5.1 初始化界面</b></p><p>  5.1 錄入學(xué)生信息界面</p><p>  5.2 保存學(xué)生信息界面</p><p>  5.3 顯示學(xué)生信息界面</p>&l

68、t;p>  5.4 查找學(xué)生信息界面</p><p>  5.5 修改學(xué)生信息界面</p><p>  5.6 統(tǒng)計(jì)學(xué)生信息界面</p><p>  5.7刪除學(xué)生信息界面</p><p>  6.課程設(shè)計(jì)總結(jié)與體會(huì)</p><p>  經(jīng)過(guò)這次課程設(shè)計(jì),學(xué)會(huì)了很多。C++的學(xué)習(xí),已經(jīng)有一個(gè)學(xué)期了,許多知識(shí)都存在

69、似懂非懂的現(xiàn)象,這種現(xiàn)象通過(guò)這次課程設(shè)計(jì),已經(jīng)減少了許多問(wèn)題。對(duì)這些不明白的知識(shí)也有了更深的理解和很好的掌握。有些理論上說(shuō)得過(guò)去的代碼,到了實(shí)際操作,卻是行不通的。這種困惑,在這次的設(shè)計(jì)中得到了解決,并能夠深刻認(rèn)識(shí)。</p><p>  總之,在這次的課程設(shè)計(jì)過(guò)程中,收獲了很多,既為以后學(xué)習(xí)設(shè)計(jì)有很大的幫助,也為將來(lái)的人生之路做好了一個(gè)很好的鋪墊。</p><p><b>  8

70、.附錄</b></p><p>  #include<iostream></p><p>  #include<string></p><p>  #include<fstream></p><p>  #include<iomanip>

71、 </p><p>  using namespace std;</p><p>  class student </p><p><b>  {</b></p><p>  protected:

72、 </p><p>  int number;</p><p>  char name[20];</p><p>  char sex[6];</p><p>  char tel[20];</p><p>  char nation[6];</p><

73、;p>  char birth[20];</p><p>  char party[10];</p><p>  char id[20];</p><p>  float score[6];</p><p>  public: </p>&

74、lt;p>  student *next; </p><p>  student(){ } </p><p>  ~student(){ } </p><p>  char* g

75、etname(){ return name; } </p><p>  int getnumber(){ return number;}</p><p>  double getscore(int i) { return score[i];}</p><p>  float getg(){ return (score[0]+s

76、core[1]+score[2]+score[3]+score[4]+score[5]); }</p><p>  void input()</p><p><b>  {</b></p><p><b>  int e=1;</b></p><p>  cout<<"\t\t

77、\t按提示輸入:"<<endl;</p><p>  cout<<"\t\t輸入學(xué)號(hào): ";</p><p>  cin>>number;</p><p>  cout<<"\t\t輸入姓名: ";</p><p>  cin>>na

78、me;</p><p><b>  do</b></p><p><b>  {</b></p><p>  cout<<"\t\t輸入性別: ";</p><p><b>  cin>>sex;</b></p><

79、;p>  if(strcmp(sex,"男")==0 || strcmp(sex,"女")==0)</p><p><b>  {</b></p><p>  cout<<"\t\t輸入電話(huà)號(hào)碼: ";</p><p><b>  cin>>te

80、l;</b></p><p>  cout<<"\t\t輸入民族:";</p><p>  cin>>nation;</p><p>  cout<<"\t\t輸入出生日期(如1990-08-15):";</p><p>  cin>>birt

81、h;</p><p>  cout<<"\t\t輸入政治面貌: ";</p><p>  cin>>party; </p><p>  cout<<"\t\t輸入身份證號(hào): ";</p><p><b>  cin>>id;</b>&

82、lt;/p><p>  cout<<"\t\t輸入高數(shù)分?jǐn)?shù): ";</p><p>  cin>>score[0];</p><p>  cout<<"\t\t輸入大學(xué)英語(yǔ)分?jǐn)?shù): ";</p><p>  cin>>score[1];</p>&

83、lt;p>  cout<<"\t\t輸入面向?qū)ο蟪绦蛟O(shè)計(jì)分?jǐn)?shù):";</p><p>  cin>>score[2];</p><p>  cout<<"\t\t輸入大學(xué)物理分?jǐn)?shù):";</p><p>  cin>>score[3];</p><p>

84、  cout<<"\t\t輸入數(shù)據(jù)結(jié)構(gòu)分?jǐn)?shù):";</p><p>  cin>>score[4];</p><p>  cout<<"\t\t輸入馬克思列寧主義哲學(xué)分?jǐn)?shù):";</p><p>  cin>>score[5];</p><p><b&g

85、t;  e=0;</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  cout<<"\t\t\t無(wú)此類(lèi)型性別!重新輸入!"<&

86、lt;endl;</p><p><b>  e=1;</b></p><p><b>  }</b></p><p>  }while(e);</p><p><b>  return ;</b></p><p><b>  }</b&

87、gt;</p><p>  void input(ifstream & is) </p><p><b>  {</b></p><p>  is>>number>>name>>sex>>tel>>nation>>

88、birth>>party>>id</p><p>  >>score[0]>>score[1]>>score[2]>>score[3]>>score[4]>>score[5];</p><p>  is.get(); <

89、/p><p><b>  }</b></p><p>  void output()</p><p><b>  {</b></p><p>  cout<<"學(xué)生基本信息如下:"<<endl;</p><p>  cout<&l

90、t;"學(xué)號(hào):"<<number</p><p>  <<" 姓名:"<<name</p><p>  <<" 性別:"<<sex</p><p>  <<" 電話(huà)號(hào)碼:"<<tel</p

91、><p>  <<" 民族:"<<nation</p><p>  <<" 出生日期:"<<birth</p><p>  <<" 政治面貌:"<<party<<endl</p><p>  

92、<<"身份證號(hào):"<<id</p><p>  <<" 高數(shù):"<<score[0]</p><p>  <<" 大學(xué)英語(yǔ)英語(yǔ):"<<score[1]</p><p>  <<" 面向?qū)ο蟪绦蛟O(shè)計(jì):&q

93、uot;<<score[2]</p><p>  <<" 大學(xué)物理:"<<score[3]</p><p>  <<" 數(shù)據(jù)結(jié)構(gòu):"<<score[4]</p><p>  <<" 馬克思列寧主義哲學(xué):"<<sc

94、ore[5]</p><p>  <<" 總分:"<<getg()<<endl;</p><p><b>  }</b></p><p>  void output(ofstream & os) </p><p>

95、;  {os<<setw(6)<<number</p><p>  <<setw(15)<<name</p><p>  <<setw(6)<<sex</p><p>  <<setw(20)<<tel</p><p>  <<setw

96、(6)<<nation</p><p>  <<setw(20)<<birth</p><p>  <<setw(20)<<party</p><p>  <<setw(20)<<id</p><p>  <<setw(6)<<scor

97、e[0]</p><p>  <<setw(6)<<score[1]</p><p>  <<setw(6)<<score[2]</p><p>  <<setw(6)<<score[3]</p><p>  <<setw(6)<<score[4]

98、</p><p>  <<setw(6)<<score[5]<<endl;</p><p><b>  }</b></p><p><b>  };</b></p><p>  class school

99、 </p><p><b>  {</b></p><p>  public: </p><p>  school(){ head=new student; head->next=NULL; key=0; }</p>

100、<p>  ~school(){ delete head; } </p><p>  void input();</p><p>  void mend();</p><p>  void del();</p><p>  int find(student **p,int num,

101、char *pn="^");</p><p>  void found();</p><p>  void show();</p><p>  void count();</p><p>  void save();</p><p>  void begin();</p><p&

102、gt;  void clear();</p><p>  char mainmenu();</p><p>  int getkey(){ return key;}</p><p>  void setkey(int k){ key=k; }</p><p>  private:

103、 </p><p>  student *head; </p><p><b>  int key;</b></p><p><b>  };</b></p><p><b>  //錄入函數(shù)<

104、/b></p><p>  void school::input()</p><p><b>  {</b></p><p>  student *p,*p2=NULL;</p><p>  p=head; </p>&

105、lt;p><b>  int n;</b></p><p>  while(p->next)</p><p>  p=p->next;</p><p><b>  while(n)</b></p><p><b>  {</b></p><

106、p>  p2=new student;</p><p>  p2->input();</p><p>  p->next=p2;</p><p>  p2->next=NULL;</p><p>  p=p->next; </p>

107、<p>  school::setkey(1);</p><p>  cout<<"\t\t\t按1繼續(xù),按0返回 : ";</p><p><b>  cin>>n;</b></p><p><b>  }</b></p><p><b&

108、gt;  }</b></p><p><b>  //子查找函數(shù)</b></p><p>  int school::find(student **p1,int num,char *pn)</p><p><b>  {</b></p><p>  student *p;</p&g

109、t;<p><b>  p=head;</b></p><p>  while(p->next)</p><p><b>  {</b></p><p><b>  (*p1)=p;</b></p><p>  if( (p->next)->ge

110、tnumber()==num||!strcmp( (p->next)->getname(),pn ) )</p><p><b>  return 1;</b></p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  

111、return 0;</b></p><p><b>  }</b></p><p><b>  //查找函數(shù)</b></p><p>  void school::found()</p><p><b>  {</b></p><p>  s

112、tudent *p;</p><p>  int num=-1,n=9;</p><p>  char name[20]="^";</p><p><b>  do</b></p><p><b>  {</b></p><p>  cout<<

113、;"\t\t1:按學(xué)號(hào)查找,2:按姓名查找: ";</p><p><b>  cin>>n;</b></p><p>  }while(n<1||n>2);</p><p><b>  if(n==1)</b></p><p><b>  {&

114、lt;/b></p><p>  cout<<"\t\t\t輸入學(xué)號(hào): ";</p><p><b>  cin>>num;</b></p><p><b>  }</b></p><p><b>  if(n==2)</b>&

115、lt;/p><p><b>  {</b></p><p>  cout<<"\t\t\t輸入姓名: ";</p><p>  cin>>name;</p><p><b>  }</b></p><p>  if(!find(&

116、;p,num,name) )</p><p><b>  {</b></p><p>  cout<<"\t\t找不到你要查找的內(nèi)容!"<<endl;</p><p><b>  return;</b></p><p><b>  }</b

117、></p><p>  (p->next)->output();</p><p><b>  }</b></p><p><b>  //刪除函數(shù)</b></p><p>  void school::del()</p><p><b>  {&l

118、t;/b></p><p>  student *p,*p2;</p><p><b>  int num;</b></p><p>  cout<<"\t\t\t輸入學(xué)號(hào): ";</p><p><b>  cin>>num;</b></p&

119、gt;<p>  if( !find(&p,num,"^") )</p><p><b>  {</b></p><p>  cout<<"\t\t找不到你要?jiǎng)h除的內(nèi)容!"<<endl;</p><p><b>  return;</b>

120、</p><p><b>  }</b></p><p>  (p->next)->output();</p><p>  p2=p->next;</p><p>  p->next=p2->next;</p><p>  delete p2;</p>

121、<p>  cout<<"刪除成功,顯示結(jié)果請(qǐng)選擇菜單2!"<<endl;</p><p>  school::setkey(1);</p><p><b>  }</b></p><p><b>  //顯示函數(shù)</b></p><p>  v

122、oid school::show()</p><p><b>  {</b></p><p>  student *p;</p><p><b>  p=head;</b></p><p>  while(p->next)</p><p><b>  {<

123、;/b></p><p>  (p->next)->output();</p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  //修改函數(shù)<

124、/b></p><p>  void school::mend()</p><p><b>  {</b></p><p>  student *p;</p><p>  int num=-1,n;</p><p>  char name[20]="^";</p&g

125、t;<p><b>  do</b></p><p><b>  {</b></p><p>  cout<<"\t\t1:按學(xué)號(hào)修改,2:按姓名修改: ";</p><p><b>  cin>>n;</b></p><p

126、>  }while(n<1||n>2);</p><p><b>  if(n==1)</b></p><p><b>  {</b></p><p>  cout<<"\t\t\t輸入學(xué)號(hào): ";</p><p><b>  cin>

127、;>num;</b></p><p><b>  }</b></p><p><b>  if(n==2)</b></p><p><b>  {</b></p><p>  cout<<"\t\t\t輸入姓名: ";</

128、p><p>  cin>>name;</p><p><b>  }</b></p><p>  if( !find(&p,num,name) )</p><p><b>  {</b></p><p>  cout<<"\t\t找不到你

129、要修改的內(nèi)容!"<<endl;</p><p><b>  return;</b></p><p><b>  }</b></p><p>  (p->next)->output();</p><p>  (p->next)->input();</

130、p><p>  school::setkey(1);</p><p><b>  }</b></p><p><b>  //保存函數(shù)</b></p><p>  void school::save()</p><p><b>  {</b></p&g

131、t;<p>  student *p;</p><p><b>  p=head;</b></p><p>  ofstream os("student.txt",ios::out);</p><p>  if (school::getkey()==1)</p><p><b>

132、;  {</b></p><p>  while(p->next)</p><p><b>  {</b></p><p>  (p->next)->output(os);</p><p>  p=p->next;</p><p><b>  }<

133、;/b></p><p><b>  }</b></p><p>  cout<<"\t\t\t文件已保存! "<<endl;</p><p>  school::setkey(0);</p><p><b>  }</b></p>&

134、lt;p><b>  //初始化函數(shù)</b></p><p>  void school::begin()</p><p><b>  {</b></p><p>  student *p,*p2;</p><p><b>  p=head;</b></p>

135、<p><b>  clear();</b></p><p><b>  long t;</b></p><p>  ifstream is("student.txt",ios::in); </p><p><b>  if(!is)</b></p>&l

136、t;p><b>  {</b></p><p>  ofstream os("student.txt",ios::out);</p><p>  os.close();</p><p><b>  return ;</b></p><p><b>  }</

137、b></p><p>  int num=-1;</p><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  num=-1;</b></p><p>  t=is.tellg();<

138、;/p><p><b>  is>>num;</b></p><p>  is.seekg(t);</p><p><b>  if(num<0)</b></p><p><b>  { </b></p><p>  is.close(

139、);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  p2=new student;</p><p>  p2->input(is);</p><p>  p->next=p2;</p>

140、<p>  p2->next=NULL;</p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  //清空函數(shù) </b></p><p>

141、;  void school::clear()</p><p><b>  {</b></p><p>  student *p,*p2;</p><p>  p=head->next;</p><p>  while( p )</p><p><b>  {</b>&

142、lt;/p><p><b>  p2=p;</b></p><p>  p=p->next;</p><p>  delete p2;</p><p><b>  }</b></p><p><b>  }</b></p><p&g

143、t;  //統(tǒng)計(jì)函數(shù) </p><p>  void school::count()</p><p><b>  {</b></p><p>  student *p;</p><p><b>  p=head;</b></p><p><b>  in

144、t n=0;</b></p><p>  double g[6]={0,0,0,0,0};</p><p>  float j[6]={0,0,0,0,0};</p><p>  while(p->next)</p><p><b>  {</b></p><p>  p=p-&

145、gt;next; </p><p><b>  n++;</b></p><p>  for(int i=0;i<6;i++)</p><p><b>  { </b></p><p>  g[i]=g[i]+( p->getscore(i) );</p><p&g

146、t;  (p->getscore(i) )>=60? j[i]++ : 0 ;</p><p><b>  }</b></p><p><b>  }</b></p><p>  cout<<"\t\t\b\b\b\b高數(shù)總分:"<<g[0]<<"

147、; 平均分:"<<g[0]/n</p><p>  <<" 及格率:"<<j[0]/n<<endl<<"\t\t\b\b\b\b大學(xué)英語(yǔ)總分:"<<g[1]</p><p>  <<" 平均分:"<<g[1]/n&

148、lt;<" 及格率:"<<j[1]/n<<endl</p><p>  <<"\t\t\b\b\b\b面向?qū)ο蟪绦蛟O(shè)計(jì)總分: "<<g[2]<<" 平均分: "<<g[2]/n</p><p>  <<" 及格率:"

149、;<<j[2]/n<<endl</p><p>  <<"\t\t\b\b\b\b大學(xué)物理總分:"<<g[3]<<" 平均分:"<<g[3]/n</p><p>  <<" 及格率:"<<j[3]/n<<endl<

150、<"\t\t\b\b\b\b數(shù)據(jù)結(jié)構(gòu)總分:"<<g[4]</p><p>  <<" 平均分:"<<g[4]/n<<" 及格率:"<<j[4]/n<<endl</p><p>  <<"\t\t\b\b\b\b馬克思列寧主義

151、哲學(xué)總分: "<<g[5]<<" 平均分: "<<g[5]/n</p><p>  <<" 及格率:"<<j[5]/n<<endl;</p><p><b>  }</b></p><p><b>  //主選

152、菜單函數(shù)</b></p><p>  char school::mainmenu()</p><p><b>  {</b></p><p>  char n[6];</p><p>  cout<<"\n\n ☆☆☆☆歡迎進(jìn)入學(xué)生學(xué)籍管理系統(tǒng)☆☆☆☆"<&l

153、t;endl<<endl;</p><p>  cout<<" 計(jì)算機(jī)系網(wǎng)絡(luò)工程(1)班 "<<endl<<endl</p><p>  <<"* * * * * * * * * * * * * * * * * * * * * * * * * *

154、 * * * *"<<endl</p><p>  <<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl</p><p>  <<"* * 1: 錄入學(xué)生信息

155、 * *"<<endl</p><p>  <<"* * 2: 顯示學(xué)生信息 * *"<<endl</p><p>  <<"* * 3: 查找學(xué)生信息

156、 * *"<<endl</p><p>  <<"* * 4: 刪除學(xué)生信息 * *"<<endl</p><p>  <<"* * 5: 修改學(xué)生信息 *

157、 *"<<endl</p><p>  <<"* * 6: 統(tǒng)計(jì)學(xué)生成績(jī) * *"<<endl</p><p>  <<"* * 7: 保存學(xué)生信息 * *&q

158、uot;<<endl</p><p>  <<"* * 0: 退出系統(tǒng) * *"<<endl</p><p>  <<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * *

159、 *"<<endl</p><p>  <<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl</p><p>  <<" 請(qǐng)選擇:";</p>

160、<p><b>  cin>>n;</b></p><p>  return n[0];</p><p><b>  }</b></p><p><b>  //主函數(shù)</b></p><p>  void main()</p><p&

161、gt;<b>  {</b></p><p>  school pp;</p><p><b>  int k=1;</b></p><p><b>  char n;</b></p><p>  pp.begin();</p><p>  while(

162、k==1)</p><p><b>  {</b></p><p>  n=pp.mainmenu();</p><p><b>  switch(n)</b></p><p><b>  {</b></p><p>  case '1'

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論