c語言課程設(shè)計----實驗室管理系統(tǒng)_第1頁
已閱讀1頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  C語言課程設(shè)計論文</b></p><p>  學(xué) 院: 計算機(jī)學(xué)院 </p><p>  專 業(yè): 網(wǎng)絡(luò)工程 </p><p>  題 目: 實驗室管理系統(tǒng) </p><p><b>  總 結(jié)<

2、;/b></p><p>  通過這次課程設(shè)計,使我對C語言有了更進(jìn)一步的認(rèn)識和了解,要想學(xué)好它要重在實踐,要通過不斷的上機(jī)操作才能更好地學(xué)習(xí)它,我也發(fā)現(xiàn)我的好多不足之處,首先是自己打字速度慢,通過練習(xí)也有所改進(jìn);剛開始對函數(shù)調(diào)用的正確使用不夠熟悉,對C語言中經(jīng)常出現(xiàn)的錯誤也不了解,通過實踐和學(xué)習(xí),我逐漸了解編程工具出現(xiàn)的英文警告和錯誤的含義。我認(rèn)識到學(xué)好計算機(jī)要重視實踐操作,不僅僅是學(xué)習(xí)C語言,還是其它的

3、語言,以及其它的計算機(jī)方面的知識都要重在實踐,所以后在學(xué)習(xí)過程中,我會更加注視實踐操作,使自己便好地學(xué)好計算機(jī)。</p><p>  在課程設(shè)計過程中,收獲知識,提高能力的同時,我也學(xué)到了很多人生的哲理,懂得怎么樣去制定計劃,怎么樣去實現(xiàn)這個計劃,并掌握了在執(zhí)行過程中怎么樣去克服心理上的不良情緒。因此在以后的生活和學(xué)習(xí)的過程中,我一定會把課程設(shè)計的精神帶到生活中,不畏艱難,勇往直前!</p><

4、;p><b>  目 錄 </b></p><p><b>  1 題目要求1</b></p><p><b>  2 需求分析1</b></p><p><b>  3 總體設(shè)計1</b></p><p><b>  詳細(xì)

5、設(shè)計2</b></p><p><b>  4.1主函數(shù)2</b></p><p>  4.2各功能模塊設(shè)計3</p><p>  4.3 公共函數(shù)8</p><p>  5.運行結(jié)果(附圖)14</p><p>  附錄A 實驗室管理系統(tǒng)源碼21</p>

6、<p><b>  參考文獻(xiàn)40</b></p><p><b>  1 題目要求</b></p><p><b>  1.1 要求</b></p><p>  實驗室設(shè)備信息包括:設(shè)備編號、設(shè)備名稱、設(shè)備種類(如微機(jī)、打印機(jī)、掃描機(jī)等)、設(shè)備價格、設(shè)備購入時期、是否報廢、報廢日期等試

7、設(shè)計一實驗室設(shè)備管理系統(tǒng),使之能提供以下功能:</p><p>  1.能夠完成對設(shè)備的更改;</p><p>  2.對設(shè)備進(jìn)行分類統(tǒng)計;</p><p><b>  3.設(shè)備的查詢;</b></p><p><b>  2 需求分析</b></p><p>  實驗室設(shè)

8、備信息用文件data.txt保存,提供文件的輸入輸出操作;能夠完成對設(shè)備的錄入和更改,提供設(shè)備添加和修改操作;實現(xiàn)對設(shè)備進(jìn)行分類統(tǒng)計,提供排序操作;實現(xiàn)對設(shè)備的查詢,提供查找操作,查詢可以按照設(shè)備編號、設(shè)備種類、設(shè)備名稱、設(shè)備購入日期、是否報廢、報廢日期等多種方式查詢;另外提供鍵盤是選擇菜單以實現(xiàn)功能選擇。</p><p><b>  總體設(shè)計</b></p><p>

9、;  根據(jù)上面的分析,可以將這個系統(tǒng)分為如下六大模塊:實驗室設(shè)備輸入模塊、實驗設(shè)備信息添加模塊、、實驗設(shè)備分類統(tǒng)計模塊、實驗設(shè)備查詢模塊和退出模塊。其中主要模塊是前五個模塊。</p><p><b>  4 詳細(xì)設(shè)計</b></p><p><b>  主函數(shù)</b></p><p><b>  【數(shù)據(jù)結(jié)構(gòu)】&

10、lt;/b></p><p>  原始數(shù)據(jù)有設(shè)備編號、設(shè)備名稱、設(shè)備種類、設(shè)備價格、設(shè)備購入時期、是否報廢、報廢日期,所以定義一個全局結(jié)構(gòu)體數(shù)組equipment用于保存原始數(shù)據(jù)。</p><p><b>  【數(shù)據(jù)結(jié)構(gòu)代碼】</b></p><p>  struct equipment</p><p><b

11、>  {</b></p><p>  char num[4]; 編號</p><p>  char name[20]; 名稱</p><p>  char type[20]; 種類</p><p>  float price; 價格</p><p>  char ind

12、ate[15]; 購入日期</p><p>  char out[2]; 是否報廢(是為y,否為n)</p><p>  char outdate[15]; 報廢日期</p><p>  }equ[N]; N為全局變量,暫定為100</p><p>  主函數(shù)初始化工作完成之后執(zhí)行menu()顯示主菜單。<

13、/p><p><b>  【程序】</b></p><p>  void main() //入口函數(shù)</p><p><b>  {</b></p><p>  menu(); //顯示主菜單</p><p><b>  }</b></p&

14、gt;<p>  menu()顯示主菜單</p><p>  用于顯示菜單,獲取用戶選項進(jìn)入相應(yīng)模塊。</p><p><b>  【程序】</b></p><p>  void menu()</p><p><b>  {</b></p><p><b&

15、gt;  int n,w1;</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  puts("************************菜單*********************\n");</p><p&

16、gt;  puts("\t\t\t\t1.輸入新數(shù)據(jù)\n");</p><p>  puts("\t\t\t\t2.修改數(shù)據(jù)\n");</p><p>  puts("\t\t\t\t3.添加數(shù)據(jù)\n");</p><p>  puts("\t\t\t\t4.瀏覽全部\n");</

17、p><p>  puts("\t\t\t\t5.搜索\n");</p><p>  puts("\t\t\t\t6.排序\n");</p><p>  puts("\t\t\t\t7.退出\n");</p><p>  puts("***********************

18、***************************\n");</p><p>  printf("選擇數(shù)字(1-7):[ ]\b\b");</p><p>  scanf("%d",&n);</p><p>  if(n<1||n>7)</p><p><b>

19、;  {</b></p><p>  w1=1;getchar();}</p><p>  else w1=0;</p><p><b>  }</b></p><p>  while(w1==1);</p><p><b>  switch(n)</b><

20、/p><p><b>  {</b></p><p>  case 1:enter();break;</p><p>  case 2:modify();break;</p><p>  case 3:add();break;</p><p>  case 4:browse();break;</

21、p><p>  case 5:search();break;</p><p>  case 6:order();break;</p><p>  case 7:exit(0);</p><p><b>  }</b></p><p><b>  }</b></p>

22、<p><b>  各功能模塊設(shè)計</b></p><p><b>  設(shè)備輸入模塊</b></p><p><b>  【程序】</b></p><p>  void enter()</p><p>  { int i,n;</p><p&

23、gt;  printf("添加多少設(shè)備?:");</p><p>  scanf("%d",&n);</p><p>  printf("\n\n");</p><p>  for(i=0;i<n;i++)</p><p><b>  {</b>&

24、lt;/p><p>  printf("輸入第%d個數(shù)據(jù)",i+1);</p><p><b>  input(i);</b></p><p><b>  }</b></p><p>  if(i!=0)save(n); </p><p>  print

25、f_back(); </p><p><b>  }</b></p><p><b>  設(shè)備信息添加模塊</b></p><p><b>  【程序】</b></p><p>  void add()</p><p><b>  {&

26、lt;/b></p><p>  int i,n,m,k;</p><p><b>  FILE *fp;</b></p><p><b>  n=load();</b></p><p>  printf("你想輸入多少設(shè)備(0-%d)?:",N-1-n);</p&g

27、t;<p>  scanf("%d",&m);</p><p><b>  k=m+n;</b></p><p>  for(i=0;i<m;i++)</p><p><b>  {</b></p><p>  printf("\n輸入第%d

28、個設(shè)備的數(shù)據(jù)\n",i+1);</p><p><b>  input(i);</b></p><p><b>  }</b></p><p>  if((fp=fopen("data.txt","ab"))==NULL)</p><p><b

29、>  {</b></p><p>  printf("找不到文件\n");</p><p><b>  }</b></p><p>  for(i=0;i<m;i++)</p><p>  if((fwrite(&equ[i],sizeof(struct equipme

30、nt),1,fp))!=1);</p><p>  fclose(fp);</p><p>  printf_back();</p><p><b>  }</b></p><p><b>  設(shè)備信息更改模塊</b></p><p><b>  【程序】</

31、b></p><p>  void modify()</p><p><b>  {</b></p><p>  struct equipment e;</p><p>  int i,n,w0=1,w1,w2=0,k;</p><p><b>  n=load();</b&

32、gt;</p><p><b>  do</b></p><p><b>  {</b></p><p><b>  k=-1;</b></p><p>  printf_face();</p><p>  for(i=0;i<n;i++)<

33、/p><p>  {if((i!=0)&&(i%10==0))</p><p><b>  {</b></p><p>  printf("記住你要改的序號,任意鍵繼續(xù)..\n");</p><p>  getchar();</p><p>  puts("

34、;\n\n");</p><p><b>  }</b></p><p>  printf_one(i);</p><p><b>  }</b></p><p><b>  do</b></p><p><b>  {</b&

35、gt;</p><p>  printf("\n輸入你要修改的設(shè)備的序號:NO.:");</p><p>  scanf("%s",e.num);</p><p>  for(i=0;i<n;i++)</p><p>  if(strcmp(e.num,equ[i].num)==0)</p&

36、gt;<p><b>  {</b></p><p>  k=i;e=equ[i];</p><p><b>  }</b></p><p>  if(k==-1) printf("\n\n不存在,請重新輸入");</p><p>  }while(k==-1);&

37、lt;/p><p>  printf_face();</p><p>  printf_one(k);</p><p>  w1=modify_data(k,n);</p><p><b>  if(w1==1)</b></p><p><b>  {</b></p>

38、<p>  printf("\n恭喜~還想再改嗎?\n\n1).是\t2).返回并保存\t[ ]\b\b");</p><p>  scanf("%d",&w0);</p><p><b>  w2=1;</b></p><p><b>  }</b></

39、p><p><b>  else</b></p><p><b>  {</b></p><p><b>  w0=0;</b></p><p><b>  if(w2==1)</b></p><p><b>  equ[k]

40、=e;</b></p><p><b>  }</b></p><p>  if(w0!=1&&w2==1)</p><p><b>  save(n);</b></p><p><b>  }</b></p><p>  w

41、hile(w0==1);</p><p><b>  menu();</b></p><p><b>  }</b></p><p><b>  設(shè)備分類統(tǒng)計模塊</b></p><p><b>  【程序】</b></p><p>

42、;  void order()</p><p>  { int n,w1;</p><p><b>  do</b></p><p><b>  {</b></p><p>  printf("***********************分類統(tǒng)計選項******************

43、********\n");</p><p>  printf("\t\t\t1.設(shè)備編號\n");</p><p>  printf("\t\t\t2.名稱\n");</p><p>  printf("\t\t\t3.種類\n");</p><p>  printf(&q

44、uot;\t\t\t4.價格\n");</p><p>  printf("\t\t\t5.購入日期\n");</p><p>  printf("\t\t\t6.是否報廢\n");</p><p>  printf("\t\t\t7.報廢日期\n");</p><p> 

45、 printf("\t\t\t8.退出\n");</p><p>  printf("***************************\n");</p><p>  printf("請輸入號碼[ ]\b\b");</p><p>  scanf("%d",&n);</

46、p><p>  if(n<1||n>7)</p><p><b>  {</b></p><p><b>  w1=1;</b></p><p>  getchar();</p><p><b>  }</b></p><p&

47、gt;  else w1=0;</p><p><b>  }</b></p><p>  while(w1==1);</p><p><b>  switch(n)</b></p><p><b>  {</b></p><p>  case 1:nu

48、m_order();break;</p><p>  case 2:name_order();break;</p><p>  case 3:type_order();break;</p><p>  case 4:price_order();break;</p><p>  case 5:indate_order();break;</

49、p><p>  case 6:out_order();break;</p><p>  case 7:outdate_order();break;</p><p>  case 8:menu();</p><p><b>  }</b></p><p><b>  }</b>&l

50、t;/p><p><b>  設(shè)備查詢模塊</b></p><p><b>  【程序】</b></p><p>  void search()</p><p>  {int n,w1;</p><p><b>  do</b></p><

51、;p><b>  {</b></p><p>  printf("***********************分類統(tǒng)計選項**************************\n");</p><p>  printf("\t\t\t1.設(shè)備編號\n");</p><p>  printf(&qu

52、ot;\t\t\t2.名稱\n");</p><p>  printf("\t\t\t3.種類\n");</p><p>  printf("\t\t\t4.價格\n");</p><p>  printf("\t\t\t5.購入日期\n");</p><p>  prin

53、tf("\t\t\t6.是否報廢\n");</p><p>  printf("\t\t\t7.報廢日期\n");</p><p>  printf("\t\t\t8.退出\n");</p><p>  printf("***************************************

54、**********************\n");</p><p>  printf("請輸入號碼[ ]\b\b");</p><p>  scanf("%d",&n);</p><p>  if(n<1||n>8)</p><p><b>  {</b

55、></p><p><b>  w1=1;</b></p><p>  getchar();</p><p><b>  }</b></p><p>  else w1=0;</p><p><b>  }</b></p><p

56、>  while(w1==1);</p><p><b>  switch(n)</b></p><p><b>  {</b></p><p>  case 1:num_search();break;</p><p>  case 2:name_search();break;</p&g

57、t;<p>  case 3:type_search();break;</p><p>  case 4:price_search();break;</p><p>  case 5:indate_search();break;</p><p>  case 6:out_search();break;</p><p>  cas

58、e 7:outdate_search();break;</p><p>  case 8:menu();</p><p><b>  }</b></p><p><b>  }</b></p><p>  4.2.6 設(shè)備信息瀏覽模塊</p><p><b>  【

59、程序】</b></p><p>  void browse()</p><p><b>  {</b></p><p><b>  int i,n;</b></p><p><b>  n=load();</b></p><p>  for(

60、i=0;i<n;i++)</p><p><b>  {</b></p><p>  if(i%10==0)</p><p>  puts("\n\n");</p><p>  printf_face();</p><p>  printf_one(i);</p&g

61、t;<p><b>  }</b></p><p>  printf("\n\t有%d個記錄\n",n);</p><p>  printf("任意鍵繼續(xù)~\n");</p><p>  getchar();getchar();</p><p><b>  

62、menu(); </b></p><p><b>  }</b></p><p><b>  4.2.7退出模塊</b></p><p>  exit(0)為系統(tǒng)函數(shù)</p><p><b>  4.3 公共函數(shù)</b></p><p>&l

63、t;b>  4.3.1【程序】</b></p><p>  void save(int n) //保存函數(shù) </p><p><b>  {</b></p><p><b>  int i;</b></p><p><b>  FILE *fp;</b>

64、;</p><p>  if ((fp=fopen("data.txt","wb"))==NULL)</p><p><b>  {</b></p><p>  printf("cannot open file~");</p><p><b>  re

65、turn;}</b></p><p>  for(i=0;i<n;i++)</p><p>  if(fwrite(&equ[i],sizeof(struct equipment),1,fp)!=1)</p><p>  printf("file write error~");</p><p> 

66、 fclose(fp);</p><p><b>  }</b></p><p><b>  4.3.2【程序】</b></p><p>  int load() //加載函數(shù)</p><p><b>  {</b></p><p><b&g

67、t;  FILE *fp;</b></p><p><b>  int i;</b></p><p>  if((fp=fopen("data.txt","rb"))==NULL)</p><p><b>  {</b></p><p>  pri

68、ntf("找不到文件\n");</p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  for(i=0;!feof(fp);i++)</p><p>  if(fread(&equ[i],sizeof(struc

69、t equipment),1,fp)!=1)</p><p><b>  ;</b></p><p>  fclose(fp);</p><p>  return (i-1);}</p><p><b>  4.3.3【程序】</b></p><p>  void no_in

70、put(int i,int n) //學(xué)號輸入函數(shù)</p><p><b>  {</b></p><p>  int j,k,w;</p><p><b>  do</b></p><p><b>  {</b></p><p><b> 

71、 w=0;</b></p><p>  printf("編號:");</p><p>  scanf("%s",equ[i].num);</p><p>  for(j=0;equ[i].num[j]!='\0';j++)</p><p>  if(equ[i].num[j]

72、<'0'||equ[i].num[j]>'9')</p><p><b>  {</b></p><p>  printf("輸入錯誤,只能由純數(shù)字構(gòu)成,請重新輸入!\n");</p><p>  w=1;break;</p><p><b>  

73、}</b></p><p><b>  if(w!=1)</b></p><p>  for(k=0;k<n;k++)</p><p>  if(k!=i&&strcmp(equ[k].num,equ[i].num)==0)</p><p><b>  {</b>&

74、lt;/p><p>  printf("此數(shù)據(jù)已存在,請重新輸入\n");</p><p>  w=1;break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  while(w==1);</p>

75、;<p><b>  }</b></p><p>  void printf_back2()</p><p><b>  { </b></p><p><b>  int i,n;</b></p><p><b>  int w;</b>&

76、lt;/p><p><b>  n=load();</b></p><p>  for(i=0;i<n;i++)</p><p><b>  {</b></p><p>  if(i%10==0)</p><p>  puts("\n\n");</

77、p><p>  printf_face();</p><p>  printf_one(i);</p><p><b>  }</b></p><p>  printf("\n\t有%d個記錄\n",n);</p><p>  printf("接下來您想?\n\n1).返

78、回主菜單\t\t2).返回排序菜單繼續(xù)排序: [ ]\b\b");</p><p>  scanf("%d",&w);</p><p>  if(w==1) menu();</p><p>  else order();</p><p><b>  }</b></p>

79、<p><b>  4.3.4【程序】</b></p><p>  void printf_back() //任務(wù)結(jié)束選擇瀏覽還是返回函數(shù)</p><p><b>  {</b></p><p><b>  int w;</b></p><p>  print

80、f("\n\n恭喜!操作成功!\n\n");</p><p>  printf("接下來您想?\n\n1).瀏覽瀏覽操作后全部數(shù)據(jù)\t\t2).返回主菜單: [ ]\b\b");</p><p>  scanf("%d",&w);</p><p>  if(w==1) browse();</

81、p><p>  else menu();</p><p><b>  }</b></p><p><b>  4.3.5【程序】</b></p><p>  void printf_back1() //任務(wù)結(jié)束選擇瀏覽還是返回繼續(xù)繼續(xù)搜索</p><p><b> 

82、 {</b></p><p><b>  int i; </b></p><p><b>  int w;</b></p><p>  printf("\n\n恭喜!操作成功!\n\n");</p><p>  printf("接下來您想?\n\n1).返

83、回主菜單\t\t2).返回搜索菜單繼續(xù)搜索: [ ]\b\b");</p><p>  scanf("%d",&w);</p><p>  if(w==1) menu();</p><p>  else search();</p><p><b>  }</b></p>

84、<p><b>  4.3.6【程序】</b></p><p>  void printf_back2() //任務(wù)結(jié)束時選擇瀏覽還是返回繼續(xù)排序</p><p><b>  {</b></p><p><b>  int i,n;</b></p><p>&l

85、t;b>  int w;</b></p><p><b>  n=load();</b></p><p>  for(i=0;i<n;i++)</p><p><b>  {</b></p><p>  if(i%10==0)</p><p>  pu

86、ts("\n\n");</p><p>  printf_face();</p><p>  printf_one(i);</p><p><b>  }</b></p><p>  printf("\n\t有%d個記錄\n",n);</p><p>  p

87、rintf("接下來您想?\n\n1).返回主菜單\t\t2).返回排序菜單繼續(xù)排序: [ ]\b\b");</p><p>  scanf("%d",&w);</p><p>  if(w==1) menu();</p><p>  else order();</p><p><b&g

88、t;  }</b></p><p><b>  4.3.7【程序】</b></p><p>  void printf_face() // 顯示數(shù)據(jù)結(jié)構(gòu)函數(shù)</p><p><b>  {</b></p><p>  printf("\n\tNO. name t

89、ype price indate out outdate\n");</p><p><b>  }</b></p><p><b>  4.3.8【程序】</b></p><p>  void printf_one(int i) //顯示一個記錄的函數(shù)</p><p&

90、gt;<b>  {</b></p><p>  printf("%10s%10s%10s%-6.3f%-10s%-8s%-15s",equ[i].num,equ[i].name,equ[i].type,equ[i].price,equ[i].indate,equ[i].out,equ[i].outdate);</p><p><b> 

91、 }</b></p><p><b>  4.3.9【程序】</b></p><p>  int modify_data(int i,int n) //修改單個數(shù)據(jù)函數(shù)</p><p><b>  {</b></p><p><b>  int c,w1;</b>

92、;</p><p><b>  do</b></p><p><b>  {</b></p><p>  puts("修改按照=>\n\n 1).編號2).名稱3).類型4).價格5).購入時間6).是否報廢7).報廢時間\n");</p><p>  scanf(&qu

93、ot;%d",&c);</p><p>  if(c>8||c<1)</p><p>  {puts("\n選擇錯誤喲,重新輸入~");</p><p>  getchar();</p><p><b>  }</b></p><p><b&

94、gt;  }</b></p><p>  while(c>8||c<1);</p><p><b>  do</b></p><p><b>  {</b></p><p><b>  switch(c)</b></p><p>

95、<b>  {</b></p><p>  case 1:printf("編號:");scanf("%s",equ[i].num);break;</p><p>  case 2: printf("名稱:");scanf("%s",equ[i].name);break;</p>

96、;<p>  case 3: printf("類型:");scanf("%",equ[i].type);break; </p><p>  case 4: printf("價格:");scanf("%f",equ[i].price);break; </p><p>

97、  case 5: printf("購入時間:");scanf("%s",equ[i].indate);break; </p><p>  case 6: printf("是否報廢:");scanf("%s",equ[i].out);break;</p><p>  case 7: printf(&qu

98、ot;報廢時間:");scanf("%s",equ[i].outdate);break;</p><p><b>  }</b></p><p>  printf_face();</p><p>  printf_one(i);</p><p>  printf("確定?\n\n\

99、t1).確定 2).不,重新修改 3).退出(不保存) [ ]\b\b");</p><p>  scanf("%d",&w1);</p><p><b>  }</b></p><p>  while(w1==2);</p><p>  return(w1);}</p

100、><p>  5 運行結(jié)果(附圖)</p><p><b>  程序運行結(jié)果:1.</b></p><p><b>  輸入4組數(shù)據(jù):</b></p><p>  編號 名稱 種類 價格 購入日期 是否報廢 報廢日期</p><p>

101、  001 hp micro machine 40000 1999.04.06 n 2013.05.03</p><p>  002 dell printer 3000 2003.12.07 y 2009.12.07</p><p>  004 scanner sharp

102、 20000 2008.03.12 n 2012.01.01</p><p>  003 ibm screen 20000 2010.4.13 n 2015.12.01</p><p>  (其中第3組數(shù)據(jù)中購入日期格式錯誤,第2組名稱和種類位置顛倒)</p><p><b&g

103、t;  2.瀏覽:</b></p><p>  3.發(fā)現(xiàn)其中有錯誤,調(diào)用修改函數(shù)</p><p>  此時已修改所有錯誤,返回主菜單并顯示修改后數(shù)據(jù)如下</p><p>  4.添加第五組數(shù)據(jù):</p><p>  編號 名稱 種類 價格 購入日期 是否報廢 報廢日期</p>

104、<p>  005 asus keyboard 200 2010.06.21 n 2012.01.01</p><p><b>  5搜索:</b></p><p><b>  6.排序:</b></p><p><b>  附錄 本程序代碼&l

105、t;/b></p><p>  #include <stdio.h></p><p>  #include <string.h></p><p>  #include <stdlib.h></p><p>  #define N 100</p><p>  struct equ

106、ipment</p><p><b>  {</b></p><p>  char num[4];</p><p>  char name[20];</p><p>  char type[20];</p><p>  float price;</p><p>  char

107、 indate[15];</p><p>  char out[2];</p><p>  char outdate[15];</p><p><b>  }equ[N];</b></p><p>  void num_order()</p><p><b>  {</b>&

108、lt;/p><p>  void printf_back2();</p><p>  int load();</p><p>  void save(int n);</p><p>  int i,j,k,n;</p><p>  char a[30];</p><p><b>  flo

109、at e;</b></p><p><b>  n=load();</b></p><p>  for (i=0;i<n-1;i++)</p><p><b>  {</b></p><p><b>  k=i;</b></p><p>

110、;  for(j=i+1;j<n;j++)</p><p>  if(strcmp(equ[k].num,equ[j].num)>0)k=j;</p><p><b>  {</b></p><p>  strcpy(a,equ[i].num);strcpy(equ[i].num,equ[k].num);strcpy(equ[k].

111、num,a);</p><p>  strcpy(a,equ[i].name);strcpy(equ[i].name,equ[k].name);strcpy(equ[k].name,a);</p><p>  strcpy(a,equ[i].type);strcpy(equ[i].type,equ[k].type);strcpy(equ[k].type,a);</p><

112、;p>  strcpy(a,equ[i].indate);strcpy(equ[i].indate,equ[k].indate);strcpy(equ[k].indate,a);</p><p>  strcpy(a,equ[i].outdate);strcpy(equ[i].outdate,equ[k].outdate);strcpy(equ[k].outdate,a);</p><p

113、>  strcpy(a,equ[i].out);strcpy(equ[i].out,equ[k].out);strcpy(equ[k].out,a);</p><p>  e=equ[i].price;equ[i].price=equ[k].price;equ[k].price=e;</p><p><b>  }</b></p><p>

114、;<b>  }</b></p><p>  k=0; save(n);</p><p>  printf_back2();</p><p><b>  }</b></p><p>  void type_order()</p><p><b>  {</b&

115、gt;</p><p>  void printf_back2();</p><p>  int load();</p><p>  void save(int n);</p><p>  int i,j,k,n;</p><p>  char a[30];</p><p><b> 

116、 float e;</b></p><p><b>  n=load();</b></p><p>  for (i=0;i<n-1;i++)</p><p><b>  {</b></p><p><b>  k=i;</b></p><

117、p>  for(j=i+1;j<n;j++)</p><p>  if(strcmp(equ[k].type,equ[j].type)>0)k=j;</p><p><b>  {</b></p><p>  strcpy(a,equ[i].num);strcpy(equ[i].num,equ[k].num);strcpy(e

118、qu[k].num,a);</p><p>  strcpy(a,equ[i].name);strcpy(equ[i].name,equ[k].name);strcpy(equ[k].name,a);</p><p>  strcpy(a,equ[i].type);strcpy(equ[i].type,equ[k].type);strcpy(equ[k].type,a);</p>

119、;<p>  strcpy(a,equ[i].indate);strcpy(equ[i].indate,equ[k].indate);strcpy(equ[k].indate,a);</p><p>  strcpy(a,equ[i].outdate);strcpy(equ[i].outdate,equ[k].outdate);strcpy(equ[k].outdate,a);</p>

120、<p>  strcpy(a,equ[i].out);strcpy(equ[i].out,equ[k].out);strcpy(equ[k].out,a);</p><p>  e=equ[i].price;equ[i].price=equ[k].price;equ[k].price=e;</p><p><b>  }</b></p>&l

121、t;p>  }k=0; save(n);</p><p>  printf_back2();</p><p><b>  }</b></p><p>  void name_order()</p><p>  { void printf_back2();</p><p>  int l

122、oad();</p><p>  void save(int n);</p><p>  int i,j,k,n;</p><p>  char a[30];</p><p><b>  float e;</b></p><p><b>  n=load();</b><

123、/p><p>  for (i=0;i<n-1;i++)</p><p><b>  {</b></p><p><b>  k=i;</b></p><p>  for(j=i+1;j<n;j++)</p><p>  if(strcmp(equ[k].name,e

124、qu[j].name)>0)k=j;</p><p><b>  {</b></p><p>  strcpy(a,equ[i].num);strcpy(equ[i].num,equ[k].num);strcpy(equ[k].num,a);</p><p>  strcpy(a,equ[i].name);strcpy(equ[i].na

125、me,equ[k].name);strcpy(equ[k].name,a);</p><p>  strcpy(a,equ[i].type);strcpy(equ[i].type,equ[k].type);strcpy(equ[k].type,a);</p><p>  strcpy(a,equ[i].indate);strcpy(equ[i].indate,equ[k].indate);

126、strcpy(equ[k].indate,a);</p><p>  strcpy(a,equ[i].outdate);strcpy(equ[i].outdate,equ[k].outdate);strcpy(equ[k].outdate,a);</p><p>  strcpy(a,equ[i].out);strcpy(equ[i].out,equ[k].out);strcpy(equ[

127、k].out,a);</p><p>  e=equ[i].price;equ[i].price=equ[k].price;equ[k].price=e;</p><p><b>  }</b></p><p>  }k=0;save(n);</p><p>  printf_back2();</p>&l

128、t;p><b>  }</b></p><p>  void indate_order()</p><p><b>  {</b></p><p>  void printf_back2();</p><p>  int load();</p><p>  void s

129、ave(int n);</p><p>  int i,j,k,n;</p><p>  char a[30];</p><p><b>  float e;</b></p><p><b>  n=load();</b></p><p>  for (i=0;i<n-

130、1;i++)</p><p><b>  {</b></p><p><b>  k=i;</b></p><p>  for(j=i+1;j<n;j++)</p><p>  if(strcmp(equ[k].indate,equ[j].indate)>0)k=j;</p>

131、<p><b>  {</b></p><p>  strcpy(a,equ[i].num);strcpy(equ[i].num,equ[k].num);strcpy(equ[k].num,a);</p><p>  strcpy(a,equ[i].name);strcpy(equ[i].name,equ[k].name);strcpy(equ[k].n

132、ame,a);</p><p>  strcpy(a,equ[i].type);strcpy(equ[i].type,equ[k].type);strcpy(equ[k].type,a);</p><p>  strcpy(a,equ[i].indate);strcpy(equ[i].indate,equ[k].indate);strcpy(equ[k].indate,a);</p&

133、gt;<p>  strcpy(a,equ[i].outdate);strcpy(equ[i].outdate,equ[k].outdate);strcpy(equ[k].outdate,a);</p><p>  strcpy(a,equ[i].out);strcpy(equ[i].out,equ[k].out);strcpy(equ[k].out,a);</p><p>

134、  e=equ[i].price;equ[i].price=equ[k].price;equ[k].price=e;</p><p><b>  }</b></p><p>  }k=0;save(n);</p><p>  printf_back2();}</p><p>  void out_order()</

135、p><p><b>  {</b></p><p>  void printf_back2();</p><p>  int load();</p><p>  void save(int n);</p><p>  int i,j,k,n;</p><p>  char a[

136、30];</p><p><b>  float e;</b></p><p><b>  n=load();</b></p><p>  for (i=0;i<n-1;i++)</p><p><b>  {</b></p><p><b&

137、gt;  k=i;</b></p><p>  for(j=i+1;j<n;j++)</p><p>  if(strcmp(equ[k].out,equ[j].out)>0)k=j;</p><p><b>  {</b></p><p>  strcpy(a,equ[i].num);strcp

138、y(equ[i].num,equ[k].num);strcpy(equ[k].num,a);</p><p>  strcpy(a,equ[i].name);strcpy(equ[i].name,equ[k].name);strcpy(equ[k].name,a);</p><p>  strcpy(a,equ[i].type);strcpy(equ[i].type,equ[k].type

139、);strcpy(equ[k].type,a);</p><p>  strcpy(a,equ[i].indate);strcpy(equ[i].indate,equ[k].indate);strcpy(equ[k].indate,a);</p><p>  strcpy(a,equ[i].outdate);strcpy(equ[i].outdate,equ[k].outdate);str

140、cpy(equ[k].outdate,a);</p><p>  strcpy(a,equ[i].out);strcpy(equ[i].out,equ[k].out);strcpy(equ[k].out,a);</p><p>  e=equ[i].price;equ[i].price=equ[k].price;equ[k].price=e;</p><p><

141、;b>  }</b></p><p>  }k=0;save(n);</p><p>  printf_back2();</p><p><b>  }</b></p><p>  void outdate_order()</p><p><b>  {</b&g

142、t;</p><p>  void printf_back2();</p><p>  int load();</p><p>  void save(int n);</p><p>  int i,j,k,n;</p><p>  char a[30];</p><p><b>  

143、float e;</b></p><p><b>  n=load();</b></p><p>  for (i=0;i<n-1;i++)</p><p><b>  {</b></p><p><b>  k=i;</b></p><p

144、>  for(j=i+1;j<n;j++)</p><p>  if(strcmp(equ[k].outdate,equ[j].outdate)>0)k=j;</p><p><b>  {</b></p><p>  strcpy(a,equ[i].num);strcpy(equ[i].num,equ[k].num);str

145、cpy(equ[k].num,a);</p><p>  strcpy(a,equ[i].name);strcpy(equ[i].name,equ[k].name);strcpy(equ[k].name,a);</p><p>  strcpy(a,equ[i].type);strcpy(equ[i].type,equ[k].type);strcpy(equ[k].type,a);<

溫馨提示

  • 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

提交評論