操作系統(tǒng)課程設(shè)計(jì)--銀行家算法_第1頁(yè)
已閱讀1頁(yè),還剩32頁(yè)未讀 繼續(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>  目 錄</b></p><p>  第一章 功能需求描述2</p><p>  1.1功能列表與說明2</p><p>  1.2操作界面和操作方法2</p><p>  第二章 設(shè)計(jì)描述3</p><p>  2.1任務(wù)分解說明3</p>

2、;<p>  2.2主要數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)說明3</p><p>  2.3主要函數(shù)接口設(shè)計(jì)說明3</p><p>  第三章 算法描述5</p><p>  第四章 開發(fā)過程描述14</p><p>  4.1程序代碼14</p><p>  4.2設(shè)計(jì)中的問題和解決方法23</p

3、><p>  4.3測(cè)試用例和測(cè)試方法24</p><p>  第五章 設(shè)計(jì)心得體會(huì)32</p><p>  計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院</p><p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  第一章 功能需求描述</p><p>  1.1功能列表與說明<

4、;/p><p>  添加進(jìn)程:規(guī)定現(xiàn)在操作系統(tǒng)中運(yùn)行的進(jìn)程數(shù)。</p><p>  添加資源:規(guī)定當(dāng)前需要資源的種類數(shù)和各種類資源的數(shù)目。</p><p>  分配資源:給各進(jìn)程分配資源。</p><p>  安全性檢查:檢查資源分配后是否會(huì)發(fā)生死鎖,若發(fā)生則不這樣進(jìn)行分配。</p><p>  資源釋放:當(dāng)一個(gè)進(jìn)程結(jié)束后

5、釋放其所占有的各類資源。</p><p>  得到安全序列:當(dāng)資源分配能夠保證各進(jìn)程順利結(jié)束,則得到進(jìn)程的安全序列。</p><p>  刪除資源:即取消某資源</p><p>  1.2操作界面和操作方法</p><p>  *************銀行家算法演示****************</p><p> 

6、 請(qǐng)首先輸入系統(tǒng)可供資源種類的數(shù)量:</p><p><b>  資源*的名稱:</b></p><p><b>  資源的數(shù)量:</b></p><p><b>  請(qǐng)輸入作業(yè)的數(shù)量:</b></p><p>  請(qǐng)輸入各進(jìn)程的最大需求量:</p><p&

7、gt;  請(qǐng)輸入各進(jìn)程已經(jīng)申請(qǐng)的資源量:</p><p><b>  系統(tǒng)目前可用資源:</b></p><p><b>  系統(tǒng)是否安全?</b></p><p><b>  分配的序列:</b></p><p>  ********銀行家算法演示***********<

8、;/p><p><b>  1:增加資源</b></p><p><b>  2:刪除資源</b></p><p><b>  3:修改資源</b></p><p><b>  4:分配資源</b></p><p><b> 

9、 5:增加作業(yè)</b></p><p><b>  0:離開</b></p><p>  在如上的操作界面中分別按照提示進(jìn)行輸入,按回車鍵表示當(dāng)前輸入完畢,然后進(jìn)行下個(gè)步驟的輸入或者得到最終結(jié)果。</p><p><b>  第二章 設(shè)計(jì)描述</b></p><p><b>

10、  2.1任務(wù)分解說明</b></p><p>  銀行家算法的實(shí)現(xiàn)過程主要分為以下幾個(gè)部分:為實(shí)現(xiàn)銀行家算法,系統(tǒng)中必須設(shè)置若干數(shù)據(jù)結(jié)構(gòu)。其中有allocation,記錄已經(jīng)分配的系統(tǒng)資源;max,記錄每個(gè)進(jìn)程的資源最大需求;available,記錄剩余資源;need用來記錄現(xiàn)在每個(gè)進(jìn)程需要多少資源,need=max-allocation;request 請(qǐng)求資源;temp,記錄路徑,即輸出的順序;

11、finish,用來實(shí)現(xiàn)循環(huán),以判斷是否安全,這也就是安全性檢查。</p><p>  2.2主要數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)說明</p><p>  #define False 0</p><p>  #define True 1</p><p>  int Max[100][100]={0};//各進(jìn)程所需各類資源的最大需求</p><

12、p>  int Avaliable[100]={0};//系統(tǒng)可用資源</p><p>  char name[100]={0};//資源的名稱</p><p>  int Allocation[100][100]={0};//系統(tǒng)已分配資源</p><p>  int Need[100][100]={0};//還需要資源</p><p&g

13、t;  int Request[100]={0};//請(qǐng)求資源向量</p><p>  int temp[100]={0};//存放安全序列</p><p>  int Work[100]={0};//存放系統(tǒng)可提供資源</p><p>  int M=100;//作業(yè)的最大數(shù)為100</p><p>  int N=100;//資源的最大數(shù)

14、為100</p><p>  void showdata()//顯示資源矩陣</p><p>  采用了二維數(shù)組來創(chuàng)建的數(shù)據(jù)結(jié)構(gòu)。</p><p>  2.3主要函數(shù)接口設(shè)計(jì)說明</p><p>  (1)void showdata() 顯示資源矩陣</p><p> ?。?)int changdata(int i

15、) 進(jìn)行資源分配</p><p> ?。?)int safe() 安全性算法</p><p> ?。?)void share() 利用銀行家算法對(duì)申請(qǐng)資源對(duì)進(jìn)行判定</p><p> ?。?)void addresources() 添加資源</p><p>  (6)void delresources() 刪除資源</p>

16、;<p>  (7)void changeresources() 修改資源函數(shù)</p><p> ?。?)void addprocess() 添加作業(yè)</p><p>  第三章 算法描述</p><p><b>  主函數(shù)流程圖</b></p><p>  圖3-1 主函數(shù)流程圖</p

17、><p>  顯示資源矩陣showdata函數(shù)流程圖</p><p>  圖3-2 showdata函數(shù)流程圖</p><p>  資源分配changedata函數(shù)流程圖</p><p>  圖3-3 changedata函數(shù)流程圖</p><p>  安全性檢查safe函數(shù)流程圖</p>

18、<p>  圖3-4 safe函數(shù)流程圖</p><p>  利用銀行家算法對(duì)進(jìn)程申請(qǐng)資源進(jìn)行判定share函數(shù)流程圖</p><p>  圖3-5 share函數(shù)流程圖</p><p>  添加資源的addresources函數(shù)流程圖</p><p>  圖3-6 addresources函數(shù)流程圖</p&

19、gt;<p>  刪除資源delresources函數(shù)流程圖</p><p>  圖3-7 delresources函數(shù)流程圖</p><p>  修改資源changeresources函數(shù)流程圖</p><p>  圖3-8 changeresources函數(shù)流程圖</p><p>  添加進(jìn)程作業(yè)addproce

20、ss函數(shù)流程圖</p><p>  圖3-9 addprocess函數(shù)流程圖</p><p>  第四章 開發(fā)過程描述</p><p><b>  4.1程序代碼</b></p><p>  #include<iostream.h></p><p>  #include<s

21、tring.h></p><p>  #include<stdio.h></p><p>  #define False 0</p><p>  #define True 1</p><p>  int Max[100][100]={0};//各進(jìn)程所需各類資源的最大需求</p><p>  int

22、Avaliable[100]={0};//系統(tǒng)可用資源</p><p>  char name[100]={0};//資源的名稱</p><p>  int Allocation[100][100]={0};//系統(tǒng)已分配資源</p><p>  int Need[100][100]={0};//還需要資源</p><p>  int Req

23、uest[100]={0};//請(qǐng)求資源向量</p><p>  int temp[100]={0};//存放安全序列</p><p>  int Work[100]={0};//存放系統(tǒng)可提供資源</p><p>  int M=100;//作業(yè)的最大數(shù)為100</p><p>  int N=100;//資源的最大數(shù)為100</p&

24、gt;<p>  void showdata()//顯示資源矩陣</p><p><b>  {</b></p><p><b>  int i,j;</b></p><p>  cout<<"系統(tǒng)目前可用的資源[Avaliable]:"<<endl;</p&

25、gt;<p>  for(i=0;i<N;i++)</p><p>  cout<<name[i]<<" ";</p><p>  cout<<endl;</p><p>  for (j=0;j<N;j++)</p><p>  cout<<Ava

26、liable[j]<<" ";//輸出分配資源</p><p>  cout<<endl;</p><p>  cout<<" Max Allocation Need"<<endl;</p><p>  cout<<"

27、;進(jìn)程名 ";</p><p>  for(j=0;j<3;j++){</p><p>  for(i=0;i<N;i++)</p><p>  cout<<name[i]<<" ";</p><p>  cout<<" ";

28、</p><p><b>  }</b></p><p>  cout<<endl;</p><p>  for(i=0;i<M;i++){</p><p>  cout<<" "<<i<<" ";</p&

29、gt;<p>  for(j=0;j<N;j++)</p><p>  cout<<Max[i][j]<<" ";</p><p>  cout<<" ";</p><p>  for(j=0;j<N;j++)</p><p>  

30、cout<<Allocation[i][j]<<" ";</p><p>  cout<<" ";</p><p>  for(j=0;j<N;j++)</p><p>  cout<<Need[i][j]<<" ";</p&

31、gt;<p>  cout<<endl;</p><p><b>  }</b></p><p><b>  }</b></p><p>  int changdata(int i)//進(jìn)行資源分配</p><p><b>  { </b></p

32、><p><b>  int j;</b></p><p>  for (j=0;j<M;j++) {</p><p>  Avaliable[j]=Avaliable[j]-Request[j];</p><p>  Allocation[i][j]=Allocation[i][j]+Request[j];</

33、p><p>  Need[i][j]=Need[i][j]-Request[j];</p><p><b>  }</b></p><p><b>  return 1;</b></p><p><b>  }</b></p><p>  int safe(

34、)//安全性算法</p><p><b>  {</b></p><p>  int i,k=0,m,apply,Finish[100]={0};</p><p><b>  int j;</b></p><p>  int flag=0;</p><p>  Work[0]

35、=Avaliable[0];</p><p>  Work[1]=Avaliable[1];</p><p>  Work[2]=Avaliable[2];</p><p>  for(i=0;i<M;i++){ </p><p><b>  apply=0;</b></p><p>  f

36、or(j=0;j<N;j++){</p><p>  if (Finish[i]==False&&Need[i][j]<=Work[j]){ </p><p><b>  apply++;</b></p><p>  if(apply==N){</p><p>  for(m=0;m<

37、;N;m++)</p><p>  Work[m]=Work[m]+Allocation[i][m];//變分配數(shù)</p><p>  Finish[i]=True;</p><p>  temp[k]=i;</p><p><b>  i=-1; </b></p><p><b>  

38、k++;</b></p><p><b>  flag++;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b&g

39、t;  }</b></p><p>  for(i=0;i<M;i++){</p><p>  if(Finish[i]==False){</p><p>  cout<<"系統(tǒng)不安全"<<endl;//不成功系統(tǒng)不安全</p><p>  return -1;</p>

40、<p><b>  }</b></p><p><b>  }</b></p><p>  cout<<"系統(tǒng)是安全的!"<<endl;//如果安全,輸出成功</p><p>  cout<<"分配的序列:";</p>

41、<p>  for(i=0;i<M;i++){//輸出運(yùn)行進(jìn)程數(shù)組</p><p>  cout<<temp[i];</p><p>  if(i<M-1) cout<<"->";</p><p><b>  }</b></p><p>  cout

42、<<endl;</p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  void share()//利用銀行家算法對(duì)申請(qǐng)資源對(duì)進(jìn)行判定</p><p><b>  {</b></p><

43、p><b>  char ch;</b></p><p>  int i=0,j=0;</p><p><b>  ch='y';</b></p><p>  cout<<"請(qǐng)輸入要求分配的資源進(jìn)程號(hào)(0-"<<M-1<<"):&quo

44、t;; </p><p>  cin>>i;//輸入須申請(qǐng)的資源號(hào)</p><p>  cout<<"請(qǐng)輸入進(jìn)程 "<<i<<" 申請(qǐng)的資源:"<<endl;</p><p>  for(j=0;j<N;j++)</p><p><

45、b>  {</b></p><p>  cout<<name[j]<<":";</p><p>  cin>>Request[j];//輸入需要申請(qǐng)的資源</p><p><b>  }</b></p><p>  for (j=0;j<N;

46、j++){</p><p>  if(Request[j]>Need[i][j])//判斷申請(qǐng)是否大于需求,若大于則出錯(cuò)</p><p><b>  { </b></p><p>  cout<<"進(jìn)程 "<<i<<"申請(qǐng)的資源大于它需要的資源";</p&g

47、t;<p>  cout<<" 分配不合理,不予分配!"<<endl;</p><p><b>  ch='n';</b></p><p><b>  break;</b></p><p><b>  }</b></p&g

48、t;<p><b>  else {</b></p><p>  if(Request[j]>Avaliable[j])//判斷申請(qǐng)是否大于當(dāng)前資源,若大于則</p><p>  { //出錯(cuò)</p><p>  cout<<"進(jìn)程"<&l

49、t;i<<"申請(qǐng)的資源大于系統(tǒng)現(xiàn)在可利用的資源";</p><p>  cout<<" 分配出錯(cuò),不予分配!"<<endl;</p><p><b>  ch='n';</b></p><p><b>  break;</b><

50、;/p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(ch=='y') {</p><p>  changdata(i);//根據(jù)進(jìn)程需求量變換資源&

51、lt;/p><p>  showdata();//根據(jù)進(jìn)程需求量顯示變換后的資源</p><p>  safe();//根據(jù)進(jìn)程需求量進(jìn)行銀行家算法判斷</p><p><b>  }</b></p><p><b>  }</b></p><p>  void addresou

52、rces(){//添加資源</p><p>  int n,flag;</p><p>  cout<<"請(qǐng)輸入需要添加資源種類的數(shù)量:";</p><p><b>  cin>>n;</b></p><p><b>  flag=N;</b></p

53、><p><b>  N=N+n;</b></p><p>  for(int i=0;i<n;i++){</p><p>  cout<<"名稱:";</p><p>  cin>>name[flag];</p><p>  cout<<

54、"數(shù)量:";</p><p>  cin>>Avaliable[flag++];</p><p><b>  }</b></p><p>  showdata();</p><p><b>  safe();</b></p><p><b

55、>  }</b></p><p>  void delresources(){//刪除資源</p><p>  char ming;</p><p>  int i,flag=1;</p><p>  cout<<"請(qǐng)輸入需要?jiǎng)h除的資源名稱:";</p><p><

56、;b>  do{</b></p><p>  cin>>ming;</p><p>  for(i=0;i<N;i++)</p><p>  if(ming==name[i]){</p><p><b>  flag=0;</b></p><p><b&g

57、t;  break;</b></p><p><b>  }</b></p><p><b>  if(i==N)</b></p><p>  cout<<"該資源名稱不存在,請(qǐng)重新輸入:";</p><p><b>  }</b>&

58、lt;/p><p>  while(flag);</p><p>  for(int j=i;j<N-1;j++)</p><p><b>  {</b></p><p>  name[j]=name[j+1];</p><p>  Avaliable[j]=Avaliable[j+1];<

59、;/p><p><b>  }</b></p><p><b>  N=N-1;</b></p><p>  showdata();</p><p><b>  safe();</b></p><p><b>  }</b></p

60、><p>  void changeresources(){//修改資源函數(shù)</p><p>  cout<<"系統(tǒng)目前可用的資源[Avaliable]:"<<endl;</p><p>  for(int i=0;i<N;i++)</p><p>  cout<<name[i]<

61、;<":"<<Avaliable[i]<<endl;</p><p>  cout<<"輸入系統(tǒng)可用資源[Avaliable]:"<<endl;</p><p>  cin>>Avaliable[0]>>Avaliable[1]>>Avaliable[2];&l

62、t;/p><p>  cout<<"經(jīng)修改后的系統(tǒng)可用資源為"<<endl;</p><p>  for (int k=0;k<N;k++)</p><p>  cout<<name[k]<<":"<<Avaliable[k]<<endl;</p&

63、gt;<p>  showdata();</p><p><b>  safe();</b></p><p><b>  }</b></p><p>  void addprocess(){//添加作業(yè)</p><p>  int flag=M;</p><p>

64、;<b>  M=M+1;</b></p><p>  cout<<"請(qǐng)輸入該作業(yè)的最打需求量[Max]"<<endl;</p><p>  for(int i=0;i<N;i++){</p><p>  cout<<name[i]<<":";<

65、/p><p>  cin>>Max[flag][i];</p><p>  Need[flag][i]=Max[flag][i]-Allocation[flag][i];</p><p><b>  }</b></p><p>  showdata();</p><p><b>

66、  safe();</b></p><p><b>  }</b></p><p>  int main()//主函數(shù)</p><p><b>  {</b></p><p>  int i,j,number,choice,m,n,flag;</p><p>  

67、char ming;</p><p>  cout<<"*****************銀行家算法的實(shí)現(xiàn)*****************"<<endl;</p><p>  cout<<"請(qǐng)首先輸入系統(tǒng)可供資源種類的數(shù)量:";</p><p><b>  cin>>

68、n;</b></p><p><b>  N=n;</b></p><p>  for(i=0;i<n;i++)</p><p><b>  {</b></p><p>  cout<<"資源"<<i+1<<"的名稱

69、:";</p><p>  cin>>ming;</p><p>  name[i]=ming;</p><p>  cout<<"資源的數(shù)量:";</p><p>  cin>>number;</p><p>  Avaliable[i]=number

70、;</p><p><b>  }</b></p><p>  cout<<endl;</p><p>  cout<<"請(qǐng)輸入作業(yè)的數(shù)量:";</p><p><b>  cin>>m;</b></p><p><

71、;b>  M=m;</b></p><p>  cout<<"請(qǐng)輸入各進(jìn)程的最大需求量("<<m<<"*"<<n<<"矩陣)[Max]:"<<endl;</p><p>  for(i=0;i<m;i++)</p><

72、;p>  for(j=0;j<n;j++)</p><p>  cin>>Max[i][j];</p><p><b>  do{</b></p><p><b>  flag=0;</b></p><p>  cout<<"請(qǐng)輸入各進(jìn)程已經(jīng)申請(qǐng)的資源量

73、("<<m<<"*"<<n<<"矩陣)[Allocation]:"<<endl;</p><p>  for(i=0;i<m;i++)</p><p>  for(j=0;j<n;j++){</p><p>  cin>>Alloca

74、tion[i][j];</p><p>  if(Allocation[i][j]>Max[i][j])</p><p><b>  flag=1;</b></p><p>  Need[i][j]=Max[i][j]-Allocation[i][j];</p><p><b>  }</b>

75、</p><p><b>  if(flag)</b></p><p>  cout<<"申請(qǐng)的資源大于最大需求量,請(qǐng)重新輸入!\n";</p><p><b>  }</b></p><p>  while(flag);</p><p>  

76、showdata();//顯示各種資源</p><p>  safe();//用銀行家算法判定系統(tǒng)是否安全</p><p>  while(choice)</p><p><b>  {</b></p><p>  cout<<"**************銀行家算法演示**************

77、*"<<endl;</p><p>  cout<<" 1:增加資源 "<<endl;</p><p>  cout<<" 2:刪除資源 "<<endl;</p><p>  cout<

78、;<" 3:修改資源 "<<endl;</p><p>  cout<<" 4:分配資源 "<<endl;</p><p>  cout<<" 5:增加作業(yè) "<<

79、endl;</p><p>  cout<<" 0:離開 "<<endl;</p><p>  cout<<"*******************************************"<<endl;</p><p>  co

80、ut<<"請(qǐng)選擇功能號(hào):";</p><p>  cin>>choice;</p><p>  switch(choice)</p><p><b>  {</b></p><p>  case 1: addresources();break;</p><p

81、>  case 2: delresources();break;</p><p>  case 3: changeresources();break;</p><p>  case 4: share();break;</p><p>  case 5: addprocess();break;</p><p>  case 0: choi

82、ce=0;break;</p><p>  default: cout<<"請(qǐng)正確選擇功能號(hào)(0-5)!"<<endl;break;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  re

83、turn 1;</b></p><p><b>  }</b></p><p>  4.2設(shè)計(jì)中的問題和解決方法</p><p>  在測(cè)試時(shí),出現(xiàn)了很多漏掉標(biāo)點(diǎn)符號(hào)的錯(cuò)誤,比較典型的一個(gè)就是在中文輸入法下輸入了標(biāo)點(diǎn)符號(hào),導(dǎo)致出錯(cuò)。同時(shí)在main函數(shù)中應(yīng)該有一個(gè)int類型的返回值,忽略了這個(gè)細(xì)節(jié)導(dǎo)致了產(chǎn)生了警告。</p>

84、<p>  圖4-1 編譯出錯(cuò)圖</p><p>  修改了這些錯(cuò)誤之后,進(jìn)行編譯,顯示編譯正確,如圖</p><p>  圖4-2 修改后調(diào)試成功圖</p><p>  4.3測(cè)試用例和測(cè)試方法</p><p>  測(cè)試方法即為輸入多個(gè)實(shí)例,進(jìn)行測(cè)試,測(cè)試數(shù)據(jù)在此只列出一個(gè),如圖所示。</p><p

85、>  T0 時(shí)刻的資源分配表(各種資源的數(shù)量分別為:10、5、7)</p><p>  表4-1 輸入實(shí)例表</p><p>  圖4-3 測(cè)試程序圖 1</p><p>  圖 4-4 測(cè)試程序圖 2</p><p>  圖 4 -5 測(cè)試程序圖 3</p><p>  圖 4 - 6 測(cè)試程

86、序圖 4</p><p>  圖4 - 7 測(cè)試程序圖 5</p><p>  圖 4 - 8 測(cè)試程序圖 6</p><p>  圖 4 - 9 測(cè)試程序圖 7</p><p><b>  設(shè)計(jì)心得體會(huì)</b></p><p>  “課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí)、發(fā)現(xiàn)、提出、分析和解決實(shí)際

87、問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程?!?在這次課程設(shè)計(jì)的過程中,我深深地體會(huì)到了理論與實(shí)踐結(jié)合的過程,當(dāng)實(shí)踐成功時(shí)的成就感,從整個(gè)過程中我受益匪淺。</p><p>  從確定了題目,一直到完成整個(gè)大作業(yè),我學(xué)到很多的東西。不僅可以鞏固了以前所學(xué)過的知識(shí),并且發(fā)掘了很多在已有的書本上所沒有的知識(shí),給我?guī)砹藰O大的收獲。</p><p>  對(duì)銀行家算法有

88、了更深入的理解,銀行家算法是避免死鎖的一種重要方法,通過編寫一個(gè)簡(jiǎn)單的銀行家算法程序,加深了解有關(guān)資源申請(qǐng)、避免死鎖等概念,并體會(huì)和了解死鎖和避免死鎖的具體實(shí)施方法。死鎖的產(chǎn)生,必須同時(shí)滿足四個(gè)條件,即一個(gè)資源每次只能由一個(gè)進(jìn)程;第二個(gè)為等待條件,即一個(gè)進(jìn)程請(qǐng)求資源不能滿足時(shí),它必須等待,但它仍繼續(xù)保持已得到的所有其他資源;第三個(gè)為非剝奪條件,即在出現(xiàn)死鎖的系統(tǒng)中一定有不可剝奪使用的資源;第四個(gè)為循環(huán)等待條件,系統(tǒng)中存在若干個(gè)循環(huán)等待的

89、進(jìn)程,即其中每一個(gè)進(jìn)程分別等待它前一個(gè)進(jìn)程所持有的資源。防止死鎖的機(jī)構(gòu)只能確保上述四個(gè)條件之一不出現(xiàn),則系統(tǒng)就不會(huì)發(fā)生死鎖。</p><p>  至今我感慨頗多的應(yīng)當(dāng)是一些難以查出的錯(cuò)誤,編譯時(shí)查不出的錯(cuò)誤,其被發(fā)現(xiàn)時(shí)很可能只是位置的錯(cuò)誤,僅隔數(shù)行,這些微小的信息卻極大地影響了整體的效果。這不僅存在于一個(gè)程序之中,因而我對(duì)于生活中的細(xì)節(jié)也有了改觀,對(duì)于整體和局部的觀念也有了更多的見解。</p>&l

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(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)論