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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  《C語(yǔ)言物品管理》</b></p><p><b>  課程設(shè)計(jì)報(bào)告</b></p><p>  2017 年 4月 27 日</p><p> 學(xué)號(hào)</p><p><b>  目錄 </b></p><p> 

2、 1設(shè)計(jì)內(nèi)容…………………………………………………2</p><p>  設(shè)計(jì)要求…………………………………………3</p><p>  設(shè)計(jì)提示………………………………………….4</p><p>  2程序設(shè)計(jì)………………………………………………..5</p><p>  2.1 總體設(shè)計(jì)………………………………………..5</p&

3、gt;<p>  2.2 詳細(xì)設(shè)計(jì)……………………………………….5 </p><p>  2.2.1 程序設(shè)計(jì)流程…………………………..6</p><p>  2.2.2 程序設(shè)計(jì)代碼………………………….7 </p><p>  3 主程序設(shè)計(jì)…………………………………………….8</p><p>  3.1 界面設(shè)

4、計(jì)…………………………………………8</p><p>  3.2 文件保存函數(shù)設(shè)計(jì)………………………………8</p><p>  3.3 數(shù)據(jù)讀取函數(shù)設(shè)計(jì)………………………………9</p><p>  3.4 錄入函數(shù)設(shè)計(jì)……………………………………10</p><p>  3.5 進(jìn)貨函數(shù)設(shè)計(jì)…………………………………….10<

5、/p><p>  3.6 刪除函數(shù)設(shè)計(jì)…………………………………….11</p><p>  3.7 查詢函數(shù)設(shè)計(jì)…………………………………..13</p><p>  3.8 修改函數(shù)設(shè)計(jì)…………………………………..12</p><p>  3.9 銷售函數(shù)設(shè)計(jì)…………………………………..14</p><p>

6、  4 程序清單………………………………………………14</p><p>  5 程序運(yùn)行圖……………………………………………..25</p><p>  6 小結(jié)……………………………………………………..26</p><p><b>  1 設(shè)計(jì)內(nèi)容</b></p><p>  設(shè)計(jì)一個(gè)商品進(jìn)銷管理程序,該程序具有

7、以下功能:</p><p>  (1) 錄入商品信息;</p><p>  (2) 給定商品編號(hào),修改該商品信息;</p><p>  (3) 給定商品編號(hào),刪除該商品信息;</p><p>  (4) 錄入商品的進(jìn)貨和銷售信息;</p><p>  (5) 給定商品編號(hào)或商品名,查看該商品及庫(kù)存信息;</p&g

8、t;<p>  (6) 統(tǒng)計(jì)功能:提供一些統(tǒng)計(jì)各類信息的功能。</p><p><b>  1.1、設(shè)計(jì)要求</b></p><p>  (1) 按照分析、設(shè)計(jì)、編碼、調(diào)試和測(cè)試過(guò)程完成應(yīng)用程序;</p><p>  (2) 學(xué)習(xí)并使用流程圖等工具,并在撰寫報(bào)告中使用;</p><p>  (3) 程序的各

9、項(xiàng)功能在程序運(yùn)行時(shí),以菜單形式選擇并執(zhí)行;</p><p>  (4) 要求用戶輸入數(shù)據(jù)時(shí),要給出清晰、明確的提示,包括:輸入數(shù)據(jù)的內(nèi)容、格式及其結(jié)束方式等</p><p>  (5) 所有的信息存儲(chǔ)在一個(gè)文件或多個(gè)中,并實(shí)現(xiàn)文件讀寫操作。</p><p>  (6) 程序中用鏈表存放商品及進(jìn)銷存信息并實(shí)現(xiàn)增刪減功能。</p><p><

10、;b>  1.2、設(shè)計(jì)提示</b></p><p>  (1) 提醒事件信息可以設(shè)計(jì)一個(gè)結(jié)構(gòu)體類型</p><p>  (2) 自己構(gòu)思并增加的除規(guī)定功能之外的新功能,酌情加分。</p><p> ?。?) 程序中主要變量</p><p>  Struct goods *head 結(jié)構(gòu)體指針</p><p

11、><b>  Int n,k</b></p><p>  struct goods</p><p>  {int number;</p><p>  char name[20];</p><p>  int shumu;</p><p>  float jiage;</p>&

12、lt;p>  struct goods *next;</p><p><b>  };</b></p><p><b>  int n,k;</b></p><p>  struct goods *head;</p><p><b>  等一些變量。</b></p&

13、gt;<p>  (2) 數(shù)據(jù)輸入的形式和輸入值的范圍</p><p><b>  字符不超過(guò)20位</b></p><p><b>  整型變量輸入大于0</b></p><p>  浮點(diǎn)型 變量也大于0</p><p><b>  商品編號(hào)為四位整數(shù)</b>&

14、lt;/p><p> ?。?) 數(shù)據(jù)輸入的形式</p><p>  按程序運(yùn)行的提示操作※</p><p> ?。?) 程序所能達(dá)到的功能及出錯(cuò)處理</p><p>  該程序具有以下功能:</p><p>  (1) 錄入商品信息;</p><p>  (2) 給定商品編號(hào),修改該商品信息;<

15、;/p><p>  (3) 給定商品編號(hào),刪除該商品信息;</p><p>  (4) 錄入商品的進(jìn)貨和銷售信息;</p><p>  (5) 給定商品編號(hào)或商品名,查看該商品及庫(kù)存信息;</p><p>  (6) 統(tǒng)計(jì)功能:提供一些統(tǒng)計(jì)各類信息的功能。</p><p><b>  2 程序設(shè)計(jì)</b&g

16、t;</p><p>  根據(jù)要求首先設(shè)計(jì)一個(gè)結(jié)構(gòu)體類型,設(shè)計(jì)好界面,設(shè)計(jì)好主函數(shù)。 程序各功能通過(guò)調(diào)用子函數(shù)來(lái)實(shí)</p><p>  用switch來(lái)實(shí)現(xiàn)菜單的選擇</p><p>  一切數(shù)據(jù)信息通通存在文件中,并實(shí)現(xiàn)文件讀寫操作。 設(shè)計(jì)子函數(shù)來(lái)實(shí)現(xiàn)查詢,保存,讀取數(shù)據(jù),刪除等操作。</p><p><b>  2.1總體設(shè)計(jì)&

17、lt;/b></p><p>  圖1 系統(tǒng)功能模塊圖</p><p><b>  2.2詳細(xì)設(shè)計(jì)</b></p><p><b>  1. 主函數(shù)</b></p><p>  主函數(shù)設(shè)計(jì)要求簡(jiǎn)潔,只提供部分提示語(yǔ)和函數(shù)的調(diào)用</p><p><b>  【程

18、序】</b></p><p><b>  具體設(shè)計(jì)如下:</b></p><p><b>  結(jié)構(gòu)體設(shè)計(jì)</b></p><p>  struct goods</p><p>  {int number;</p><p>  char name[20]; int

19、shumu;</p><p>  float jiage;</p><p>  struct goods *next; };</p><p><b>  主函數(shù)設(shè)計(jì)</b></p><p>  2.2.1 程序設(shè)計(jì)流程圖</p><p>  2.2.2 程序設(shè)計(jì)代碼</p><

20、p>  void main()</p><p><b>  {</b></p><p>  void jieman();</p><p>  void luru();</p><p>  struct goods *shuju();</p><p>  void shanchu(struct

21、 goods *head); </p><p>  void jinghuo(struct goods *head); </p><p>  void xiaoshu(struct goods *head);</p><p>  void xiugai(struct goods *head); </p><p>  void chaxun(s

22、truct goods *head); </p><p>  struct goods *head=NULL;</p><p>  int k=0;system("cls");</p><p><b>  jieman();</b></p><p>  printf("請(qǐng)選擇你要的功能鍵:&

23、quot;); scanf("%d",&k);getchar(); while(k!=0)</p><p><b>  {</b></p><p>  head=shuju();</p><p><b>  switch(k)</b></p><p>  {case 1:

24、luru();break;</p><p>  case 2:xiugai(head);break;</p><p>  case 3:chaxun(head);break;</p><p>  case 4:xiaoshu(head);break;</p><p>  case 5:jinghuo(head);break;</p>

25、;<p>  case 6:shanchu(head);break;</p><p>  case 0:exit(0);</p><p>  default:printf("please try again!\n");</p><p><b>  }</b></p><p><b&

26、gt;  jieman();</b></p><p>  printf("請(qǐng)選擇你要的功能鍵:");</p><p>  scanf("%d",&k);</p><p><b>  }</b></p><p><b>  }</b><

27、/p><p><b>  3 主程序設(shè)計(jì)</b></p><p><b>  3.1 界面設(shè)計(jì)</b></p><p>  void jieman()</p><p><b>  {</b></p><p>  printf("**********

28、**********************************\n");</p><p>  printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("**1 *錄入信息☆☆***************★★★☆☆☆\n");</p><p>  printf("**2 *修改信息☆☆*****

29、**********★★★☆☆☆\n"); printf("**3 *查詢信息☆☆***************★★★☆☆☆\n"); printf("**4 *銷售信息☆☆***************★★★☆☆☆\n"); printf("**5 *進(jìn)貨信息☆☆***************★★★☆☆☆\n"); printf("**6 *刪除信息☆☆*

30、**************★★★☆☆☆\n"); printf("**0 *退出系統(tǒng)☆☆***************★★★☆☆☆\n"); printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("********************************************\n"); }</p><p&

31、gt;  3.2文件保存函數(shù)設(shè)計(jì)</p><p>  struct goods *baocun(struct goods *head)</p><p><b>  {</b></p><p>  struct goods *shuju();</p><p>  struct goods *p=NULL;</p>

32、;<p>  FILE *fp=NULL;</p><p>  char ch='\0';</p><p>  getchar();</p><p>  printf("是否保存到文件?(y/n):");</p><p>  ch=getchar();</p><p>

33、  putchar(10);</p><p>  if(ch=='y'||ch=='Y')</p><p><b>  {</b></p><p>  fp=fopen("goods.txt","wb");</p><p><b>  p=

34、head;</b></p><p>  if((fp==NULL)&&(p==NULL))</p><p><b>  {</b></p><p>  printf("讀取數(shù)據(jù)失敗!");</p><p><b>  exit(0);</b></

35、p><p><b>  }</b></p><p>  while(p!=NULL)</p><p><b>  {</b></p><p>  fprintf(fp,"%d\n%s\n%d\n%f\t",p->number,p->name,p->shumu,p-&

36、gt;jiage);</p><p>  p=p->next;</p><p><b>  }</b></p><p>  printf("保存成功!\n");</p><p>  fclose(fp);</p><p>  return(head);</p>

37、<p><b>  }</b></p><p>  else if(ch=='n'||ch=='N')</p><p><b>  {</b></p><p>  printf("信息未保存到文件!\n"); head=shuju();</p>

38、<p>  return(head);</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  printf("sorry,please try again(y/n)

39、:"); ch=getchar();</p><p>  putchar(10);</p><p><b>  }</b></p><p>  return(head);</p><p><b>  }</b></p><p>  3.3數(shù)據(jù)讀取函數(shù)設(shè)計(jì)</p

40、><p>  struct goods *shuju()</p><p><b>  {</b></p><p><b>  int n=0;</b></p><p><b>  FILE *fp;</b></p><p>  struct goods *h

41、ead=NULL,*p1,*p2;</p><p>  fp=fopen("goods.txt","rb");</p><p>  if(fp==NULL)</p><p><b>  {</b></p><p>  printf("\nsorry,讀取數(shù)據(jù)失敗!\n&q

42、uot;);</p><p><b>  exit(0);</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  p1=p2=(st

43、ruct goods *)malloc(LEN);</p><p>  fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&p1->jiage);</p><p>  while(!feof(fp))</p><p><b>  {&

44、lt;/b></p><p><b>  n++;</b></p><p>  if(n==1)head=p1;</p><p>  else p2->next=p1;</p><p><b>  p2=p1;</b></p><p>  p1=(struct g

45、oods *)malloc(LEN);</p><p>  fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&p1->jiage);</p><p><b>  }</b></p><p>  p2->next=N

46、ULL;</p><p>  fclose(fp);</p><p>  return(head);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  3.4錄入函數(shù)設(shè)計(jì)</b></p>

47、;<p>  void luru()</p><p>  {struct goods *shuju();</p><p>  struct goods *baocun(struct goods *head); struct goods *p1,*p2,*p3;</p><p>  head=shuju();</p><p>&l

48、t;b>  p1=head;</b></p><p>  p2=(struct goods *)malloc(LEN); printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&p2->number);</p><p>  printf("請(qǐng)輸入商品名:&q

49、uot;); scanf("%s",p2->name); printf("請(qǐng)輸入商品數(shù)量:"); scanf("%d",&p2->shumu); printf("請(qǐng)輸入商品價(jià)格:"); scanf("%f",&p2->jiage); if(p1==NULL)</p><p><

50、;b>  {p1=p2;</b></p><p>  p2->next=NULL; baocun(p2);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  while(p1!=NULL) {p3=p1;p1=p1

51、->next;} p3->next=p2;</p><p>  p2->next=NULL; baocun(head);</p><p><b>  }</b></p><p><b>  3.5進(jìn)貨函數(shù)設(shè)計(jì)</b></p><p>  void jinghuo(struct go

52、ods *head)</p><p>  {struct goods *baocun(struct goods *head);</p><p><b>  int c;</b></p><p><b>  int p;</b></p><p>  struct goods *p1,*p2;</

53、p><p>  system("cls");</p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&p);</p><p><b>  p1=head;</b></p><p>  w

54、hile(p!=p1->number&&p1->next!=NULL)</p><p><b>  {</b></p><p><b>  p2=p1;</b></p><p>  p1=p1->next;</p><p><b>  }</b>

55、;</p><p>  if(p==p1->number)</p><p><b>  {</b></p><p>  printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n");</p><p>  printf("%d\t\t%s\t\t%d\t\t%f\n&q

56、uot;,p1->number,p1->name,p1->shumu,p1->jiage);</p><p>  printf("請(qǐng)輸入該商品經(jīng)貨個(gè)數(shù):"); scanf("%d",&c);</p><p>  p1->shumu=p1->shumu+c;</p><p>  pri

57、ntf("該商品經(jīng)貨個(gè)數(shù):%d\n",p1->shumu); }</p><p>  baocun(head);</p><p><b>  }</b></p><p><b>  3.6刪除函數(shù)設(shè)計(jì)</b></p><p>  void shanchu(struct go

58、ods *head)</p><p>  {struct goods *p1,*p2;</p><p>  struct goods *baocun(struct goods *head); int p;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入四位編號(hào):&qu

59、ot;);</p><p>  scanf("%d",&p);</p><p><b>  p1=head;</b></p><p>  while(p!=p1->number&&p1->next!=NULL)</p><p>  {p2=p1;p1=p1->

60、next;}</p><p>  if(p==p1->number)</p><p>  {printf("\n商品編號(hào) \t商品名 \t 數(shù)量 \t 價(jià)格 \n"); printf(" %d\t\t%s\t\t%d\t\t%.2f\n",p1->number,p1->name,p1->shumu,p1->jiage);

61、</p><p>  if(p1==head) head=p1->next;</p><p>  else p2->next=p1->next;n=n-1;</p><p><b>  }</b></p><p>  printf("刪除成功!\n");</p><

62、;p>  baocun(head);</p><p><b>  }</b></p><p><b>  3.7查詢函數(shù)設(shè)計(jì)</b></p><p>  void chaxun(struct goods *head)</p><p><b>  {</b></p&g

63、t;<p>  int a,c,i=0;</p><p>  struct goods *p1,*p2;</p><p>  char t[20];</p><p>  printf(" 1*商品編號(hào)查詢\n");</p><p>  printf(" 2*商品名字查詢\n");</

64、p><p>  printf("請(qǐng)選擇你需要的功能鍵\n");</p><p>  scanf("%d",&a);</p><p>  getchar();</p><p><b>  if(a==1)</b></p><p><b>  {&

65、lt;/b></p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&c);getchar();</p><p>  while(c!=0&&i==0)</p><p><b>  {</b></p

66、><p><b>  p1=head;</b></p><p>  while(c!=p1->number&&p1->next!=NULL)</p><p>  {p2=p1;p1=p1->next;}</p><p>  if(c==p1->number)</p>&l

67、t;p>  {printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p>  printf(" %d\t %s\t %d\t %.2f\n",p1->number,p1->name,p1->shumu,p1->jiage);i=1;</p><p>  else {printf(&qu

68、ot;系統(tǒng)中無(wú)該商品記錄!press enter return!\n");getchar();system("cls");return;}</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(a==2&&i==0)</

69、p><p><b>  {</b></p><p>  system("cls");printf("請(qǐng)輸入商品名字:");</p><p>  scanf("%s",&t);getchar();</p><p>  while(strcmp(t,"

70、0")!=0&&i==0)</p><p><b>  {</b></p><p><b>  p1=head;</b></p><p>  if(strcmp(t,p1->name)!=0&&p1->next!=NULL)</p><p>&l

71、t;b>  {</b></p><p>  p2=p1;p1=p1->next;</p><p><b>  }</b></p><p>  if(strcmp(t,p1->name)==0)</p><p><b>  {</b></p><p&g

72、t;  printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p>  printf(" %d\t %s\t %d\t %f\n",p1->number,p1->name,p1->shumu,p1->jiage);i=1;}</p><p>  else {printf("系統(tǒng)中無(wú)

73、該商品記錄!press enterreturn!\n");getchar();system("cls");return;} }</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  3.8修改函數(shù)設(shè)計(jì)</b></

74、p><p>  void xiugai(struct goods *head)</p><p>  {struct goods *baocun(struct goods *head); int p,i=0;</p><p>  struct goods *p1,*p2;</p><p>  system("cls");<

75、/p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&p);</p><p>  getchar();</p><p><b>  if(p!=0)</b></p><p><b>  {<

76、/b></p><p><b>  p1=head;</b></p><p>  while(p!=p1->number&&p1->next!=NULL) {</p><p><b>  p2=p1;</b></p><p>  p1=p1->next;<

77、;/p><p><b>  }</b></p><p>  if(p==p1->number)</p><p>  {printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p>  printf(" %d\t %s\t %d\t %f\n",p

78、1->number,p1->name,p1->shumu,p1->jiage);</p><p>  printf("請(qǐng)輸入要修改的新商品編號(hào) ");</p><p>  scanf("%d",&p1->number);</p><p><b>  i=1;</b>&

79、lt;/p><p><b>  }</b></p><p><b>  if(i==1)</b></p><p><b>  {</b></p><p>  printf("修改后新商品編號(hào) 名字 數(shù)目 價(jià)格:\n");</p><p>

80、  printf("%d %s %d %f",p1->number,p1->name,p1->shumu,p1->jiage);</p><p>  printf("修改成功!\n");</p><p>  baocun(head);</p><p><b>  }</b><

81、/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  3.9銷售函數(shù)設(shè)計(jì)</b></p><p>  void xiaoshu(struct goods *head)</p><p>  {struct g

82、oods *baocun(struct goods *head); int c;</p><p><b>  int p;</b></p><p>  struct goods *p1,*p2;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入四位

83、編號(hào):");</p><p>  scanf("%d",&p);</p><p>  getchar();</p><p><b>  p1=head;</b></p><p>  while(p!=p1->number&&p1->next!=NULL)

84、{</p><p><b>  p2=p1;</b></p><p>  p1=p1->next;</p><p><b>  }</b></p><p>  if(p==p1->number)</p><p><b>  {</b><

85、/p><p>  printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n");</p><p>  printf("%d\t\t%s\t\t%d\t\t%f\n",p1->number,p1->name,p1->shumu,p1->jiage);</p><p>  printf(&qu

86、ot;請(qǐng)輸入該商品售貨個(gè)數(shù):");</p><p>  scanf("%d",&c);</p><p>  p1->shumu=p1->shumu-c;</p><p>  printf("該商品經(jīng)貨個(gè)數(shù):%d\n",p1->shumu);</p><p><b

87、>  }</b></p><p>  baocun(head);</p><p><b>  }</b></p><p><b>  4程序清單</b></p><p>  #include<stdio.h></p><p>  #include

88、<string.h></p><p>  #include<stdlib.h></p><p>  #include<malloc.h></p><p>  #define LEN sizeof(struct goods)</p><p>  struct goods //結(jié)構(gòu)體</p>&l

89、t;p>  {int number; //商品編號(hào)</p><p>  char name[20]; //商品名</p><p>  int shumu; //商品數(shù)目</p><p>  float jiage; //商品價(jià)格</p><p>  struct goods *next;</p><p><

90、b>  };</b></p><p>  int n,k; //全局變量</p><p>  struct goods *head; //全局變量</p><p>  void main() //主函數(shù)</p><p><b>  {</b></p><p>  void jie

91、man(); //界面函數(shù)聲明</p><p>  void luru(); //錄入函數(shù)聲明</p><p>  struct goods *shuju(); //數(shù)據(jù)讀取函數(shù)聲明</p><p>  void shanchu(struct goods *head); //刪除函數(shù)聲明 </p><p>  void jinghuo(str

92、uct goods *head); //進(jìn)貨函數(shù)聲明 </p><p>  void xiaoshu(struct goods *head); //銷售函數(shù)聲明</p><p>  void xiugai(struct goods *head); //修改函數(shù)聲明 </p><p>  void chaxun(struct goods *head); //查詢函數(shù)聲

93、明</p><p>  struct goods *head=NULL;</p><p><b>  int k=0;</b></p><p>  system("cls");</p><p><b>  jieman();</b></p><p>  p

94、rintf("請(qǐng)選擇你要的功能鍵:");</p><p>  scanf("%d",&k);getchar();</p><p>  while(k!=0)</p><p><b>  {</b></p><p>  head=shuju();</p><

95、;p><b>  switch(k)</b></p><p>  {case 1:luru();break;</p><p>  case 2:xiugai(head);break;</p><p>  case 3:chaxun(head);break;</p><p>  case 4:xiaoshu(head

96、);break;</p><p>  case 5:jinghuo(head);break;</p><p>  case 6:shanchu(head);break;</p><p>  case 0:exit(0);</p><p>  default:printf("please try again!\n");<

97、;/p><p><b>  }</b></p><p><b>  jieman();</b></p><p>  printf("請(qǐng)選擇你要的功能鍵:");</p><p>  scanf("%d",&k);</p><p>&l

98、t;b>  }</b></p><p><b>  }</b></p><p>  struct goods *baocun(struct goods *head) //保存函數(shù) </p><p><b>  {</b></p><p>  struct goods *shuju(

99、);</p><p>  struct goods *p=NULL;</p><p>  FILE *fp=NULL;</p><p>  char ch='\0';</p><p>  getchar();</p><p>  printf("是否保存到文件?(y/n):"); /

100、/判斷是否保存 </p><p>  ch=getchar();</p><p>  putchar(10);</p><p>  if(ch=='y'||ch=='Y')</p><p><b>  {</b></p><p>  fp=fopen("g

101、oods.txt","wb");</p><p><b>  p=head;</b></p><p>  if((fp==NULL)&&(p==NULL))</p><p><b>  {</b></p><p>  printf("讀取數(shù)據(jù)失

102、敗!");</p><p><b>  exit(0);</b></p><p><b>  }</b></p><p>  while(p!=NULL)</p><p><b>  {</b></p><p>  fprintf(fp,&qu

103、ot;%d\n%s\n%d\n%f\t",p->number,p->name,p->shumu,p->jiage);</p><p>  p=p->next;</p><p><b>  }</b></p><p>  printf("保存成功!\n");</p><

104、;p>  fclose(fp);</p><p>  return(head);</p><p><b>  }</b></p><p>  else if(ch=='n'||ch=='N')</p><p><b>  {</b></p><

105、;p>  printf("信息未保存到文件!\n");</p><p>  head=shuju();</p><p>  return(head);</p><p><b>  }</b></p><p><b>  else</b></p><p&g

106、t;<b>  {</b></p><p>  printf("sorry,please try again(y/n):"); ch=getchar();</p><p>  putchar(10);</p><p><b>  }</b></p><p>  return(he

107、ad);</p><p><b>  }</b></p><p>  void chaxun(struct goods *head) 查詢函數(shù) {</p><p>  int a,c,i=0;</p><p>  struct goods *p1,*p2;</p><p>  char t[20]

108、;</p><p>  printf(" 1*商品編號(hào)查詢\n"); printf(" 2*商品名字查詢\n"); printf("請(qǐng)選擇你需要的功能鍵\n"); scanf("%d",&a);</p><p>  getchar();</p><p><b>  if

109、(a==1)</b></p><p><b>  {</b></p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&c);getchar();</p><p>  while(c!=0&&i==0

110、)</p><p><b>  {</b></p><p><b>  p1=head;</b></p><p>  while(c!=p1->number&&p1->next!=NULL) //查找商品</p><p>  {p2=p1;p1=p1->next;}

111、</p><p>  if(c==p1->number)</p><p>  {printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p>  printf(" %d\t %s\t %d\t %.2f\n",p1->number,p1->name,p1->shumu,

112、p1->jiage);i=1;}</p><p>  else {printf("系統(tǒng)中無(wú)該商品記錄!press enter return!\n");getchar();system("cls");return;}</p><p><b>  }</b></p><p><b>  }&l

113、t;/b></p><p>  if(a==2&&i==0)</p><p><b>  {</b></p><p>  system("cls");printf("請(qǐng)輸入商品名字:");</p><p>  scanf("%s",&

114、;t);getchar();</p><p>  while(strcmp(t,"0")!=0&&i==0)</p><p><b>  {</b></p><p><b>  p1=head;</b></p><p>  if(strcmp(t,p1->n

115、ame)!=0&&p1->next!=NULL) //查找商品</p><p><b>  {</b></p><p>  p2=p1;p1=p1->next;</p><p><b>  }</b></p><p>  if(strcmp(t,p1->name)=

116、=0)</p><p><b>  {</b></p><p>  printf("\n 商品編號(hào) \t 名字 \t 數(shù)目 \t 價(jià)格:\n");</p><p>  printf(" %d\t %s\t %d\t %f\n",p1->number,p1->name,p1->shumu,

117、p1->jiage);i=1;}</p><p>  else {printf("系統(tǒng)中無(wú)該商品記錄!press enter return!\n");getchar();system("cls");return;}</p><p><b>  }</b></p><p><b>  }&l

118、t;/b></p><p><b>  }</b></p><p>  void jinghuo(struct goods *head) //進(jìn)貨函數(shù)</p><p>  {struct goods *baocun(struct goods *head);</p><p><b>  int c;<

119、/b></p><p><b>  int p;</b></p><p>  struct goods *p1,*p2;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  

120、scanf("%d",&p);</p><p><b>  p1=head;</b></p><p>  while(p!=p1->number&&p1->next!=NULL) 查找商品 {</p><p><b>  p2=p1;</b></p>&

121、lt;p>  p1=p1->next;</p><p><b>  }</b></p><p>  if(p==p1->number)</p><p><b>  {</b></p><p>  printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n&

122、quot;);</p><p>  printf("%d\t\t%s\t\t%d\t\t%f\n",p1->number,p1->name,p1->shumu,p1->jiage);</p><p>  printf("請(qǐng)輸入該商品經(jīng)貨個(gè)數(shù):");</p><p>  scanf("%d&qu

123、ot;,&c);</p><p>  p1->shumu=p1->shumu+c;</p><p>  printf("該商品經(jīng)貨個(gè)數(shù):%d\n",p1->shumu); }</p><p>  baocun(head); //保存數(shù)據(jù)</p><p><b>  }</b>

124、</p><p>  void luru()</p><p>  {struct goods *shuju(); //調(diào)用函數(shù)</p><p>  struct goods *baocun(struct goods *head); struct goods *p1,*p2,*p3;</p><p>  head=shuju();</p&

125、gt;<p><b>  p1=head;</b></p><p>  p2=(struct goods *)malloc(LEN);</p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&p2->number);</p&

126、gt;<p>  printf("請(qǐng)輸入商品名:");</p><p>  scanf("%s",p2->name);</p><p>  printf("請(qǐng)輸入商品數(shù)量:");</p><p>  scanf("%d",&p2->shumu);<

127、/p><p>  printf("請(qǐng)輸入商品價(jià)格:");</p><p>  scanf("%f",&p2->jiage);</p><p>  if(p1==NULL)</p><p><b>  {p1=p2;</b></p><p>  p2

128、->next=NULL;</p><p>  baocun(p2);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  while(p1!=NULL)</p><p>  {p3=p1;p1=p1->n

129、ext;}</p><p>  p3->next=p2;</p><p>  p2->next=NULL;</p><p>  baocun(head); //保存數(shù)據(jù)</p><p><b>  }</b></p><p>  void shanchu(struct goods *h

130、ead) //刪除函數(shù)</p><p>  {struct goods *p1,*p2;</p><p>  struct goods *baocun(struct goods *head); int p;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入四位編號(hào):&q

131、uot;);</p><p>  scanf("%d",&p);</p><p><b>  p1=head;</b></p><p>  while(p!=p1->number&&p1->next!=NULL)// 查找商品</p><p>  {p2=p1;p1

132、=p1->next;}</p><p>  if(p==p1->number)</p><p>  {printf("\n商品編號(hào) \t商品名 \t 數(shù)量 \t 價(jià)格 \n"); printf(" %d\t\t%s\t\t%d\t\t%.2f\n",p1->number,p1->name,p1->shumu,p1->

133、;jiage);</p><p>  if(p1==head) head=p1->next;</p><p>  else p2->next=p1->next;n=n-1;</p><p><b>  }</b></p><p>  printf("刪除成功!\n");</p&

134、gt;<p>  baocun(head);</p><p><b>  }</b></p><p>  struct goods *shuju() //數(shù)據(jù)讀取函數(shù)</p><p><b>  {</b></p><p><b>  int n=0;</b>&l

135、t;/p><p><b>  FILE *fp;</b></p><p>  struct goods *head=NULL,*p1,*p2;</p><p>  fp=fopen("goods.txt","rb");</p><p>  if(fp==NULL)</p>

136、<p><b>  {</b></p><p>  printf("\nsorry,讀取數(shù)據(jù)失敗!\n");</p><p><b>  exit(0);</b></p><p><b>  }</b></p><p><b>  el

137、se</b></p><p><b>  {</b></p><p>  p1=p2=(struct goods *)malloc(LEN);</p><p>  fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&

138、p1->jiage);</p><p>  while(!feof(fp))</p><p><b>  {</b></p><p><b>  n++;</b></p><p>  if(n==1)head=p1;</p><p>  else p2->next

139、=p1;</p><p><b>  p2=p1;</b></p><p>  p1=(struct goods *)malloc(LEN);</p><p>  fscanf(fp,"%d%s%d%f",&p1->number,p1->name,&p1->shumu,&p1->

140、;jiage);</p><p><b>  }</b></p><p>  p2->next=NULL;</p><p>  fclose(fp);</p><p>  return(head);</p><p><b>  }</b></p><

141、p><b>  }</b></p><p>  void jieman() 界面函數(shù)</p><p><b>  {</b></p><p>  printf("********************************************\n");</p><p&g

142、t;  printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("**1 *錄入信息☆☆***************★★★☆☆☆\n"); printf("**2 *修改信息☆☆***************★★★☆☆☆\n"); printf("**3 *查詢信息☆☆***************★★★☆☆☆\n"); pr

143、intf("**4 *銷售信息☆☆***************★★★☆☆☆\n"); printf("**5 *進(jìn)貨信息☆☆***************★★★☆☆☆\n"); printf("**6 *刪除信息☆☆***************★★★☆☆☆\n"); printf("**0 *退出系統(tǒng)☆☆***************★★★☆☆☆\n")

144、; </p><p>  printf("☆☆☆★★★歡迎進(jìn)入商品管理系統(tǒng)★★★☆☆☆\n"); printf("********************************************\n");</p><p><b>  }</b></p><p>  void xiaoshu(str

145、uct goods *head) 銷售函數(shù)</p><p>  {struct goods *baocun(struct goods *head);</p><p><b>  int c;</b></p><p><b>  int p;</b></p><p>  struct goods *p

146、1,*p2;</p><p>  system("cls");</p><p>  printf("請(qǐng)輸入四位編號(hào):");</p><p>  scanf("%d",&p);</p><p>  getchar();</p><p><b>

147、  p1=head;</b></p><p>  while(p!=p1->number&&p1->next!=NULL) 查找商品 {</p><p><b>  p2=p1;</b></p><p>  p1=p1->next;</p><p><b>  }&

148、lt;/b></p><p>  if(p==p1->number)</p><p><b>  {</b></p><p>  printf("\n 商品編號(hào) \t 商品名 \t 數(shù)量 \t 價(jià)格 \n");</p><p>  printf("%d\t\t%s\t\t%d\t

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論