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

下載本文檔

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

文檔簡介

1、<p><b>  C++課程設(shè)計(jì)報告</b></p><p><b>  高校工資管理系統(tǒng)</b></p><p>  面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)任務(wù)書</p><p>  一、題目:高校工資管理系統(tǒng)</p><p><b>  二、設(shè)計(jì)要求</b></p>

2、;<p> ?。?)王瑛璞、汲晨熙和王蘭蘭(組長)組成設(shè)計(jì)小組。</p><p>  (2)小組成員分工協(xié)作完成,要求每個成員有自己相對獨(dú)立的模塊,同時要了解其他組員完成的內(nèi)容。</p><p> ?。?)查閱相關(guān)資料,自學(xué)具體課題中涉及到的新知識。</p><p> ?。?)根據(jù)實(shí)現(xiàn)的功能,劃分出合理的對象類,明確對象類間的關(guān)系。為每個對象類設(shè)計(jì)正確

3、的屬性和方法,為每個方法設(shè)計(jì)合理的方法體。</p><p>  (5)編程簡練,程序功能齊全,能正確運(yùn)行。</p><p>  (6)課題完成后提交課程設(shè)計(jì)報告,格式規(guī)范,內(nèi)容詳實(shí)。其主要內(nèi)容包括:1-封皮、2-課程設(shè)計(jì)任務(wù)書,3-指導(dǎo)教師評語與成績、4-目錄、5-需求分析、6-概要設(shè)計(jì)、7-詳細(xì)設(shè)計(jì)(含主要代碼)、8-調(diào)試分析與測試結(jié)果、9-用戶使用說明、10-附錄或參考資料。報告用A4

4、紙打印,中文字體為宋體,西文字體用Time New Roma,小四號字,行距采用“固定值”18磅,首行縮進(jìn)2字符。</p><p> ?。?)課程設(shè)計(jì)報告內(nèi)容的說明:需求分析-分析課題需要實(shí)現(xiàn)的功能以及要用到的知識點(diǎn),分析課題涉及的對象間的關(guān)系;概要設(shè)計(jì)-根據(jù)實(shí)現(xiàn)的功能,劃分出合理的對象類,明確對象類間的關(guān)系;為每個對象類設(shè)計(jì)正確的屬性和方法,為每個方法設(shè)計(jì)合理的方法體;詳細(xì)設(shè)計(jì)-具體的類、對象和功能的實(shí)現(xiàn)以及主

5、要程序代碼;調(diào)試分析與測試結(jié)果-用多組測試用例調(diào)試分析系統(tǒng)的正確性、完備性等各項(xiàng)性能指標(biāo),寫出測試結(jié)果;用戶使用說明-編寫該系統(tǒng)的使用說明書;附錄或參考資料-完整的程序代碼以及查閱資料的參考文獻(xiàn)。</p><p><b>  三、課程設(shè)計(jì)工作量</b></p><p>  由于是設(shè)計(jì)小組團(tuán)結(jié)協(xié)作完成設(shè)計(jì)任務(wù),一般每人的程序量在200行有效程序行左右,不得抄襲。<

6、/p><p>  四、課程設(shè)計(jì)工作計(jì)劃</p><p>  2011年6月13日,指導(dǎo)教師講課,學(xué)生根據(jù)題目準(zhǔn)備資料;</p><p>  2010年6月13日、17日、18日,設(shè)計(jì)小組進(jìn)行總體方案設(shè)計(jì)和任務(wù)分工;每人完成自己承擔(dān)的程序模塊并通過獨(dú)立編譯;</p><p>  2010年6月21日~2010年6月23日,將各模塊集成為一個完整的系

7、統(tǒng),并錄入足夠的數(shù)據(jù)進(jìn)行調(diào)試運(yùn)行;同時撰寫報告。</p><p>  2010年6月27日,驗(yàn)收;提交課程設(shè)計(jì)報告。</p><p>  指導(dǎo)教師簽章: 教研室主任簽章 </p><p>  面向?qū)ο蟪虒W(xué)設(shè)計(jì)課程設(shè)計(jì)指導(dǎo)教師評語與成績</p><p><b>  目

8、 錄</b></p><p><b>  1需求分析1</b></p><p>  1.1 性能需求1</p><p>  1.2 功能需求1</p><p>  2 程序的基本功能及操作手冊2</p><p>  2.1 程序的基本功能2</p>&l

9、t;p>  2.2 操作手冊2</p><p><b>  3 詳細(xì)設(shè)計(jì)3</b></p><p>  3.1 動畫功能模塊設(shè)計(jì)3</p><p>  3.2 開始界面功能模塊設(shè)計(jì)4</p><p>  3.3 管理員界面功能模塊設(shè)計(jì)11</p><p>  4 調(diào)試分析與

10、測試結(jié)果14</p><p>  4.1 開始界面的運(yùn)行14</p><p>  4.2 歡迎動畫的運(yùn)行16</p><p>  5 系統(tǒng)的總體結(jié)構(gòu)圖17</p><p>  5.1 定義的函數(shù)及說明17</p><p>  5.2 系統(tǒng)總體框圖17</p><p><

11、b>  6 結(jié)束語18</b></p><p><b>  需求分析</b></p><p><b>  1.1 性能需求</b></p><p>  隨著高等學(xué)校的快速發(fā)展,高校規(guī)模越來越大,教職員工的數(shù)量也越來越多,高校工資管理更加的復(fù)雜,而工資管理這以瑣碎、復(fù)雜又十分細(xì)致的工作容不得半點(diǎn)差錯,工

12、資的計(jì)算、發(fā)放、核算的工作兩很大,如果實(shí)行手動操作,每月發(fā)放工資需要手工填制大量的表格、做很大規(guī)模的運(yùn)算,這會在無形中浪費(fèi)了勞動力,耗費(fèi)工作人員大量的時間和精力,計(jì)算機(jī)進(jìn)行工資發(fā)放工作,不僅能夠保證工資核算準(zhǔn)確無誤、快速輸出,而且還可以利用計(jì)算機(jī)對有關(guān)工資的各種信息進(jìn)行統(tǒng)計(jì),服務(wù)于財務(wù)部門其他方面的核算和財務(wù)處理,同時計(jì)算機(jī)具有著手工管理無法比擬的優(yōu)點(diǎn)。例如:迅速檢索,查找方便,可靠性高,儲存量大,保密性好,壽命長,低成本,安全等等。這

13、些有點(diǎn)能夠極大的提高人事工資管理的效率,也是科學(xué)化管理,與世界接軌的重要條件。這就對高校工資管理系統(tǒng)提出了新的要求,用計(jì)算機(jī)管理系統(tǒng)來管理高校工資已經(jīng)成為目前的趨勢,使用計(jì)算機(jī)可以告訴,快捷的完成以上工作。在計(jì)算機(jī)聯(lián)網(wǎng)后,數(shù)據(jù)在網(wǎng)間傳遞,可以實(shí)現(xiàn)數(shù)據(jù)的交互,避免重復(fù)勞動,規(guī)范數(shù)據(jù)管理的行為,繼而提高了管理的效率和水平。高校工資管理系統(tǒng)便是以計(jì)算機(jī)為工具,通過對工資管理所需的信息管理,不僅把管理人員從大量繁瑣</p><

14、;p>  在企業(yè)部門里,管理人員應(yīng)該對員工的基本檔案信息進(jìn)行記錄存儲,這樣,在確定好部門里的人員對象后,才能正確的進(jìn)行進(jìn)一步操作動作,如對人員進(jìn)行工資計(jì)算、工資統(tǒng)計(jì)分析等。管理人員應(yīng)該在需要的時候能及時的查看員工的基本檔案信息,對如員工的調(diào)職、離開等要能夠即使的給予信息更正。</p><p><b>  1.2 功能需求</b></p><p>  程序運(yùn)行后

15、顯示動畫圖片,按任意鍵退出歡迎界面。之后選擇相應(yīng)的權(quán)限(管理員或普通用戶),選擇為管理員時必須輸入密碼方可進(jìn)入旗下界面,其中包括數(shù)據(jù)錄入、查詢、刪除、修改及統(tǒng)計(jì)等各種功能,選擇為普通用戶時無需輸入密碼,但只能進(jìn)行數(shù)據(jù)的查詢、統(tǒng)計(jì)、瀏覽。另外進(jìn)行各種操作前都會出現(xiàn)相應(yīng)的文字提示,方便使用者更好的應(yīng)用此軟件。</p><p>  數(shù)據(jù)輸入后系統(tǒng)自動將其保存到person.dat文件中,如果要刪除或修改已輸入的個別數(shù)據(jù)

16、,則只需選擇此功能,系統(tǒng)即從文件中查到相應(yīng)數(shù)據(jù)加以刪除或修改,并再次進(jìn)行數(shù)據(jù)的保存,從而完成工資管理的自動化。</p><p>  2 程序的基本功能及操作手冊</p><p>  2.1 程序的基本功能</p><p> ?。?) 向文件中錄入職工信息數(shù)據(jù)。    (2)查詢職工信息,獲取崗位、工時、薪資等信息

17、0;   (3)修改一個員工的資料。    (4)刪除某個員工的信息。    (5)按類別瀏覽職工薪資信息。    (6)按工號查詢某個薪資信息。    (7)增加職工信息。    (8)區(qū)別管理員身

18、份與普通用戶,分別分配不同瀏覽空間。 </p><p><b>  2.2 操作手冊</b></p><p>  運(yùn)行程序后,先出現(xiàn)歡迎動畫,雖然簡短,但是透漏出了我們程序開發(fā)人員對用戶的衷心祝愿, 它會在屏幕上運(yùn)動一周,然后自行消失。隨之出現(xiàn)一靜態(tài)畫面“歡迎登陸”。接著映入眼簾的是系統(tǒng)的基本界面,核實(shí)身份,并賦予使用者應(yīng)有的身份。如果您是管理員,在介入

19、密碼后會被賦予管理員身份進(jìn)入程序,在程序中,您可以做錄入職工數(shù)據(jù)、修改職工數(shù)據(jù)、刪除職工數(shù)據(jù)、瀏覽、統(tǒng)計(jì)等操作。如果您不是管理員,那么選擇相應(yīng)的數(shù)字后,您會擁有 瀏覽、查詢、統(tǒng)計(jì)等權(quán)利。</p><p><b>  3 詳細(xì)設(shè)計(jì)</b></p><p>  3.1 動畫功能模塊設(shè)計(jì)</p><p>  此簡單的動畫為:兩個笑臉分別從屏幕的左端

20、和右端移動到中間,設(shè)計(jì)主要是用循環(huán)和清屏來完成的,類似于掃描原理。</p><p><b>  程序流程圖如下:</b></p><p><b>  開 始</b></p><p>  i<44&&j<25</p><p><b>  主要代碼如下:</b

21、></p><p>  void donghua()</p><p><b>  {</b></p><p>  system("cls");</p><p><b>  int j;</b></p><p>  for(j=2,i=2;j<2

22、5&&i<44;j++,i=i+4)</p><p><b>  {</b></p><p>  cout<<"\n\n\n\n";</p><p>  cout<<setw(j)<<" "<<" ◢▇▇◣ &q

23、uot;<<setw(40-i)</p><p>  <<" "<<" ◢▇▇◣ "<<endl;</p><p>  cout<<setw(j)<<" "<<" ◢▇▇▇▇◣"<<setw

24、(40-i)</p><p>  <<" "<<" ◢▇▇▇▇◣"<<endl;</p><p>  cout<<setw(j)<<" "<<" ▇(*^__^*)▇"<<setw(40-i)</p&g

25、t;<p>  <<" "<<" ▇(*^__^*)▇"<<endl;</p><p>  cout<<setw(j)<<" "<<" ◥▇▇▇▇◤"<<setw(40-i)</p><p> 

26、 <<" "<<" ◥▇▇▇▇◤"<<endl;</p><p>  cout<<setw(j)<<" "<<" ▇▇▇▇ "<<setw(40-i)</p><p>  <<"

27、"<<" ▇▇▇▇ "<<endl;</p><p>  cout<<setw(j)<<" "<<" | | | | "<<setw(40-i)</p><p>  <<" "<

28、<" | | | | "<<endl;</p><p>  system("cls");</p><p><b>  }}</b></p><p>  cout<<"\n\n\n\n";</p><p>  co

29、ut<<setw(20)<<" "<<" ★★★ ★★★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★ ★ ★"<&l

30、t;endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★

31、 歡 迎 登 陸 ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<&qu

32、ot; "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout&

33、lt;<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p>

34、<p>  cout<<setw(20)<<" "<<" ★★"<<endl;</p><p>  system("pause");</p><p><b>  }</b></p><p>

35、  3.2 開始界面功能模塊設(shè)計(jì)</p><p>  此開始界面主要是讓用戶選擇所需的權(quán)限(管理員或普通用戶),若選擇管理員權(quán)限,則必須先輸入管理員密碼才能進(jìn)入下一步操作;若選擇普通用戶權(quán)限,則可直接進(jìn)入旗下的用戶界面,此界面只能進(jìn)行數(shù)據(jù)的查詢、統(tǒng)計(jì)、瀏覽和返回到開始界面四個功能。</p><p>  程序流程圖(密碼登陸部分)如下:</p><p><b&g

36、t;  主要代碼如下:</b></p><p>  Void jiem()</p><p><b>  {</b></p><p><b>  char j,c;</b></p><p>  char p[10],pass[10]="wwwww";</p>

37、;<p>  int i=0,k;</p><p>  College c0; //定義大學(xué)對象</p><p>  cout<<"*************************歡迎使用我們的程序**************************"<<endl;</p><p>  cout<&l

38、t;"*請輸入你要使用的權(quán)限............ *"<<endl;</p><p>  cout<<"*┏━ 1.管理員 ━━━━━━━━━━━━━━━━━━━━━━━━━┓*"<<endl;</p><p>  cout<<&

39、quot;*┣━ 2.普通用戶━━━━━━━━━━━━━━━━━━━━━━━━━┫*"<<endl;</p><p>  cout<<"*┗━ 0.退出系統(tǒng)━━━━━━━━━━━━━━━━━━━━━━━━━┛*"<<endl;</p><p>  cout<<"*********************

40、************************************************"<<endl;</p><p>  cout<<"請選擇(0-2) ";</p><p><b>  k:</b></p><p><b>  cin>>c;</

41、b></p><p>  if(c=='1')</p><p><b>  {</b></p><p>  cout<<"請輸入管理員密碼:";</p><p><b>  cin>>p;</b></p><p&g

42、t;  for(k=0;pass[k]!='\0';k++)</p><p><b>  { </b></p><p>  if(p[k]==pass[k])</p><p><b>  {</b></p><p><b>  i++;</b></p&g

43、t;<p><b>  }</b></p><p><b>  }</b></p><p><b>  if(i==5)</b></p><p><b>  {</b></p><p>  system("cls");&l

44、t;/p><p><b>  guanli();</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  cout<<endl

45、; </p><p>  cout<<"密碼錯誤!";</p><p>  cout<<"是否返回到開始(y返回/n退出)";</p><p><b>  cin>>j;</b></p><p>  if(j=='y'||j==

46、'Y')</p><p><b>  {</b></p><p>  system("cls");</p><p><b>  jiem();</b></p><p><b>  }</b></p><p>  els

47、e exit(0);</p><p><b>  }</b></p><p><b>  }</b></p><p>  else if(c=='2') </p><p><b>  { </b></p><p><b>  d

48、o</b></p><p><b>  { </b></p><p>  system("cls");</p><p>  cout<<"**************************************************************\n";</p

49、><p>  cout<<"* 你是普通用戶,只能進(jìn)行下列操作... *\n"<<endl;</p><p>  cout<<"*┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓*\n";</p><p>  cout<<

50、"*┣1-查詢┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┃*\n"; </p><p>  cout<<"*┣2-統(tǒng)計(jì)┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┃*\n"; </p><p>  cout<<"*┣3-瀏覽┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┃*\n";<

51、/p><p>  cout<<"*┣0-返回到開始┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┃*\n";</p><p>  cout<<"*┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛*\n";</p><p>  cout<<"******************

52、********************************************"<<endl;</p><p>  cout<<"請選擇(0-3)";</p><p><b>  b:</b></p><p><b>  cin>>c;</b>&l

53、t;/p><p><b>  switch(c)</b></p><p><b>  {</b></p><p>  case '1':{c0.Find(); system("pause");}break;</p><p>  case '2':{c0

54、.Stat();system("pause");} break; </p><p>  case '3':{c0.Print(); system("pause");}break;</p><p>  case '0':{system("cls");jiem();system("pause&

55、quot;);}break;</p><p>  default: {</p><p>  cout<<"你輸入的字符有誤!!!\n";</p><p>  cout<<"請確認(rèn)后重新選擇(0-3)";</p><p><b>  goto b;</b>&l

56、t;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  while(c!='0');</p><p>  system("cls");&

57、lt;/p><p><b>  jiem();</b></p><p><b>  }</b></p><p>  else if(c=='0')</p><p><b>  exit(0);</b></p><p><b> 

58、 else</b></p><p><b>  {</b></p><p>  cout<<"你輸入的字符有誤!!!\n";</p><p>  cout<<"請確認(rèn)后重新選擇(0-2)";</p><p><b>  goto k;&

59、lt;/b></p><p><b>  }</b></p><p><b>  }</b></p><p>  College類中的四個成員函數(shù)的實(shí)現(xiàn)代碼如下:</p><p>  void College::Find() </p><p><b>  

60、{ </b></p><p>  double ID; </p><p>  Person *p1; </p><p>  Person *p2; </p><p>  cout<<"輸入你要查詢的編號:"; </p><p><b>  cin>>ID

61、; </b></p><p>  p1=PL->next; </p><p><b>  p2=PL; </b></p><p>  while(p1) </p><p><b>  { </b></p><p>  if(p1->num==ID) &

62、lt;/p><p>  break; //找到 </p><p><b>  else </b></p><p><b>  { </b></p><p>  p2=p1; //繼續(xù)查找 </p><p>  p1=p1->next; </p><p&

63、gt;<b>  } </b></p><p><b>  } </b></p><p>  if(!p1) {cout<<"找不到你所查詢的人!!!\n請確認(rèn)你所查詢的編號是否出錯!!!\n";return;} </p><p><b>  else </b><

64、/p><p>  { cout<<"\n** 職工信息表 **\n"; </p><p>  cout<<"編號 姓名 崗位 工作時間 收入情況(元)\n"; </p><p>  p1->Output();} </p><p><b>  } <

65、;/b></p><p>  //查找職工結(jié)點(diǎn)(返回1-找到,0-未找到.結(jié)點(diǎn)指針由p1返回,p2為前看指針) </p><p>  int College::Cfind(int ID,Person **p1,Person **p2) </p><p><b>  { </b></p><p>  *p1=PL-

66、>next; </p><p><b>  *p2=PL; </b></p><p>  while(*p1) </p><p><b>  { </b></p><p>  if((*p1)->num==ID) </p><p>  break; //找到 &l

67、t;/p><p><b>  else </b></p><p><b>  { </b></p><p>  *p2=*p1; //繼續(xù)查找 </p><p>  *p1=(*p1)->next; </p><p><b>  } </b><

68、/p><p><b>  } </b></p><p>  return *p1?1:0;</p><p><b>  }</b></p><p>  Void College::Print() </p><p><b>  { </b></p&g

69、t;<p>  cout<<"\n** 職工信息表 **\n"; </p><p>  cout<<"編號 姓名 崗位 工作時間 收入情況(元)\n"; </p><p>  Person *p=PL->next; </p><p><b>  if(!p)

70、 </b></p><p><b>  { </b></p><p>  cout<<"無職工記錄!\n"; </p><p><b>  return; </b></p><p><b>  } </b></p>&l

71、t;p>  while(p) //遍歷鏈表,輸出職工信息 </p><p><b>  { </b></p><p>  p->Output(); </p><p>  p=p->next; </p><p><b>  } </b></p><p><

72、;b>  }</b></p><p>  Void College::Stat() </p><p><b>  { </b></p><p>  Person *p1; </p><p>  Person *p2; </p><p>  double Sa=0; </p

73、><p>  int a,b,i=0; </p><p>  double c,d; </p><p>  cout<<"選擇你要統(tǒng)計(jì)的類別:\n1-類別;\n2-工資;\n3-要發(fā)的工資總數(shù);\n4-總的人數(shù);\n"; </p><p><b>  cin>>a; </b><

74、;/p><p><b>  if(a==1) </b></p><p><b>  { </b></p><p>  cout<<"輸入你要統(tǒng)計(jì)的類別:\n1-教師;\n2-清潔員;\n3-院長\n45-院長兼教師;\n\n"; </p><p><b>  c

75、in>>b; </b></p><p>  p1=PL->next; </p><p><b>  p2=PL; </b></p><p>  while(p1) </p><p><b>  { </b></p><p>  if(p1-&g

76、t;Duty==b) </p><p><b>  { </b></p><p><b>  i++; </b></p><p><b>  //找到 </b></p><p>  p2=p1; //繼續(xù)查找 </p><p>  p1=p1->n

77、ext; </p><p><b>  } </b></p><p><b>  else </b></p><p><b>  { </b></p><p>  p2=p1; //繼續(xù)查找 </p><p>  p1=p1->next; <

78、;/p><p><b>  } </b></p><p>  }cout<<b<<"類職工的個數(shù)是:"<<i<<endl; </p><p><b>  } </b></p><p>  else if(a==2) </p>

79、;<p><b>  { </b></p><p>  cout<<"輸入工資下限:";cin>>c; </p><p>  cout<<"\n輸入工資上限:";cin>>d; </p><p>  p1=PL->next; </

80、p><p><b>  p2=PL; </b></p><p>  while(p1) </p><p><b>  { </b></p><p>  if(p1->Salary>=c&&p1->Salary<=d) </p><p>&

81、lt;b>  { </b></p><p>  p1->Output();//找到 </p><p>  p2=p1; //繼續(xù)查找 </p><p>  p1=p1->next; </p><p><b>  } </b></p><p><b>  el

82、se </b></p><p><b>  { </b></p><p>  p2=p1; //繼續(xù)查找 </p><p>  p1=p1->next; </p><p><b>  } </b></p><p><b>  } </b

83、></p><p><b>  } </b></p><p>  else if(a==3) </p><p><b>  { </b></p><p>  Person *p=PL->next; </p><p>  while(p) //遍歷鏈表 </

84、p><p><b>  { </b></p><p>  Sa=Sa+(p->Salary); </p><p>  p=p->next; </p><p><b>  } </b></p><p>  cout<<"工資總數(shù)是:"&l

85、t;<Sa<<endl; </p><p><b>  } </b></p><p>  else if(a==4) </p><p><b>  { </b></p><p>  Person *p=PL->next; </p><p><b&

86、gt;  while(p) </b></p><p><b>  { </b></p><p><b>  i=i+1; </b></p><p>  p=p->next; </p><p><b>  } </b></p><p> 

87、 cout<<"總?cè)藬?shù)是:"<<i<<endl; </p><p><b>  } </b></p><p>  cout<<"統(tǒng)計(jì)完成!!!\n"; </p><p><b>  }</b></p><p> 

88、 3.3 管理員界面功能模塊設(shè)計(jì)</p><p>  此界面類似于用戶界面,但它擁有管理員特有的功能權(quán)限,除了用戶的功能外,它還有數(shù)據(jù)錄入、刪除職工、增加職工、修改職工功能,以便于管理員隨時對數(shù)據(jù)進(jìn)行更新,而普通用戶則無權(quán)對數(shù)據(jù)進(jìn)行任何更新操作,這也是此系統(tǒng)的一大亮點(diǎn)。</p><p><b>  程序流程圖如下:</b></p><p>&

89、lt;b>  開始</b></p><p><b>  主要程序代碼如下:</b></p><p>  void guanli() </p><p><b>  { </b></p><p><b>  char ch; </b></p>&l

90、t;p>  College c; //定義大學(xué)對象 </p><p>  //顯示主菜單,接受選擇,并分支調(diào)用大學(xué)類的相應(yīng)功能的成員函數(shù) </p><p><b>  do </b></p><p><b>  {</b></p><p>  system("cls");&

91、lt;/p><p>  cout<<"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n";</p><p>  cout<<"┃ ☆☆ 高校工資管理系統(tǒng) ☆☆ ┃\n"; </p><p>  cout<&l

92、t;"┃┏1—數(shù)據(jù)錄入┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┓ ┃\n"; </p><p>  cout<<"┃┣2—查 詢┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┫ ┃\n"; </p><p>  cout<<"┃┣3—修改職工┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅

93、┫ ┃\n"; </p><p>  cout<<"┃┣4—增加職工┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┫ ┃\n"; </p><p>  cout<<"┃┣5—刪除職工┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┫ ┃\n"; </p><p>

94、  cout<<"┃┣6—統(tǒng) 計(jì)┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┫ ┃\n"; </p><p>  cout<<"┃┣7—瀏 覽┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┫ ┃\n"; </p><p>  cout<<"┃┗0—返回到開始┅┅┅┅┅┅┅

95、┅┅┅┅┅┅┅┅┅┅┅┅┅┅┛ ┃\n"; </p><p>  cout<<"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n";</p><p>  cout<<"請選擇:";</p><p><b>  d:</b></p

96、><p><b>  cin>>ch; </b></p><p>  switch (ch) </p><p><b>  { </b></p><p>  case '1': {c.Load();system("pause");} break; <

97、/p><p>  case '2': {c.Find();system("pause");} break; </p><p>  case '3': {c.Modify();system("pause");} break; </p><p>  case '4': {c.Add();

98、system("pause");} break; </p><p>  case '5': {c.Delete();system("pause");} break; </p><p>  case '6': {c.Stat(); system("pause");}break; </p>

99、<p>  case '7': {c.Print();system("pause");} break;</p><p>  case '0':{system("cls");jiem();system("pause");}break;</p><p>  default: {</p&

100、gt;<p>  cout<<"你輸入的字符有誤!!!\n";</p><p>  cout<<"請確認(rèn)后重新選擇(0-3)";</p><p><b>  goto d;</b></p><p><b>  } </b></p>

101、<p><b>  } </b></p><p>  }while(ch!='0');</p><p>  system("cls");</p><p><b>  jiem();</b></p><p><b>  }</b>

102、</p><p>  4 調(diào)試分析與測試結(jié)果</p><p>  4.1 開始界面的運(yùn)行</p><p>  預(yù)期結(jié)果:(1)顯示提示的畫面,等待輸入字符 (2)輸入字符‘1’后,提示輸入密碼,(3)進(jìn)入管理員界面,出現(xiàn)提示畫面,(4)輸入字符‘2’后,進(jìn)入普通用戶界面,(5)輸入字符‘0’后,退出系統(tǒng),(6)輸入非法字符后,提示重新輸入。</p>

103、<p>  實(shí)際效果:(1)、(3)、(4)、(5)滿足,(2)、(6)不滿足,(2)中輸入正確密碼后不能進(jìn)入管理員界面,(6)中輸入非法字符后,直接退出了程序。</p><p>  查錯:出錯的(2)部分代碼如下:</p><p>  cout<<"請輸入管理員密碼:";</p><p><b>  cin>

104、;>p;</b></p><p>  for(k=0;pass[k]!='\0';k++)</p><p><b>  { </b></p><p>  if(p[k]=pass[k])</p><p><b>  {</b></p><p&g

105、t;<b>  i++;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(i==5)</b></p><p><b>  {</b></p>&l

106、t;p>  //system("cls");</p><p><b>  guanli();</b></p><p><b>  }</b></p><p>  修改:將“p[k]=pass[k]”改為“p[k]==pass[k]”。</p><p>  修改后運(yùn)行的實(shí)際效

107、果于預(yù)期效果一張(圖片如下):</p><p>  查錯:出錯的(6)部分代碼如下:</p><p><b>  b:</b></p><p><b>  cin>>c;</b></p><p><b>  switch(c)</b></p><

108、p><b>  {</b></p><p>  case '1':{c0.Find(); system("pause");}break;</p><p>  case '2':{c0.Stat();system("pause");} break; </p><p> 

109、 case '3':{c0.Print(); system("pause");}break;</p><p>  case '0':{system("cls");jiem();system("pause");}break;</p><p>  default: {</p><p&

110、gt;  cout<<"你輸入的字符有誤!!!\n";</p><p>  cout<<"請確認(rèn)后重新選擇(0-3)";</p><p><b>  }</b></p><p><b>  }</b></p><p><b>

111、  }</b></p><p>  while(c!='0');</p><p>  system("cls");</p><p><b>  jiem();</b></p><p><b>  }</b></p><p>

112、  修改:在‘cout<<"請確認(rèn)后重新選擇(0-3)";’后加上‘goto b;’。</p><p>  修改后實(shí)際效果與預(yù)期效果一致(圖片如下):</p><p>  4.2 歡迎動畫的運(yùn)行</p><p>  預(yù)期結(jié)果:(1)兩個笑臉分別從左端和右端向中間移動,(2)然后出現(xiàn)歡迎登陸的圖片,并等待按任意鍵。</p>

113、<p>  實(shí)際效果:(1)滿足,但(2)不等待按任意鍵直接進(jìn)入了開始界面。</p><p>  查錯:錯誤的部分代碼如下:</p><p><b>  }</b></p><p>  cout<<"\n\n\n\n";</p><p>  cout<<setw(

114、20)<<" "<<" ★★★ ★★★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★ ★ ★"<<endl;</p&g

115、t;<p>  cout<<setw(20)<<" "<<" ★ ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ 歡 迎 登

116、 陸 ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<&

117、lt;" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)

118、<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  co

119、ut<<setw(20)<<" "<<" ★★"<<endl;</p><p>  }修改:在最后的‘}’前加上‘system("pause");’。</p><p>  修改后實(shí)際效果與預(yù)期效果一致(圖片如下):</p><p&g

120、t;  5 系統(tǒng)的總體結(jié)構(gòu)圖</p><p>  5.1 定義的函數(shù)及說明</p><p>  此程序由如下函數(shù)構(gòu)成: </p><p>  College(); 構(gòu)造函數(shù) </p><p>  ~College(); 析構(gòu)函數(shù)</p><p>  Add();增加職工函數(shù)</p><p> 

121、 Delete();刪除職工函數(shù) </p><p>  Modify(); 修改職工函數(shù) </p><p>  Print(); 輸出職工信息函數(shù)</p><p>  Save(); 職工信息存盤函數(shù) </p><p>  Load(); 職工信息裝入函數(shù) </p><p>  Find(); 查找 </p>

122、;<p>  Build(); 導(dǎo)引 </p><p>  Stat(); 統(tǒng)計(jì) </p><p>  Main---主函數(shù)。</p><p>  5.2 系統(tǒng)總體框圖</p><p><b>  6 結(jié)束語</b></p><p>  通過工資管理系統(tǒng)的編程練習(xí)思考數(shù)據(jù)結(jié)構(gòu)的使用

123、,比如對類及其派生類、類的對象、類的指針的應(yīng)用等,讓我們感受到了對類的操作。此外還熟悉了各種函數(shù)的應(yīng)用。</p><p>  對于我們初學(xué)者來說,學(xué)習(xí)編寫工資管理系統(tǒng),對我們掌握了解C++語言的知識有很大的幫助。我們通過編程實(shí)踐,還能拓展思路,讓我們?nèi)ふ倚枰切┖瘮?shù)的調(diào)用,怎樣提高程序的質(zhì)量等。</p><p>  通過編程我知道了想要寫出好的程序,需要有扎實(shí)的基礎(chǔ),這樣才會遇到一些基本

124、算法時做的游刃有余。在編程時,我們要有豐富的想象力,不拘泥于固定的思維方式,試試別人從沒想過的方法。豐富的想象力是建立在豐富的知識的基礎(chǔ)上,所以我們要通過多個途徑來幫助自己建立較豐富的知識結(jié)構(gòu)。</p><p>  在編程時,我們遇到了很多的困難,這就需要我們多與別人交流。在編程時我們也看到了有良好的編程風(fēng)格是十分重要的,至少在時間效率上就體現(xiàn)了這一點(diǎn)。</p><p>  現(xiàn)在自己也能編

125、寫管理系統(tǒng)了,卻沒想到的是寫管理系統(tǒng)并沒想象的那么簡單(還有這份文檔)。這兩周,我們整天為了編程而忙碌,但看到自己的工資管理系統(tǒng)終于完成了,我們還是覺得很開心。</p><p>  當(dāng)一切都完成以后,除了學(xué)會編寫管理系統(tǒng)外,我們也學(xué)會了許多別的東西。首先,我們學(xué)會了合作。合作,必然會產(chǎn)生分歧;學(xué)會去解決分歧,留下更多的是友誼。其次,我們學(xué)會了分工。分工是為了更好的合作,分工才能提高合作的效率。最后,我們學(xué)會了奮斗

126、。我們相信,通過在北華大學(xué)的四年學(xué)習(xí),我們定能寫出更精彩的程序,描繪出更精彩的人生。</p><p>  在這里,我們要感謝指導(dǎo)我們課程設(shè)計(jì)的xx老師,給予我們悉心的指導(dǎo)。老師多次詢問我們編寫進(jìn)程,并為我們指點(diǎn)迷津,幫助我們開拓研究思路,精心點(diǎn)撥、熱枕鼓勵。老師一絲不茍的工作作風(fēng),嚴(yán)謹(jǐn)求實(shí)的態(tài)度以及踏踏實(shí)實(shí)的精神,不僅授我以文,更教會我做人,給以終生受益無窮之道。我還要感謝我們開發(fā)小組的另外2名同學(xué),在設(shè)計(jì)中給予

127、我很大的幫助。正是由于我們團(tuán)結(jié)協(xié)作,才順利地完成了課程設(shè)計(jì)任務(wù)。在設(shè)計(jì)中,我確實(shí)感到了團(tuán)隊(duì)合作的力量。</p><p>  課程設(shè)計(jì)完成之后,留下的必將是美好的回憶。</p><p>  #include<stdio.h></p><p>  #include<iostream> </p><p>  #include

128、<string> </p><p>  #include<fstream> </p><p>  #include<iomanip></p><p>  #include<stdlib.h></p><p>  using namespace std;</p><p> 

129、 void jiem();</p><p>  void guanli();</p><p>  void donghua()</p><p><b>  {</b></p><p>  system("cls");</p><p><b>  int j,i;<

130、;/b></p><p>  for(j=2,i=2;j<25&&i<44;j++,i=i+4)</p><p><b>  {</b></p><p>  cout<<"\n\n\n\n";</p><p>  cout<<setw(j)&l

131、t;<" "<<" ◢▇▇◣ "<<setw(40-i)<<" "<<" ◢▇▇◣ "<<endl;</p><p>  cout<<setw(j)<<" "<<"

132、 ◢▇▇▇▇◣"<<setw(40-i)<<" "<<" ◢▇▇▇▇◣"<<endl;</p><p>  cout<<setw(j)<<" "<<" ▇(*^__^*)▇"<<setw(40-i)<&l

133、t;" "<<" ▇(*^__^*)▇"<<endl;</p><p>  cout<<setw(j)<<" "<<" ◥▇▇▇▇◤"<<setw(40-i)<<" "<<" ◥

134、▇▇▇▇◤"<<endl;</p><p>  cout<<setw(j)<<" "<<" ▇▇▇▇ "<<setw(40-i)<<" "<<" ▇▇▇▇ "<<endl;</p>&

135、lt;p>  cout<<setw(j)<<" "<<" | | | | "<<setw(40-i)<<" "<<" | | | | "<<endl;</p><p>  system("cls&qu

136、ot;);</p><p><b>  }</b></p><p>  cout<<"\n\n\n\n";</p><p>  cout<<setw(20)<<" "<<" ★★★ ★★★"<&

137、lt;endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★ ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★

138、 ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ 歡 迎 登 陸 ★"<<endl;</p><p>  cout<<setw(20)<<

139、" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>

140、  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl

141、;</p><p>  cout<<setw(20)<<" "<<" ★ ★"<<endl;</p><p>  cout<<setw(20)<<" "<<" ★★&quo

142、t;<<endl;</p><p>  system("pause");</p><p><b>  }</b></p><p>  class Person //人員類(抽象類) </p><p><b>  { </b></p><p> 

143、 protected: </p><p>  double num; //編號 </p><p>  char Name[20]; //姓名 </p><p>  int Duty; //人員類別標(biāo)志(1-教師,2-清潔工,3-院長,4-院長兼教師) </p><p>  double Salary; //基本工資 </p>&

144、lt;p>  Person *next; //指針域 </p><p><b>  public: </b></p><p>  Person() //基類構(gòu)造 </p><p><b>  { </b></p><p>  next=0; //指針域設(shè)置為空 </p><

145、p><b>  } </b></p><p>  virtual ~Person() //基類虛析構(gòu) </p><p><b>  { </b></p><p><b>  } </b></p><p>  virtual void Input()=0; //從鍵盤輸入數(shù)

146、據(jù) </p><p>  virtual void Input(ifstream& ifs)=0; //從文件輸入數(shù)據(jù) </p><p>  virtual void Output()=0; //向屏幕輸出數(shù)據(jù) </p><p>  virtual void Output(ofstream& ofs)=0; //向文件輸出數(shù)據(jù) </p>

147、<p>  virtual double Incoming()=0; //計(jì)算收入 </p><p>  friend class College; </p><p><b>  }; </b></p><p>  class Teacher:virtual public Person //教師類 </p><p

148、><b>  { </b></p><p>  protected: </p><p>  int Hours; //教師課時 </p><p><b>  public: </b></p><p>  //為對象設(shè)置數(shù)據(jù)分為兩種途徑,通過1)構(gòu)造函數(shù),2)一般成員函數(shù) </p>

149、<p>  //分開可以使得程序中應(yīng)用更加靈活 </p><p>  //本程序采用:缺省構(gòu)造+Input() </p><p>  Teacher() //構(gòu)造函數(shù),初始化部分?jǐn)?shù)據(jù) </p><p><b>  { </b></p><p><b>  Duty=1; </b>&l

150、t;/p><p>  Salary=800; </p><p><b>  } </b></p><p>  void Input() //鍵盤補(bǔ)充輸入其它數(shù)據(jù) </p><p><b>  { </b></p><p>  cout<<"\n 編號:&q

151、uot;; cin>>num; </p><p>  cout<<"\n 姓名:"; cin>>Name; </p><p>  cout<<"\n 教師上學(xué)期課時:"; cin>>Hours; </p><p>  cout<<"\n&qu

152、ot;; </p><p>  Salary=Incoming(); </p><p><b>  } </b></p><p>  void Input(ifstream& ifs) </p><p><b>  { </b></p><p>  ifs>&

溫馨提示

  • 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

提交評論