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

下載本文檔

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

文檔簡介

1、<p><b>  目錄</b></p><p><b>  一 系統(tǒng)功能2</b></p><p><b>  1系統(tǒng)需求分析2</b></p><p>  2 系統(tǒng)功能總體設(shè)計2</p><p>  3. 輸入輸出功能2</p><p&

2、gt;  4. 總體設(shè)計流程圖3</p><p><b>  二 概要設(shè)計4</b></p><p>  1 抽象數(shù)據(jù)類型定義4</p><p>  2 系統(tǒng)模塊組成及其功能4</p><p><b>  三 詳細(xì)設(shè)計5</b></p><p>  1 用C語言定義

3、相關(guān)數(shù)據(jù)5</p><p>  2 各模塊的類C碼算法5</p><p>  1 職工信息顯示函數(shù)5</p><p>  2 職工信息的追加函數(shù)6</p><p>  3 職工信息修改函數(shù)6</p><p>  4 職工信息刪除函數(shù)8</p><p>  5 職工信息查詢函數(shù)10&

4、lt;/p><p>  6職工信息排序函數(shù)10</p><p><b>  7退出函數(shù)10</b></p><p>  3 函數(shù)的調(diào)用關(guān)系圖10</p><p>  四 調(diào)試分析(包括流程圖和截圖)11</p><p>  1 顯示模塊N-S圖11</p><p> 

5、 2追加模塊的流程圖12</p><p>  3.查詢模塊的流程圖13</p><p>  4.排序模塊的流程圖14</p><p>  5. 修改模塊的流程圖15</p><p>  6刪除模塊流程圖16</p><p>  7. 各個模塊的截圖及說明17</p><p><

6、b>  五 總結(jié)25</b></p><p><b>  六 參考文獻(xiàn)25</b></p><p>  七 程序原代碼26</p><p><b>  一 系統(tǒng)功能</b></p><p><b>  1系統(tǒng)需求分析</b></p><

7、;p>  這是一個對職工信息管理的系統(tǒng),通過這個系統(tǒng)可以顯示所有職工的信息并可以對職工信息進(jìn)行追加、修改、刪除、查詢、排序等多種功能的操作.</p><p>  2 系統(tǒng)功能總體設(shè)計</p><p>  程序的功能:隨著計算機(jī)科學(xué)的發(fā)展,現(xiàn)在我們不可能還是用手寫的方式對職工的信息進(jìn)行管理,這就需要設(shè)計一個系統(tǒng)運(yùn)用計算機(jī)來實現(xiàn)對職工信息的管理.該系統(tǒng)用數(shù)組實現(xiàn)對職工信息數(shù)據(jù)的存儲,且總

8、體數(shù)據(jù)結(jié)構(gòu)應(yīng)用文件類型數(shù)據(jù),文件類型為結(jié)構(gòu)體數(shù)組,這就要建立數(shù)據(jù)庫來存放職工的信息,通過指針文件來實現(xiàn)對數(shù)據(jù)庫里信息的讀和寫,需要存儲的職工信息包括職工號、職工姓名、性別、年齡、學(xué)歷、工資、部門、職稱等等,最后通過函數(shù)的調(diào)用來實現(xiàn)對職工信息的管理.</p><p><b>  3. 輸入輸出功能</b></p><p>  數(shù)據(jù)庫中的數(shù)據(jù)全通過fread()函數(shù)來讀取

9、數(shù)據(jù),并且通過fwrite函數(shù)將修改過后的數(shù)據(jù)放到一個新的文件里去,從而實現(xiàn)的系統(tǒng)的輸入輸出功能。</p><p>  4. 總體設(shè)計流程圖</p><p><b>  二 概要設(shè)計</b></p><p>  1 抽象數(shù)據(jù)類型定義</p><p>  Struct stu;</p><p> 

10、 {long int zgh; /*職工號*/</p><p>  Char name[10]; /*姓名*/</p><p>  Char xb[4]; /*性別*/</p><p>  Int nl; /*年齡*/</p>&l

11、t;p>  Char xl[10]; /*學(xué)歷*/</p><p>  Double gz; /*工資*/</p><p>  Char bm[15]; /*部門*/</p><p>  Char zc[10]; /*職稱*/</p><

12、p><b>  }s[40]</b></p><p>  2 系統(tǒng)模塊組成及其功能</p><p>  主函數(shù) void main()</p><p>  顯示函數(shù) void Disp()</p><p>  功能 : 顯示數(shù)據(jù)庫中職工的所有信息。</p><p>  追加函數(shù)

13、 void Appe()</p><p>  功能 : 加入你想加入的職工的信息,可以追加多條,也可以追加多次。</p><p>  修改函數(shù) void Modi()</p><p>  功能 : 修改你想修改的職工的信息,可以修改職工的某項信息,也可以修改多項信息,還可以多次修改其他職工的信息,你可以通過選擇職工號</p><p&g

14、t;  或者職工的姓名二種方式進(jìn)行修改職工的信息,。</p><p>  刪除函數(shù) void Dele()</p><p>  功能 : 刪除你想刪除的職工的所有信息,可以多次刪除,同樣可以通過職工號或者職工的姓名二種方式進(jìn)行刪除,刪除后會顯示刪除結(jié)果。</p><p>  查詢函數(shù) void Query()</p><p>

15、  功能 : 可以通過該函數(shù)來查詢你所需職工的所有信息并顯示,同樣你可以選擇是按職工號、職工的姓名、工資或者部門來查詢,當(dāng)你查詢的職工不存在時系統(tǒng)還會提示你,你所查詢的職工不存在。</p><p>  排序函數(shù) void Sore()</p><p>  功能 : 通過該函數(shù)完成按職工工資降序排列并顯示。</p><p><b>  退出函數(shù)&l

16、t;/b></p><p>  功能 : 完成退出程序。</p><p><b>  三 詳細(xì)設(shè)計</b></p><p>  1 用C語言定義相關(guān)數(shù)據(jù)</p><p>  Struct stu</p><p>  {long int zgh;

17、/*職工號*/</p><p>  Char name[10]; /*姓名*/</p><p>  Char xb[4]; /*性別*/</p><p>  Int nl; /*年齡*/</p><p>  C

18、har xl[10]; /*學(xué)歷*/</p><p>  Double gz; /*工資*/</p><p>  Char bm[15]; /*部門*/</p><p>  Char zc[10]; /

19、*職稱*/</p><p><b>  }s[40];</b></p><p>  2 各模塊的類C碼算法</p><p>  1 職工信息顯示函數(shù)</p><p>  void Disp() /*顯示模塊*/</p><p><b>  {</b></p>

20、<p>  int i; 定義循環(huán)變量</p><p>  system("COLOR 1f"); 調(diào)整顯示界面顏色;</p><p>  for(i=0;i<N;i++) 利用for 循環(huán) 將數(shù)據(jù)庫的內(nèi)容出來</p><

21、p>  printf("輸出職工信息);</p><p><b>  }</b></p><p>  2 職工信息的追加函數(shù)</p><p>  void Appe() /*追加模塊*/ </p><p>  { int i,p,t;</p><p>  void Wr_f

22、ile();</p><p>  printf("請輸入你想添加的職工個數(shù):");</p><p>  scanf("%d",&i);</p><p>  for(p=0;p<i;p++) (利用for循環(huán)追加想要追加的職工的個數(shù)) </p&

23、gt;<p>  }printf("你還想要追加嗎?是 請按1 否 請按2");scanf("%d",&t);</p><p>  if(t==1) Appe();</p><p>  printf(“追加后的信息為:”);</p><p>  3 職工信息修改函數(shù)</p><p>

24、;  void Modi() /* 修改模塊*/ </p><p>  {int n,c,p,i,b=1,j=0,k=1;</p><p>  char fname[10];</p><p>  int long r;</p><p>  system("COLOR 9f"); (控制顏色)</p>

25、<p>  void Wr_file();</p><p>  printf("請選擇修改方式\n");printf("1:職工號 2:姓名\n");</p><p>  scanf("%d",&n);</p><p>  switch(n) {輸入工號或姓名}</p>

26、<p>  for(i=0;i<N;i++)</p><p>  {case 1:for(b=1;b<2;)</p><p>  {printf("請輸入職工號:");scanf("%ld",&r);</p><p>  for(i=0;i<N;i++)</p><p&

27、gt;  if(s[i].zgh==r)</p><p>  {p=i;j=1;}</p><p><b>  switch(j)</b></p><p>  {case 0:printf("無此人信息\n");</p><p>  scanf("%d",&b);break

28、;</p><p>  case 1:for(;k<2;)</p><p>  {printf("請選擇修改項目\n"); </p><p>  scanf("%d",&c);</p><p>  switch(c)(修改并保存)</p><p>  Wr_file

29、();</p><p>  printf("你還要修改此人其他項目嗎\n");printf("1:yes 2:no\n");</p><p>  scanf("%d",&k);</p><p>  }if(k==1) continue; (若是k==1則繼續(xù)修改此人的信息) print

30、f("你還要修改其他職工的其他項目嗎\n");</p><p>  printf("1:yes 2:no\n");</p><p>  scanf("%d",&k);if(k==1) continue;</p><p><b>  }break;</b></p>

31、<p>  case 2:for(;b<2;)</p><p>  {printf("請輸入姓名:");scanf("%s",fname);</p><p>  for(i=0;i<N;i++)</p><p>  if(strcmp(s[i].name,fname)==0) (判斷是否找到這個人)<

32、;/p><p>  {p=i;j=1;} </p><p>  {switch(j)</p><p>  case 0:printf("無此人信息\n");</p><p>  scanf("%d",&b);break;</p><p>  case 1:for(;k<

33、2;)</p><p>  {printf("請選擇修改項目\n");</p><p>  scanf("%d",&c);</p><p>  switch(c)(修改并保存)</p><p>  printf("你還要修改此人其項目嗎\n");</p><

34、;p>  printf("1:yes 2:no\n");</p><p>  scanf("%d",&k);if(k==1) continue;</p><p><b>  } break;</b></p><p><b>  }</b></p><

35、;p>  printf("你還要修改其他職工的其他項目嗎?\n");</p><p>  printf("1:yes 2:no\n");</p><p>  scanf("%d",&b);</p><p><b>  }break;</b></p><

36、p>  }break;(修改完了輸出)</p><p><b>  } </b></p><p><b>  }</b></p><p>  4 職工信息刪除函數(shù)</p><p>  void Dele() /*刪除模塊*/</p><p>  { int a,b

37、,c,d,x,p,i,j=0;</p><p>  char sname[10];</p><p>  long int sgh;</p><p>  system("COLOR 5f");</p><p>  void Quit(); (退出函數(shù))</p><p>  printf("請

38、選擇刪除方式\n");</p><p>  scanf("%d",&x);</p><p><b>  switch(x)</b></p><p>  {case 1:for(c=1;c<2;)</p><p>  {printf("請輸入刪除工號\n");

39、scanf("%ld",&sgh);</p><p>  for(i=0;i<N;i++)</p><p>  if(s[i].zgh==sgh)</p><p>  {b=i;j=1;} </p><p><b>  switch(j)</b></p><p>

40、  {case 0:printf("無此人\n");printf("還要刪\n");</p><p>  printf("1.yes 2.no\n"); 選擇是否還要刪除</p><p>  scanf("%d",&c);break;</p><p>  case 1:pri

41、ntf("是否刪除此人\n");</p><p>  printf("1.yes 2.no\n");</p><p>  scanf("%d",&a);</p><p><b>  switch(a)</b></p><p>  {case 1:for

42、(p=(b+1);p<N;p++)</p><p>  {d=b+1;s[b]=s[d];b++;} </p><p><b>  N=N-1;</b></p><p>  Wr_file();</p><p>  printf("還要刪除嗎\n");</p><p> 

43、 printf("1.yes 2.no\n"); 選擇是否還要刪除?</p><p>  scanf("%d",&c);break;</p><p>  case 2:c=2;break;</p><p><b>  }</b></p><p><b>  

44、}</b></p><p><b>  }break;</b></p><p>  case 2:for(c=1;c<2;) (按姓名進(jìn)行刪除,用for循環(huán)控制)</p><p>  {printf("請輸入刪除姓名\n");scanf("%s",&sname);</p&g

45、t;<p>  for(i=0;i<N;i++)</p><p>  if(strcmp(s[i].name,sname)==0)</p><p>  {b=i;j=1;}</p><p><b>  switch(j)</b></p><p>  {case 0:printf("無此人\n

46、");printf("是否還要刪除\n");</p><p>  printf("1.yes 2.no\n");</p><p>  scanf("%d",&c);break;</p><p>  case 1:printf("是否刪除此人\n");</p>

47、;<p>  printf("1.yes 2.no\n"); 選擇是否刪除?</p><p>  scanf("%d",&a);</p><p><b>  switch(a)</b></p><p>  {case 1:for(p=(b+1);p<N;p++)</

48、p><p>  {d=b+1;s[b]=s[d];b++;}</p><p><b>  N=N-1;</b></p><p>  Wr_file();</p><p>  printf("還要刪除嗎\n");</p><p>  printf("1.yes 2.no\

49、n");</p><p>  scanf("%d",&c);break;</p><p>  case 2:c=2;break;</p><p><b>  }</b></p><p><b>  }</b></p><p><b&

50、gt;  }break;</b></p><p>  5 職工信息查詢函數(shù)</p><p>  void Query() /*查詢模塊*/ </p><p>  {int i,t,flag; long int b;char s1[8];system("COLOR 5f");</p><p>  printf(&

51、quot;選擇按職工號||姓名||工資||部門查詢");</p><p>  查找該職工并顯示其信息}</p><p><b>  6職工信息排序函數(shù)</b></p><p>  void Sort() /*排序*/ </p><p>  {int i,j;struct stu s1;(定義一個結(jié)構(gòu)體中間

52、變量)</p><p>  system("COLOR 6f");(控制顏色)</p><p>  for(i=0;i<N-1;i++)</p><p>  for(j=i+1;j<N;j++)</p><p>  if(s[i].gz<s[j].gz)</p><p>  {s

53、1=s[i];s[i]=s[j];s[j]=s1;}(交換結(jié)構(gòu)體的值)</p><p><b>  }</b></p><p><b>  7退出函數(shù)</b></p><p>  void Quit() /*退出*/ </p><p>  { printf(" ****

54、** Thank you bye ****** \n");</p><p><b>  }</b></p><p>  3 函數(shù)的調(diào)用關(guān)系圖</p><p>  四 調(diào)試分析(包括流程圖和截圖)</p><p>  1 顯示模塊N-S圖</p><p><b>  j&l

55、t;/b></p><p><b>  2.追加模塊流程圖</b></p><p>  3.查詢模塊的流程圖</p><p>  4.排序模塊的流程圖</p><p>  5. 修改模塊的流程圖</p><p><b>  6刪除模塊流程圖</b></p>

56、<p>  7. 各個模塊的截圖及說明</p><p>  運(yùn)行程序,進(jìn)入主菜單,顯示如圖所示:</p><p>  系統(tǒng)提供了七個選項,可以通過選擇數(shù)字進(jìn)入你需要的模塊操作。</p><p>  選擇1顯示模塊的截圖如下圖所示:</p><p>  按任意鍵返回主菜單,選擇菜單2進(jìn)入追加模塊的操作, 追加模塊的截圖如下所示:&l

57、t;/p><p>  在該模塊的操作中可以選擇追加一條,也可以追加多條。</p><p>  按任意鍵退出,選擇3進(jìn)入修改模塊的操作截圖如下所示:</p><p>  可以修改一個職工的某項信息也可以修改多項信息,還可以修改其他職工的信息。</p><p>  按任意鍵退出該模塊,選擇4進(jìn)入刪除模塊的操作,截圖如下:</p><

58、;p>  可以按照兩種方法刪除當(dāng)輸入的人不存在是系統(tǒng)會給出提示此人不存在,可以進(jìn)行多項刪除。</p><p>  按任意鍵退出,選擇5進(jìn)入查詢模塊的操作,截圖如下:</p><p>  該模塊可以選擇4種方式進(jìn)行查詢,當(dāng)查詢的信息不存在時,會給出此人不存在的提示,按5鍵退出查詢模塊。</p><p>  按任意鍵退出后進(jìn)入主菜單,選擇6進(jìn)入排序模塊的操作,截圖

59、如下:</p><p>  該排序是按員工的工資降序排列的。選菜單7退出系統(tǒng)截圖如下:</p><p><b>  五 總結(jié)</b></p><p>  在整個C語言的學(xué)習(xí)過程中讓我學(xué)會了很多,老師也非常用心的教我們這門課程,帶我們進(jìn)入了這門課程的學(xué)習(xí)。剛開始的時候是最艱難的,在這里我要感謝老師的用心教導(dǎo),讓我慢慢學(xué)會了該怎樣去學(xué)習(xí)這種與機(jī)器對

60、話的語言。經(jīng)過半年的學(xué)習(xí),我們迎來了將近一周的課程設(shè)計,剛拿到題目我嚇到了,啊,要編這么多啊,而且還這么的難,但下來后通過查找資料,通過仔細(xì)思考以及組員的幫助,我還是完成了這次的設(shè)計任務(wù)。在這次設(shè)計中我是負(fù)責(zé)編查詢模塊的,另外我還編了排序模塊,編的過程中遇到了很多的問題,但還是一一解決了,但在調(diào)試的過程中還是出現(xiàn)了很多的錯誤,這就需要我們仔細(xì)的發(fā)現(xiàn)問題和培養(yǎng)解決問題的能力,在這個方面我還是學(xué)習(xí)的不夠。所以在以后的學(xué)習(xí)過程中我應(yīng)該要培養(yǎng)自

61、己的邏輯思維能力。</p><p>  在設(shè)計程序時首先要理解各個模塊的作用,只有這樣才能為設(shè)計好程序做好鋪墊。在這次程序設(shè)計中我發(fā)現(xiàn)了其他組員的設(shè)計模塊還存在著不足,這就需要我們認(rèn)真思考程序中存在的不足,同時可以和其他組的同學(xué)一起討論,學(xué)習(xí)的過程交流也是非常重要的。此外課后我們還需要和老師多交流,好好利用學(xué)習(xí)資源。程序答辯時我的程序出現(xiàn)了一點(diǎn)點(diǎn)小問題,雖然通過自己的檢查還是解決了問題但它教會了我在平時要更用心的

62、去檢查和調(diào)試程序。通過這次一周的程序設(shè)計我明白只有抱著認(rèn)真的態(tài)度才能做好每一件事,最后我要感謝我的老師,謝謝你的用心指導(dǎo)。</p><p><b>  六 參考文獻(xiàn)</b></p><p>  《C語言程序案例分析》 人民郵電出版社</p><p>  《C語言程序設(shè)計》(第2版) 北京

63、郵電大學(xué)出版社</p><p>  《C程序設(shè)計》(第三版) 清華大學(xué)出版社</p><p>  《C語言程序設(shè)計案例分析》 人民郵電出版社</p><p><b>  七 程序原代碼</b></p><p>  #include "stdio.h

64、"</p><p>  #include <stdlib.h></p><p>  #include "string.h"</p><p>  #include "conio.h"</p><p><b>  int N=0;</b></p>&

65、lt;p>  struct stu</p><p>  { long int zgh; /*職工號*/</p><p>  char name[10]; /*姓名*/</p><p>  char xb[4]; /*性別*/</p><p>  int nl;

66、 /*年齡*/</p><p>  char xl[10]; /*學(xué)歷*/</p><p>  double gz; /*工資*/</p><p>  char bm[15]; /*部門*/</p><p>  char zc[

67、10]; /*職稱*/</p><p><b>  }s[40];</b></p><p>  void Re_file()</p><p><b>  {</b></p><p>  FILE *fp; 定義一個指針文件 &

68、lt;/p><p>  fp=fopen("D:\\rsdak.txt","r"); 打開文件所指的文件,進(jìn)行讀取文件里的內(nèi)容</p><p>  while( fscanf(fp,"%ld\n%s\n%s\n%d\n%s\n%lf\n%s\n%s\n",&s[N].zgh,s[N].name,s[N].xb,&

69、s[N].nl,s[N].xl,&s[N].gz,s[N].bm,s[N].zc)!=EOF) N++;</p><p>  fclose(fp); 關(guān)閉文件</p><p><b>  }</b></p><p>  void Wr_file()</p><p><b

70、>  {int i;</b></p><p><b>  FILE *fp;</b></p><p>  fp=fopen("D:\\nwersk.txt","w"); 打開文件把文件里的內(nèi)容寫到新的文件里</p><p>  for(i=0;i<N;i++)</p>

71、;<p>  fprintf(fp,"%ld\n%s\n%s\n%d\n%s\n%lf\n%s\n%s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p>  fclose(fp);</p><p><b>  }</b><

72、;/p><p>  void Disp() /*顯示模塊*/</p><p><b>  {int i;</b></p><p>  system("COLOR 2f");</p><p>  printf("***************************************

73、********************************\n");</p><p>  printf("職工號 姓名 性別 年齡 學(xué)歷 工資 部門 職稱\n");</p><p>  for(i=0;i<N;i++) 用for循環(huán)把職工的信息顯示出來</p><p>

74、<b>  { </b></p><p>  printf("%-6ld %-6s %-4s %-5d %-7s %-10.2lf %-10s %-4s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p><b>  }&

75、lt;/b></p><p>  printf("************************************************************************\n");</p><p><b>  }</b></p><p>  void Appe() /*追加模塊*/ <

76、;/p><p>  { int i,p,t;</p><p>  void Wr_file();</p><p>  printf("請輸入你想添加的職工個數(shù):");</p><p>  scanf("%d",&i);</p><p>  for(p=0;p<i;p+

77、+) 定義P來控制追加的職工的個數(shù)</p><p><b>  {</b></p><p>  printf("pleasinput 職工號:"); /*輸入追加的職工號*/</p><p>  scanf("%ld

78、",&s[N].zgh);</p><p>  printf("\nplease inpue 姓名:"); /*輸入追加的姓名*/</p><p>  scanf("%s",s[N].name);</p><p>  printf("\npleaseinput 性別:");

79、 /*輸入追加的性別*/</p><p>  scanf("%s",&s[N].xb);</p><p>  printf("\npleaseinput 年齡:"); /*輸入追加的年齡*/</p><p>  scanf("%d",&s[N].nl);</p>&l

80、t;p>  printf("\nplease input學(xué)歷:"); /*輸入追加的學(xué)歷*/</p><p>  scanf("%s",s[N].xl);</p><p>  printf("\npleaseinput 工資:"); /*輸入追加的工資*/</p><p>  s

81、canf("%lf",&s[N].gz);</p><p>  printf("\npleaseinput 部門:"); /*輸入追加的部門*/</p><p>  scanf("%s",s[N].bm);</p><p>  printf("\nplease input職

82、稱:"); /*輸入追加的職稱*/</p><p>  scanf("%s",s[N].zc);</p><p>  printf("\n next \n");</p><p><b>  N++;</b></p><p>  }printf("

83、你還想要追加嗎?是 請按1 否 請按2");scanf("%d",&t);</p><p>  if(t==1) Appe();</p><p><b>  }</b></p><p>  void Modi() /* 修改模塊*/ </p><p>  {int n,c,p,

84、i,b=1,j=0,k=1;</p><p>  char fname[10];</p><p>  int long r;</p><p>  system("COLOR 9f"); 控制顏色</p><p>  void Wr_file();</p><p>  printf(&q

85、uot;請選擇修改方式\n");printf("1:職工號 2:姓名\n");</p><p>  scanf("%d",&n);</p><p><b>  switch(n)</b></p><p>  {case 1:for(b=1;b<2;)</p><

86、;p>  {printf("請輸入職工號:");scanf("%ld",&r);</p><p>  for(i=0;i<N;i++) </p><p>  if(s[i].zgh==r) 判斷輸入的職工號是否存在</p><p>  {p=i;j=1;} 若庫文件

87、里存在輸入的職工號則p=i代表已經(jīng)找到</p><p><b>  switch(j)</b></p><p>  {case 0:printf("無此人信息\n");</p><p>  scanf("%d",&b);break;</p><p>  case 1:for

88、(;k<2;)</p><p>  {printf("請選擇修改項目\n");</p><p>  printf("**********************************************************\n");</p><p>  printf("**

89、 **\n");</p><p>  printf("** 1:性別 2:年齡 3:學(xué)歷 4:工資 5:部門 6:職稱 7:退出 **\n");</p><p>  printf("**

90、 **\n");</p><p>  printf("**********************************************************\n");</p><p>  scanf("%d",&c);</p><p>  if(c==7) break;

91、</p><p><b>  switch(c)</b></p><p>  {case 1:printf("請輸入性別\n");scanf("%s",s[p].xb);break;</p><p>  case 2:printf("請輸入年齡\n");scanf("%d&q

92、uot;,&s[p].nl);break;</p><p>  case 3:printf("請輸入學(xué)歷\n");scanf("%s",s[p].xl);break;</p><p>  case 4:printf("請輸入工資\n");scanf("%lf",&s[p].gz);break;&

93、lt;/p><p>  case 5:printf("請輸入部門\n");scanf("%s",s[p].bm);break;</p><p>  case 6:printf("請輸入職稱\n");scanf("%s",s[p].zc);break;</p><p><b>  }

94、</b></p><p>  Wr_file();</p><p>  printf("你還要修改此人其他項目嗎\n");printf("1:yes 2:no\n");</p><p>  scanf("%d",&k);</p><p>  }if(k==1)

95、continue; </p><p>  printf("你還要修改其他職工的其他項目嗎\n");</p><p>  printf("1:yes 2:no\n");</p><p>  scanf("%d",&k);if(k==1) continue;</p><p

96、><b>  }break;</b></p><p>  case 2:for(;b<2;)</p><p>  {printf("請輸入姓名:");scanf("%s",fname);</p><p>  for(i=0;i<N;i++)</p><p>  i

97、f(strcmp(s[i].name,fname)==0) 判斷輸入的姓名是否存在</p><p>  {p=i;j=1;}</p><p><b>  switch(j)</b></p><p>  {case 0:printf("對不起,找不到此人信息\n");printf("還要繼續(xù)\n");

98、</p><p>  printf("1.yes 2.no\n");scanf("%d",&b);if(b==1) continue;</p><p>  case 1:for(;k<2;)</p><p>  {printf("請選擇修改項目\n");</p><p&g

99、t;  printf("************************************************\n"); printf("** **\n");</p><p>  printf("** 1:性別 2年齡 3學(xué)歷 4:工資 5部門 6職稱 7:退

100、出 **\n");</p><p>  printf("** **\n");</p><p>  printf("************************************************\n");</p><p&

101、gt;  scanf("%d",&c); </p><p>  if(c==7) break;</p><p>  switch(c) 定義一個開關(guān)語句來修改職工的某項信息</p><p>  {case 1:printf("請輸入性別\n");scanf("%s",s[p].xb)

102、;break;</p><p>  case 2:printf("請輸入年齡\n");scanf("%d",&s[p].nl);break;</p><p>  case 3:printf("請輸入學(xué)歷\n");scanf("%s",s[p].xl);break;</p><p>

103、;  case 4:printf("請輸入工資\n");scanf("%lf",&s[p].gz);break;</p><p>  case 5:printf("請輸入部門\n");scanf("%s",s[p].bm);break;</p><p>  case 6:printf("請輸入

104、職稱\n");scanf("%s",s[p].zc);break; }</p><p>  Wr_file();</p><p>  printf("你還要修改此人其項目嗎\n");</p><p>  printf("1:yes 2:no\n");</p><p>  

105、scanf("%d",&k);if(k==1) continue;</p><p><b>  } break;</b></p><p><b>  }</b></p><p>  printf("你還要修改其他職工的其他項目嗎\n");</p><p&g

106、t;  printf("1:yes 2:no\n");</p><p>  scanf("%d",&b);</p><p><b>  }break;</b></p><p><b>  }break;</b></p><p><b>  }

107、 </b></p><p><b>  }</b></p><p>  void Dele() /*刪除模塊*/</p><p>  { int a,b,c,d,x,p,i,j=0;</p><p>  char sname[10];</p><p>  long int sgh

108、;</p><p>  system("COLOR 5f"); 控制顏色</p><p>  void Quit();</p><p>  printf("請選擇刪除方式\n");</p><p>  printf("******************************\n

109、");</p><p>  printf("** **\n");</p><p>  printf("** 1:職工號 2:姓名 3:退出 **\n");</p><p>  printf("** **\

110、n");</p><p>  printf("******************************\n");</p><p>  scanf("%d",&x);</p><p>  switch(x) 定義一個開關(guān)語句來選擇按哪種方式刪除職工的信息</p><p>  

111、{case 1:for(c=1;c<2;)</p><p>  {printf("請輸入刪除工號\n");scanf("%ld",&sgh);</p><p>  for(i=0;i<N;i++)</p><p>  if(s[i].zgh==sgh) 判斷要刪除的職工信息庫文件里是否存在</p&g

112、t;<p>  {b=i;j=1;} </p><p><b>  switch(j)</b></p><p>  {case 0:printf("無此人\n");printf("還要刪除嗎\n");</p><p>  printf("1.yes 2.no\n");&

113、lt;/p><p>  scanf("%d",&c);break;</p><p>  case 1:printf("是否刪除此人\n");</p><p>  printf("1.yes 2.no\n");</p><p>  scanf("%d",&am

114、p;a);</p><p><b>  switch(a)</b></p><p>  {case 1:for(p=(b+1);p<N;p++)</p><p>  {d=b+1;s[b]=s[d];b++;} </p><p><b>  N=N-1;</b></p><

115、p>  Wr_file();</p><p>  printf("還要刪除嗎\n")</p><p>  ;printf("1.yes 2.no\n");</p><p>  scanf("%d",&c);break;</p><p>  case 2:c=2;bre

116、ak;}</p><p><b>  }</b></p><p><b>  }break;</b></p><p>  case 2:for(c=1;c<2;)</p><p>  {printf("請輸入刪除姓名\n");scanf("%s",&am

117、p;sname);</p><p>  for(i=0;i<N;i++)</p><p>  if(strcmp(s[i].name,sname)==0) 判斷要刪除的職工庫文件里是否存在</p><p>  {b=i;j=1;}</p><p><b>  switch(j)</b></p>

118、<p>  {case 0:printf("無此人\n");printf("還要刪除嗎\n");</p><p>  printf("1.yes 2.no\n");</p><p>  scanf("%d",&c);break;</p><p>  case 1:p

119、rintf("是否刪除此人\n");</p><p>  printf("1.yes 2.no\n");</p><p>  scanf("%d",&a);</p><p><b>  switch(a)</b></p><p>  {case 1:f

120、or(p=(b+1);p<N;p++)</p><p>  {d=b+1;s[b]=s[d];b++;}</p><p><b>  N=N-1;</b></p><p>  Wr_file();</p><p>  printf("還要刪除嗎\n");printf("1.yes 2

121、.no\n");</p><p>  scanf("%d",&c);break;</p><p>  case 2:c=2;break;</p><p><b>  }</b></p><p><b>  }</b></p><p>&l

122、t;b>  }break;</b></p><p>  case 3:Quit();break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void Query() /*查詢模塊*/ </p><p>

123、;  { int i,t,flag;</p><p>  long int b;</p><p>  double c;</p><p>  char s1[8];</p><p>  system("COLOR 5f");</p><p>  printf("\n

124、 | =================================\n");</p><p>  printf(" | 1.按職工號查詢 |\n");</p><p>  printf(" | 2.按姓名查詢

125、 |\n");</p><p>  printf(" | 3.基本工資查詢 |\n");</p><p>  printf(" | 4.按部門查詢 |\n"); </p&

126、gt;<p>  printf(" | 5.退出本菜單 |\n");</p><p>  printf(" =================================\n");</p><p>  while(1) &l

127、t;/p><p><b>  {</b></p><p>  flag=0; </p><p>  printf(" 請輸入子菜單編號: ");</p><p>  scanf("%d",&t);</p><p> 

128、 switch(t) 用開關(guān)語句控制按哪種方式查詢職工的信息</p><p><b>  {</b></p><p><b>  case 1:</b></p><p>  printf(" 請輸入要查詢的職工號: ");</p><p

129、>  scanf("%ld",&b);</p><p>  for(i=0;i<N;i++)</p><p>  if(s[i].zgh==b) 判斷輸入的職工號是否存在</p><p><b>  {</b></p><p>  flag=1;

130、 職工號存在flag=1顯示查詢的職工的信息</p><p>  printf("================================================================================");</p><p>  printf("職工號 姓名 性別 年齡 學(xué)歷 工資 部門

131、 職稱\n"); </p><p>  printf("%-6ld %-6s %-4s %-5d %-7s %-10.2lf %-10s %-4s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p>  printf("=

132、===============================================================================\n");</p><p><b>  }</b></p><p>  if(flag==0)</p><p>  printf("該職工號不存在! \n"

133、);break;</p><p><b>  case 2:</b></p><p>  printf(" 請輸入要查詢的姓名: ");</p><p>  scanf("%s",&s1);</p><p>  for(i=0;i<N;i

134、++)</p><p>  if(strcmp(s[i].name,s1)==0) 判斷輸入的職工姓名是否存在</p><p><b>  {</b></p><p>  flag=1; 職工姓名存在flag=1顯示查詢的職工的信息</p><p>  printf("==============

135、==================================================================");</p><p>  printf(" 職工號 姓名 性別 年齡 學(xué)歷 工資 部門 職稱 \n ");</p><p>  printf("%-6ld %-6s %

136、-4s %-5d %-7s %-10.2lf %-10s %-4s\n",s[i].zgh,s[i].name,s[i].xb,s[i].nl,s[i].xl,s[i].gz,s[i].bm,s[i].zc);</p><p>  printf("=======================================================================

137、=========\n");</p><p><b>  }</b></p><p>  if(flag==0)</p><p>  printf("該姓名不存在!\n");break;</p><p><b>  case 3:</b></p><

138、p>  printf(" 請輸入要查詢的基本工資: ");</p><p>  scanf("%lf",&c);</p><p>  for(i=0;i<N;i++)</p><p>  if(s[i].gz==c) 判斷輸入的工資在文件庫里是否有職工的工資與其相

139、同</p><p><b>  {</b></p><p>  flag=1; 已經(jīng)找到顯示符合條件的職工的信息</p><p>  printf("================================================================================&q

溫馨提示

  • 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

提交評論