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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  C語言課程設(shè)計(jì)報(bào)告</b></p><p>  題 目:職工信息管理系統(tǒng)</p><p><b>  目 錄</b></p><p>  前言........................................................................

2、.......................2</p><p>  2、需求分析.......................................................................................3</p><p>  3、總體設(shè)計(jì)..................................................

3、.....................................3</p><p>  4、詳細(xì)設(shè)計(jì).......................................................................................4</p><p>  5、調(diào)試過程....................................

4、...................................................5</p><p>  6、結(jié)束語...........................................................................................7</p><p>  7、參考文獻(xiàn)...................

5、....................................................................7</p><p>  8、附錄...............................................................................................8</p><p><b&g

6、t;  1.前言</b></p><p>  C語言是近年來在國(guó)內(nèi)外都得到迅速推廣的一種現(xiàn)代通用的程序設(shè)計(jì)語言,它不但具有豐富的數(shù)據(jù)類型與運(yùn)算符、靈活的控制結(jié)構(gòu)、簡(jiǎn)潔而高效的表達(dá)式、清晰的程序結(jié)構(gòu)和良好的可移植性等優(yōu)點(diǎn),還具有直接支持計(jì)算機(jī)硬件編程的強(qiáng)大功能。其既具有高級(jí)語言的優(yōu)點(diǎn),有具有低級(jí)語言的優(yōu)點(diǎn),具有完善的結(jié)構(gòu)化、模塊化程序結(jié)構(gòu),是世界最流行、使用最廣泛的高級(jí)程序設(shè)計(jì)語言之一。</p&g

7、t;<p>  但由于課堂教學(xué)和實(shí)驗(yàn)的深度和廣度有限,練習(xí)的深度也受到一定的限制。所以開設(shè)了課程設(shè)計(jì)這門課。它比教學(xué)實(shí)驗(yàn)復(fù)雜一些,涉及的深度也廣些,這樣便可培養(yǎng)我們學(xué)生實(shí)際分析問題、編程和動(dòng)手能力,也可以讓我們更好的掌握《C語言》這門課程。</p><p><b>  2.需求分析</b></p><p>  根據(jù)要設(shè)計(jì)職工信息管理系統(tǒng)可以知道職工數(shù)據(jù)

8、由職工編號(hào)、姓名、部門、職稱、基 本工資、加班工資、獎(jiǎng)金和總工資構(gòu)成。</p><p><b>  功能要求如下:</b></p><p>  (1)添加職工的記錄</p><p> ?。?)查詢職工(分別按職工編號(hào)和姓名)</p><p>  (3)對(duì)職工數(shù)據(jù)排序(分

9、別按總工資的降序)</p><p><b> ?。?)刪除職工記錄</b></p><p><b>  (5)修改職工記錄</b></p><p><b> ?。?)插入職工信息</b></p><p> ?。?)輸出職工信息表</p><p><

10、b> ?。?)保存職工信息</b></p><p><b>  3.總體設(shè)計(jì)</b></p><p>  根據(jù)上面的需求分析,可以將這個(gè)系統(tǒng)設(shè)計(jì)分為以下模塊:增加職工信息、刪除職工信息、查詢職工信息、修改職工信息、插入職工信息、排序、保存職工信息、顯示職工信息。系統(tǒng)功能模塊如下:</p><p><b>  4.詳細(xì)

11、設(shè)計(jì)</b></p><p> ?。?).主函數(shù):創(chuàng)建一個(gè)鏈表,并使用指針。 </p><p>  void main()</p><p>  Link list; </p><p>  FILE *fp; </p><p>  int choose; </p><p>  char

12、 ch; </p><p>  int count=0; </p><p>  struct node *p,*r; </p><p>  pintf("\t\t\t\t職工信息管理系統(tǒng)\n\t\t\t\t\n"); </p><p>  list=(struct node*)malloc(sizeof(

13、struct node)); </p><p><b>  if(!list)</b></p><p>  {printf("\n allocate memory failure ");</p><p>  return ; }</p><p> ?。?).定義各部分功能函數(shù):</p>

14、<p>  void Add(Link l) 增加職工信息</p><p>  void Del(Link l) 刪除職工信息</p><p>  void Qur(Link l) 查詢職工信息</p><p>  void Modify(Link l) 修改職工信息 </p><p>  

15、void Insert(Link l) 插入職工信息</p><p>  void Sort(Link l) 排序</p><p><b>  菜單函數(shù):</b></p><p>  void menu()</p><p><b>  {</b></p><

16、p>  printf("\t***************************************************************\n");</p><p>  printf("\t* *\n");</p>&l

17、t;p>  printf("\t* 職工信息管理系統(tǒng) *\n");</p><p>  printf("\t* *\n");</p><p>

18、;  printf("\t* [1] 增加職工信息 [2] 刪除職工信息 *\n");</p><p>  printf("\t* [3] 查詢職工信息 [4] 修改職工信息 *\n");</p><p>  printf("\t*

19、 [5] 插入職工記錄 [6] 排序 *\n");</p><p>  printf("\t* [7] 保存職工信息 [8] 顯示職工信息 *\n");</p><p>  printf("\t* [0] 退出系

20、統(tǒng) *\n");</p><p>  printf("\t* *\n");</p><p>  printf("\t*********************

21、*****************************************\n");</p><p><b>  } </b></p><p>  .輸出中文標(biāo)題函數(shù):</p><p>  void printstart(); </p><p>  void Wrong(); </p>&

22、lt;p>  void Nofind(); </p><p>  void printc(); </p><p><b>  5、調(diào)試過程</b></p><p><b>  1.主菜單</b></p><p><b>  2.增加職工信息</b></p>

23、<p><b>  3.刪除職工信息</b></p><p><b>  4.查詢職工信息</b></p><p><b>  5.修改職工信息</b></p><p><b>  6.插入職工信息</b></p><p><b>  

24、7排序.</b></p><p><b>  6.結(jié)束語</b></p><p>  通過為期二周的課程設(shè)計(jì)學(xué)習(xí),我對(duì)《C語言》這門課程有了更深一步的了解。它是計(jì)算機(jī)程序設(shè)計(jì)的重要理論技術(shù)基礎(chǔ),在我們電子科學(xué)與技術(shù)專業(yè)的學(xué)習(xí)中占據(jù)著十分重要的地位。同時(shí)也使我知道,要學(xué)好這門課程,僅學(xué)習(xí)書本上的知識(shí)是不夠的,還要有較強(qiáng)的實(shí)踐能力。因?yàn)槲覀儗W(xué)習(xí)知識(shí)就是為了實(shí)踐

25、。而只有多實(shí)踐,多編寫程序,才能更好的理解與掌握書本上的東西。</p><p>  然而這個(gè)程序還有不足之處,比如說:界面會(huì)跟隨輸入的數(shù)據(jù)而變得整齊或不整齊等等,這些都是有待改進(jìn)的地方。7.參考文獻(xiàn):</p><p>  1.網(wǎng)站搜索:www.baidu.com</p><p>  2.《程序設(shè)計(jì)基礎(chǔ)》(c語言) 楊有安 陳維 曹慧雅 魯麗 編著</p>

26、;<p>  3.《C程序設(shè)計(jì) 課程設(shè)計(jì)》 劉振安,孫 忱 劉燕君 編著</p><p>  4.《C語言程序設(shè)計(jì)-實(shí)驗(yàn)指導(dǎo).課程設(shè)計(jì).習(xí)題解答》 高濤 陸麗娜 編著</p><p>  5.《C語言課程設(shè)計(jì) 案例精編》 姜靈芝 余健 編著</p><p>  8.附錄(源程序):</p><p>  #include <

27、;stdio.h> </p><p>  #include <stdlib.h> </p><p>  #include <string.h> </p><p>  int saveflag=0; </p><p>  struct employee </p><p><b>

28、  { </b></p><p>  char name[15]; </p><p>  char num[10];</p><p>  char sex[4]; </p><p>  char bm[15]; </p><p>  char zc[20]; </p><p><

29、;b>  int gz;</b></p><p><b>  int jbgz;</b></p><p><b>  int jj;</b></p><p><b>  int zgz;</b></p><p><b>  }; </b>

30、;</p><p>  typedef struct node </p><p><b>  { </b></p><p>  struct employee data; </p><p>  struct node *next; </p><p>  }Node,*Link; </p>

31、;<p>  void add(Link l); </p><p>  void disp(Link l); </p><p>  void del(Link l); </p><p>  Node* Locate(Link l,char findmess[],char nameornum[]);</p><p>

32、  void Qur(Link l); </p><p>  void Sort(Link l); </p><p>  void Modify(Link l); </p><p>  void save(Link l); </p><p>  void printe(Node *p); <

33、/p><p>  void printstart(); </p><p>  void Wrong(); </p><p>  void Nofind(); </p><p>  void printc();</p><p>  void menu()</p><p><b>  {<

34、;/b></p><p>  printf("\t****************************************************************\n");printf("\t* *\n");</p>&

35、lt;p>  printf("\t* 職工信息管理系統(tǒng) *\n");</p><p>  printf("\t* *\n");</p><p&g

36、t;  printf("\t* [1] 增加職工信息 [2] 刪除職工信息 *\n");</p><p>  printf("\t* [3] 查詢職工信息 [4] 修改職工信息 *\n");</p><p>  printf("\t*

37、 [5] 插入職工記錄 [6] 排序 *\n");</p><p>  printf("\t* [7] 保存職工信息 [8] 顯示職工信息 *\n");</p><p>  printf("\t* [0] 退出系統(tǒng)

38、 *\n");</p><p>  printf("\t* *\n");</p><p>  printf("\t***********************

39、****************************************\n");</p><p><b>  } </b></p><p><b>  { </b></p><p>  int count=0; </p><p>  Node *p; </p>

40、<p>  p=l->next; </p><p>  if(!p) </p><p><b>  { </b></p><p>  printf("\n=====>提示:沒有職工記錄可以顯示!\n");</p><p><b>  return; </

41、b></p><p><b>  } </b></p><p>  printf("\t\t\t\t顯示結(jié)果\n"); </p><p>  printstart(); </p><p>  printc(); </p><p>  printf(

42、"\n"); </p><p>  while(p) </p><p><b>  { </b></p><p>  printe(p); </p><p>  p=p->next; </p><p><b>  } </b></p>

43、<p>  printstart(); </p><p>  printf("\n"); </p><p><b>  } </b></p><p>  void printstart() </p><p><b>  { </b></p><p

44、>  printf("-----------------------------------------------------------------\n"); </p><p><b>  } </b></p><p>  void Wrong() </p><p><b>  { </b>&

45、lt;/p><p>  printf("\n=====>提示:輸入錯(cuò)誤!\n"); </p><p><b>  } </b></p><p>  void Nofind() </p><p><b>  { </b></p><p>  printf(

46、"\n=====>提示:沒有找到該職工!\n"); </p><p><b>  } </b></p><p>  void printc() </p><p><b>  { </b></p><p>  printf("工號(hào)\t 姓名 性別 部門

47、 職稱 工資 加班工資 獎(jiǎng)金 總工資\n"); </p><p><b>  } </b></p><p>  void printe(Node *p)</p><p><b>  { </b></p><p>  printf("%-12s%s\t%s\t%s\t%

48、s\t%d\t%d\t%d\t%d\n",p->data.num,p->data.name,p->data.sex,p->data.bm,p->data.zc,p->data.gz,p->data.jbgz,p->data.jj,p->data.zgz); </p><p><b>  } </b></p><

49、;p>  Node* Locate(Link l,char findmess[],char zcornum[]) </p><p><b>  { </b></p><p><b>  Node *r; </b></p><p>  if(strcmp(zcornum,"num")==0){ &

50、lt;/p><p>  r=l->next; </p><p>  while(r!=NULL) </p><p><b>  { </b></p><p>  if(strcmp(r->data.num,findmess)==0) </p><p>  return r; </p&

51、gt;<p>  r=r->next; </p><p><b>  } </b></p><p><b>  } </b></p><p>  else if(strcmp(zcornum,"zc")==0) </p><p><b>  { &l

52、t;/b></p><p>  r=l->next; </p><p>  while(r!=NULL) </p><p><b>  { </b></p><p>  if(strcmp(r->data.zc,findmess)==0) </p><p>  return r

53、; </p><p>  r=r->next; </p><p><b>  } </b></p><p><b>  } </b></p><p>  return 0; </p><p><b>  } </b></p><

54、;p>  void Add(Link l) </p><p><b>  { </b></p><p>  Node *p,*r,*s; </p><p>  char num[10];</p><p>  int flag=0;</p><p><b>  r=l; </b

55、></p><p>  s=l->next; </p><p>  while(r->next!=NULL)</p><p><b>  while(1) </b></p><p><b>  { </b></p><p>  printf("請(qǐng)

56、你輸入工號(hào)(以'0'返回上一級(jí)菜單:)"); </p><p>  scanf("%s",num); </p><p>  if(strcmp(num,"0")==0) </p><p><b>  break; </b></p><p>  s=l-&

57、gt;next;</p><p><b>  while(s) </b></p><p><b>  { </b></p><p>  if(strcmp(s->data.num,num)==0) </p><p><b>  { </b></p><

58、p>  printf("=====>提示:工號(hào)為'%d'的職工已經(jīng)存在,若要修改請(qǐng)你選擇'4 修改'!\n",num); </p><p><b>  flag=1;</b></p><p><b>  break;</b></p><p><b>

59、  return ;</b></p><p><b>  } </b></p><p>  s=s->next; </p><p><b>  } </b></p><p>  p=(Node *)malloc(sizeof(Node)); </p><

60、p>  strcpy(p->data.num,num); </p><p>  printf("請(qǐng)你輸入姓名:"); </p><p>  scanf("%s",p->data.name); </p><p>  getchar(); </p><p>  printf("請(qǐng)

61、你輸入性別:"); </p><p>  scanf("%s",p->data.sex); </p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入職工所在部門:"); </p><p>  scanf("%s",&p->

62、;data.bm); </p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入職工職稱:"); </p><p>  scanf("%s",&p->data.zc); </p><p>  getchar(); </p><p> 

63、 printf("請(qǐng)你輸入職工工資:"); </p><p>  scanf("%d",&p->data.gz); </p><p>  getchar();</p><p>  printf("請(qǐng)你輸入職工加班工資:"); </p><p>  scanf("

64、;%d",&p->data.jbgz); </p><p>  getchar();</p><p>  printf("請(qǐng)你輸入職工獎(jiǎng)金:"); </p><p>  scanf("%d",&p->data.jj); </p><p>  getchar();&l

65、t;/p><p>  p->data.zgz=p->data.gz+p->data.jbgz+p->data.jj; </p><p>  p->next=NULL; </p><p>  r->next=p; </p><p><b>  r=p; </b></p>

66、<p>  saveflag=1; </p><p><b>  } </b></p><p><b>  } </b></p><p>  void Del(Link l) </p><p><b>  { </b></p><p>&

67、lt;b>  int sel; </b></p><p>  Node *p,*r; </p><p>  char findmess[20]; </p><p>  if(!l->next) {</p><p>  printf("\n=====>提示:沒有記錄可以刪除!\n"); &l

68、t;/p><p><b>  return; </b></p><p><b>  } </b></p><p>  printf("\n=====>1按工號(hào)刪除\n=====>2按姓名刪除\n"); </p><p>  scanf("%d",&am

69、p;sel); </p><p>  if(sel==1) //按工號(hào)刪除</p><p><b>  { </b></p><p>  printf("請(qǐng)你輸入要?jiǎng)h除的工號(hào):"); </p><p>  scanf("%s",findmess);</p><

70、;p>  p=Locate(l,findmess,"num");</p><p><b>  if(p) </b></p><p><b>  { </b></p><p><b>  r=l; </b></p><p>  while(r->n

71、ext!=p) </p><p>  r=r->next; </p><p>  r->next=p->next; </p><p><b>  free(p); </b></p><p>  printf("\n=====>提示:該職工已經(jīng)成功刪除!\n")

72、; </p><p>  saveflag=1; </p><p><b>  } </b></p><p><b>  else </b></p><p>  Nofind(); </p><p><b>  } </b></p><

73、;p>  else if(sel==2) </p><p><b>  { </b></p><p>  printf("請(qǐng)你輸入要?jiǎng)h除的姓名:"); </p><p>  scanf("%s",findmess); </p><p>  p=Locate(l,findme

74、ss,"name"); </p><p><b>  if(p) </b></p><p><b>  { </b></p><p><b>  r=l; </b></p><p>  while(r->next!=p) </p><

75、;p>  r=r->next; </p><p>  r->next=p->next; //r r->next(p) p->next</p><p><b>  free(p); </b></p><p>  printf("\n=====>提示:該職工已經(jīng)成功刪除!\n"

76、;); </p><p>  saveflag=1; </p><p><b>  } </b></p><p><b>  else </b></p><p>  Nofind(); </p><p>  } //if(sel==2)</p><p>

77、;<b>  else </b></p><p><b>  Wrong(); </b></p><p><b>  }</b></p><p>  void Qur(Link l) </p><p><b>  {</b></p><

78、p><b>  int sel; </b></p><p>  char findmess[20]; </p><p>  Node *p; </p><p>  if(!l->next) </p><p><b>  { </b></p><p>  

79、printf("\n=====>提示:沒有資料可以查詢!\n"); </p><p><b>  return; </b></p><p><b>  } </b></p><p>  printf("\n=====>1按工號(hào)查找\n=====>2按職稱查找\n")

80、; </p><p>  scanf("%d",&sel); </p><p>  if(sel==1)/* 工號(hào) */ </p><p><b>  { </b></p><p>  printf("請(qǐng)你輸入要查找的工號(hào):"); </p><p>

81、  scanf("%s",findmess); </p><p>  p=Locate(l,findmess,"num"); </p><p><b>  if(p) </b></p><p><b>  { </b></p><p>  printf(&qu

82、ot;\t\t\t\t查找結(jié)果\n"); </p><p>  printstart(); </p><p>  printc(); </p><p>  printe(p); </p><p>  printstart(); </p><p><b>  }

83、</b></p><p><b>  else </b></p><p>  Nofind(); </p><p><b>  } </b></p><p>  else if(sel==2) </p><p><b>  { </b>&

84、lt;/p><p>  printf("請(qǐng)你輸入要查找的職稱:"); </p><p>  scanf("%s",findmess); </p><p>  p=Locate(l,findmess,"zc"); </p><p><b>  if(p) </b>&l

85、t;/p><p><b>  { </b></p><p>  printf("\t\t\t\t查找結(jié)果\n"); </p><p>  printstart(); </p><p>  printc(); </p><p>  printe(p); </p><

86、;p>  printstart(); </p><p><b>  } </b></p><p><b>  else </b></p><p>  Nofind(); </p><p><b>  } </b></p><p><b>

87、  else </b></p><p><b>  Wrong(); </b></p><p><b>  } </b></p><p>  void Modify(Link l) //修改功能</p><p><b>  {</b></p>&

88、lt;p><b>  Node *p; </b></p><p>  char findmess[20]; </p><p>  if(!l->next) </p><p><b>  { </b></p><p>  printf("\n=====>提示:沒有資料可以修

89、改!\n"); </p><p><b>  return; </b></p><p><b>  } </b></p><p>  printf("請(qǐng)你輸入要修改的職工工號(hào):"); </p><p>  scanf("%s",findmess);

90、</p><p>  p=Locate(l,findmess,"num"); </p><p><b>  if(p) </b></p><p><b>  { </b></p><p>  printf("請(qǐng)你輸入新工號(hào)(原來是%s):",p->dat

91、a.num); </p><p>  scanf("%s",p->data.num); </p><p>  printf("請(qǐng)你輸入新姓名(原來是%s):",p->data.name); </p><p>  scanf("%s",p->data.name); </p>&

92、lt;p>  getchar(); </p><p>  printf("請(qǐng)你輸入新性別(原來是%s):",p->data.sex); </p><p>  scanf("%s",p->data.sex); </p><p>  getchar(); </p><p>  printf

93、("請(qǐng)你輸入新的部門(原來是%s):",p->data.bm); </p><p>  scanf("%s",&p->data.bm);</p><p>  printf("請(qǐng)你輸入新的職稱(原來是%s):",p->data.zc); </p><p>  scanf("

94、%s",&p->data.zc); </p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入新的工資(原來是%d):",p->data.gz); </p><p>  scanf("%d",&p->data.gz);</p><p

95、>  getchar();</p><p>  printf("請(qǐng)你輸入新的加班工資(原來是%d):",p->data.jbgz); </p><p>  scanf("%d",&p->data.jbgz);</p><p>  getchar(); </p><p>  pr

96、intf("請(qǐng)你輸入新的獎(jiǎng)金(原來是%d):",p->data.jj); </p><p>  scanf("%d",&p->data.jj);</p><p>  getchar(); </p><p>  p->data.zgz=p->data.gz+p->data.jbgz+p-&g

97、t;data.jj; </p><p>  printf("\n=====>提示:資料修改成功!\n");</p><p><b>  } </b></p><p><b>  else </b></p><p><b>  Nofind();</b&g

98、t;</p><p><b>  } </b></p><p>  void Insert(Link l)</p><p><b>  {</b></p><p>  Node *s,*r,*p;</p><p>  char ch,new_num[10],old_num[1

99、0]; </p><p>  int flag=0;</p><p>  s=l->next;</p><p>  system("cls");</p><p><b>  Disp(l);</b></p><p><b>  while(1)</b&g

100、t;</p><p><b>  { </b></p><p>  printf("請(qǐng)你輸入已存在的工號(hào)(以'0'返回上一級(jí)菜單:)"); </p><p>  scanf("%s",old_num); </p><p>  if(strcmp(old_num,&q

101、uot;0")==0) </p><p><b>  return;</b></p><p>  s=l->next; </p><p><b>  flag=0;</b></p><p><b>  while(s) </b></p><

102、p><b>  {</b></p><p>  if(strcmp(s->data.num,old_num)==0) </p><p><b>  {</b></p><p><b>  flag=1;</b></p><p><b>  break;&l

103、t;/b></p><p><b>  }</b></p><p>  s=s->next;</p><p><b>  }</b></p><p>  if(flag==1)</p><p><b>  break; </b></p&

104、gt;<p><b>  else</b></p><p><b>  {</b></p><p>  getchar();</p><p>  printf("\n=====>The number %s is not existing,try again?(y/n):",old_n

105、um);</p><p>  scanf("%c",&ch);</p><p>  if(ch=='y'||ch=='Y')</p><p>  {continue;}</p><p><b>  else</b></p><p><

106、;b>  {return;}</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  printf("請(qǐng)你輸入待插入的工號(hào)(以'0'返回上一級(jí)菜單:)"); </p><p>  scanf(&

107、quot;%s",new_num); </p><p>  if(strcmp(new_num,"0")==0) </p><p><b>  return; </b></p><p>  s=l->next; </p><p><b>  while(s)</

108、b></p><p><b>  { </b></p><p>  if(strcmp(s->data.num,new_num)==0) </p><p><b>  { </b></p><p>  printf("=====>提示:工號(hào)為'%s'的職工

109、已經(jīng)存在'!\n",new_num); </p><p><b>  flag=1;</b></p><p><b>  return ;</b></p><p><b>  } </b></p><p>  s=s->next; </p>

110、<p><b>  } </b></p><p>  p=(Node *)malloc(sizeof(Node));</p><p><b>  if(!p)</b></p><p><b>  {</b></p><p>  printf("\n

111、 allocate memory failure "); </p><p>  return ; </p><p><b>  }</b></p><p>  strcpy(p->data.num,new_num);</p><p>  printf("請(qǐng)你輸入姓名:&qu

112、ot;); </p><p>  scanf("%s",p->data.name); </p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入性別:"); </p><p>  scanf("%s",p->data.sex); </

113、p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入部門:"); </p><p>  scanf("%s",&p->data.bm); </p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入

114、職稱:"); </p><p>  scanf("%s",&p->data.zc); </p><p>  getchar(); </p><p>  printf("請(qǐng)你輸入工資:"); </p><p>  scanf("%d",&p->da

115、ta.gz); </p><p>  getchar();</p><p>  printf("請(qǐng)你輸入加班工資:"); </p><p>  scanf("%d",&p->data.jbgz); </p><p>  getchar();</p><p>  pr

116、intf("請(qǐng)你輸入獎(jiǎng)金:"); </p><p>  scanf("%d",&p->data.jj); </p><p>  getchar();</p><p>  p->data.zgz=p->data.gz+p->data.jbgz+p->data.jj; </p

117、><p>  p->next=NULL; </p><p>  saveflag=1; </p><p>  r=l->next;</p><p><b>  while(1)</b></p><p><b>  {</b></p><p

118、>  if(strcmp(r->data.num,old_num)==0)</p><p><b>  {</b></p><p>  p->next=r->next;</p><p>  r->next=p;</p><p><b>  break;</b></

119、p><p><b>  }</b></p><p>  r=r->next;</p><p><b>  } </b></p><p><b>  Disp(l);</b></p><p>  printf("\n\n");&

120、lt;/p><p><b>  }</b></p><p>  void Sort(Link l) </p><p><b>  {</b></p><p><b>  Link ll;</b></p><p>  Node *p,*rr,*s;&

121、lt;/p><p><b>  int i=0;</b></p><p>  if(l->next==NULL)</p><p>  { system("cls");</p><p>  printf("\n=====>Not employee record!\n");&l

122、t;/p><p>  getchar();</p><p><b>  return ;</b></p><p><b>  }</b></p><p>  ll=(Node*)malloc(sizeof(Node)); </p><p><b>  if(!ll)&l

123、t;/b></p><p><b>  {</b></p><p>  printf("\n allocate memory failure "); </p><p>  return ; }</p><p>  ll->next=NULL;</p>

124、<p>  system("cls");</p><p>  Disp(l); </p><p>  p=l->next;</p><p><b>  while(p) </b></p><p><b>  {</b></p><p>

125、  s=(Node*)malloc(sizeof(Node)); </p><p>  if(!s) /*s==NULL*/</p><p><b>  {</b></p><p>  printf("\n allocate memory failure "); </p><p>  return ;

126、 </p><p><b>  }</b></p><p>  s->data=p->data;</p><p>  s->next=NULL; </p><p><b>  rr=ll;</b></p><p>  while(

127、rr->next!=NULL && rr->next->data.zgz>=p->data.zgz)</p><p>  {rr=rr->next;} </p><p>  if(rr->next==NULL)</p><p>  rr->next=s;</p><p><

128、b>  else </b></p><p><b>  {</b></p><p>  s->next=rr->next;</p><p>  rr->next=s;</p><p><b>  }</b></p><p>  p=p-&g

129、t;next; </p><p><b>  }</b></p><p>  l->next=ll->next; </p><p><b>  Disp(l);</b></p><p>  saveflag=1;</p><p>  printf(&quo

130、t;\n =====>sort complete!\n");</p><p><b>  }</b></p><p>  void Save(Link l) </p><p><b>  { </b></p><p>  FILE* fp; </p><p&

131、gt;  Node *p; </p><p>  int flag=1,count=0;</p><p>  fp=fopen("employee.txt","wb"); </p><p>  if(fp==NULL) </p><p><b>  { </b></p

132、><p>  printf("\n=====>提示:重新打開文件時(shí)發(fā)生錯(cuò)誤!\n"); </p><p><b>  return;</b></p><p><b>  } </b></p><p>  p=l->next; </p><p>&l

133、t;b>  while(p) </b></p><p><b>  { </b></p><p>  if(fwrite(p,sizeof(Node),1,fp)==1) </p><p><b>  { </b></p><p>  p=p->next;

134、 </p><p>  count++; </p><p><b>  } </b></p><p><b>  else </b></p><p><b>  { </b></p><p>&l

135、t;b>  flag=0; </b></p><p><b>  break; </b></p><p><b>  } </b></p><p><b>  } </b></p><p>  if(count>0) </p><p&

136、gt;<b>  { </b></p><p>  printf("\n=====>提示:文件保存成功.(有%d條記錄已經(jīng)保存.)\n",count); </p><p>  saveflag=0; </p><p><b>  } </b></p><p><b&g

137、t;  else</b></p><p><b>  {</b></p><p>  system("cls");</p><p>  printf("保存文件失敗,'0'條記錄被保存!\n");</p><p><b>  }</b&g

138、t;</p><p>  fclose(fp); </p><p><b>  } </b></p><p>  void main() </p><p><b>  { </b></p><p>  Link list; </p><p>  

139、FILE *fp; </p><p>  int choose; </p><p>  char ch; </p><p>  int count=0; </p><p>  struct node *p,*r; </p><p>  printf("\t\t\t\t職工信息管理系統(tǒng)\n\t

140、\t\t\t\n"); </p><p>  list=(struct node*)malloc(sizeof(struct node)); </p><p><b>  if(!list)</b></p><p><b>  {</b></p><p>  printf("\n

141、 allocate memory failure "); </p><p>  return ; </p><p><b>  }</b></p><p>  list->next=NULL; </p><p><b>  r=list; </b></p&g

142、t;<p>  p=fopen("employee.txt","rb"); </p><p>  if(fp==NULL) </p><p><b>  { </b></p><p>  printf("\n=====>提示:文件還不存在,是否創(chuàng)建?(y/n)\n"

143、); </p><p>  scanf("%c",&ch); </p><p>  if(ch=='y'||ch=='Y') </p><p>  fp=fopen("employee .txt","ab+"); </p><p><b&

144、gt;  else </b></p><p><b>  exit(0); </b></p><p><b>  } </b></p><p>  printf("\n=====>提示:文件已經(jīng)打開,正在導(dǎo)入記錄......\n"); </p><p>

145、  while(!feof(fp)) </p><p><b>  { </b></p><p>  p=(struct node*)malloc(sizeof(struct node)); </p><p><b>  if(!p)</b></p><p><b>  {</b&g

146、t;</p><p>  printf(" memory malloc failure!\n"); </p><p>  exit(0); </p><p><b>  }</b></p><p>  if(fread(p,sizeof(struct node),1,fp)) </p&

147、gt;<p><b>  { </b></p><p>  p->next=NULL; </p><p>  r->next=p; </p><p><b>  r=p; </b></p><p><b>  count++; </b></p&g

148、t;<p><b>  } </b></p><p><b>  } </b></p><p>  fclose(fp); </p><p>  printf("\n=====>提示:記錄導(dǎo)入完畢,共導(dǎo)入%d條記錄.\n",count); </p><p>&

149、lt;b>  while(1) </b></p><p><b>  { </b></p><p><b>  menu(); </b></p><p>  printf("\t\t====>請(qǐng)選擇:");</p><p>  scanf("%d

溫馨提示

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

評(píng)論

0/150

提交評(píng)論