課程設計--字符串類_第1頁
已閱讀1頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  信息科學與技術學院</b></p><p>  程序設計基礎課程設計報告</p><p>  題目名稱: 字符串類 </p><p>  學生姓名: 張 果 </p><p>  學 號:

2、 2011508023 </p><p>  專業(yè)班級: 計算機科學與技術2011(1)班 </p><p>  指導教師: 高 攀 </p><p>  完成日期:2012-7-2</p><p><b>  目錄</b

3、></p><p>  1.課程設計目的2</p><p>  2課程設計題目描述和要求3</p><p><b>  2.1課程題目3</b></p><p><b>  2.2課程要求3</b></p><p><b>  2.3流程圖3<

4、/b></p><p>  圖2-3 物理模型圖3</p><p><b>  3.詳細設計4</b></p><p><b>  3.1數(shù)據(jù)類型4</b></p><p>  3.2主要模塊設計4</p><p>  3.2.1字符串比較4</p>

5、;<p>  3.2.2字符串連接:6</p><p>  3.3控制面板的設置7</p><p><b>  4運行結果9</b></p><p>  5. 課程設計總結10</p><p>  6.參考書目:11</p><p><b>  1.課程設計目的&

6、lt;/b></p><p>  《C++程序設計》是計算機科學與技術專業(yè)的必修課。自己做一個課程設計是學習完本書后進行的一次全面的綜合性練習。其目的在于加深對C++編程的理解,培養(yǎng)學生的實踐能力,促進理論與實踐的結合。通過課程設計,讓學生能夠熟練運用C++進行面向對象編程,建立對象模型,降低軟件的復雜性,改善軟件的重用性和維護性,提高軟件的生產效率,全面掌握面向對象編程技術。</p><

7、;p>  通過課程設計了解自己通過一學年的學習C++這門課到底學的怎么樣,驗證自己的學習成果,并進一步發(fā)現(xiàn)自己的不足并且改正.</p><p>  2課程設計題目描述和要求</p><p><b>  2.1課程題目 </b></p><p><b>  字符串類(數(shù)組型)</b></p><p

8、><b>  2.2課程要求</b></p><p>  計算字符串的長度,初始化字符串,字符串比較,查找子串(從頭開始或者從尾開始),字符串連接等基本功能。</p><p><b>  2.3流程圖</b></p><p>  圖2-3 物理模型圖</p><p><b>  3.

9、詳細設計</b></p><p><b>  3.1數(shù)據(jù)類型</b></p><p>  為設計的字符串(數(shù)組型)定義類:</p><p>  class Cstring</p><p><b>  {</b></p><p><b>  public:

10、</b></p><p>  Cstring();</p><p>  Cstring(char *s); </p><p>  void setValue(char *s); </p><p>  void setValue(string s); </p><p>  void setValue(Cstr

11、ing s); </p><p>  int getLength();</p><p>  int strComp( Cstring s);</p><p>  int subSearch(Cstring substr);</p><p>  int strCon( Cstring s);</p><p>  stri

12、ng getValue(){return str;}</p><p><b>  private:</b></p><p>  string str;</p><p>  int length;</p><p><b>  };</b></p><p>  為字符串類功能的實

13、現(xiàn)定義的構造函數(shù)、成員函數(shù)和變量。</p><p><b>  3.2主要模塊設計</b></p><p>  3.2.1字符串比較</p><p><b>  代碼:</b></p><p>  int Cstring::strComp( Cstring s)</p><p&g

14、t;<b>  { </b></p><p><b>  int i=0;</b></p><p>  while(str[i]==(s.getValue())[i] && i<length && i<s.getLength())</p><p><b>  i++;

15、 </b></p><p>  if(str[i]>s.getValue()[i])</p><p>  return 1; </p><p>  else if(str[i]<s.getValue()[i]) </p><p>  return -1; </p><p>  else retu

16、rn 0;</p><p><b>  }</b></p><p>  圖3-2-1 字符串的大小比較流程圖</p><p>  3.2.2字符串連接:</p><p><b>  代碼:</b></p><p>  int Cstring::strCon(Cstring s

17、)</p><p><b>  { </b></p><p>  length=length+s.getLength();</p><p>  char *pstr=str;</p><p>  str=new char[length+1];</p><p>  cout<<pstr

18、<<endl; </p><p>  strcpy(str,pstr); </p><p>  strcat(str,s.getValue()); </p><p>  delete pstr;</p><p>  str[length]=’\0’;</p><p>  return length;<

19、;/p><p><b>  }</b></p><p>  圖3-2-2字符串連接流程圖</p><p>  3.3控制面板的設置</p><p>  void state()</p><p><b>  { </b></p><p>  cout&l

20、t;<”**********字符串功能測試**********”<<endl</p><p>  <<” 0. 提示 “<<endl</p><p>  <<” 1. 初始化 “<<endl</p><p>  <<” 2. 計算長度 “<<endl</p>

21、<p>  <<” 3. 字符串比較 “<<endl</p><p>  <<” 4. 查找子串 “<<endl</p><p>  <<” 5. 字符串連接 “<<endl</p><p>  <<” 6. 退出”<<endl</p>

22、<p>  <<”**********************************”<<endl <<endl;</p><p><b>  }</b></p><p>  在控制面板中對各個功能簡單的數(shù)字輸入實現(xiàn)各功能的連接。 </p><p>  void Cstring::setValue

23、(char *s)</p><p><b>  { </b></p><p><b>  str=s;</b></p><p><b>  length=0;</b></p><p>  while(*(s++)!=’\0’)</p><p><

24、b>  {</b></p><p><b>  length++;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void Cstring::setValue(string s)</p>

25、<p><b>  { </b></p><p><b>  str=s;</b></p><p><b>  length=0;</b></p><p>  while(s[length++]!=’\0’);</p><p><b>  length

26、--;</b></p><p><b>  }</b></p><p>  void Cstring::setValue(Cstring s)</p><p><b>  { </b></p><p>  str=s.getValue();</p><p>  

27、length=s.getLength(); </p><p>  對Cstring類員函數(shù)進行定義實現(xiàn)對字符串的設置功能.</p><p><b>  4運行結果</b></p><p><b>  5. 課程設計總結</b></p><p>  在這個課程設計中,我知道了自己的很多不足之處,想把這

28、門課學好不是一朝一夕的事情,而是要長期的堅持學習。</p><p>  通過一年的學習,我已經(jīng)掌握了部分編程知識,并且自己可以編出一些小程序,但是這樣卻是不夠的,通過這次課程設計,我了解到自己在C++編程方面到底存在哪些不足,在比較大的程序方面,自己根本不知道從何入手,在做這個課程設計期間,我請教了我們班學編程比較好的同學,通過他們的幫助我把程序編完,程序的調試過程中出現(xiàn)了很多錯誤,有許多低級錯誤,我想這是因為我

29、平時編程很少的原因,有一些我實在找不出來的錯誤就讓同學指導一下,很快我自己編的程序就能運行了,我的程序滿足了課程設計的要求。</p><p>  通過這次課程設計我懂得了很多很多,對于學習編程,一定要經(jīng)常的練習,否則任你書本上的理論知識再好在編程的時候都是不行的,掌握不夠熟練,程序一大就不知道怎么辦了,所以我在以后的日子里一定要多多進行一些C++方面的比較大的程序的設計,鍛煉自己。</p><

30、p><b>  6.參考書目:</b></p><p>  [ 1 ] 譚浩強,《C++程序設計》,北京,清華大學出版社,2006年</p><p>  [ 2 ] 錢能,《C++程序設計實驗指導》,北京,清華大學出版社,2003年</p><p>  [ 3 ] 孫一平 王慶寶,《C++程序設計學習輔導》,北京,清華大學出版社,2

溫馨提示

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

評論

0/150

提交評論