學(xué)生信息管理系統(tǒng) 課程設(shè)計(jì)_第1頁
已閱讀1頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  信息科學(xué)與技術(shù)學(xué)院</b></p><p>  程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)報(bào)告</p><p>  題目名稱: 學(xué)生信息管理系統(tǒng) </p><p>  學(xué)生姓名: </p><p>  學(xué) 號(hào): &

2、lt;/p><p>  專業(yè)班級(jí): 計(jì)科11級(jí)二班 </p><p>  指導(dǎo)教師: </p><p>  2012年 7 月 4 日</p><p>  1 課程設(shè)計(jì)題目與要求</p><p><b>  1.1設(shè)計(jì)題目</b></p&g

3、t;<p><b>  行編輯器</b></p><p><b>  1.2設(shè)計(jì)要求</b></p><p>  1.問題描述(功能要求):</p><p>  設(shè)置一個(gè)簡單的行編輯器,每行以回車結(jié)束。</p><p>  數(shù)據(jù)以文件的形式儲(chǔ)存。</p><p>

4、;  編輯器具有查找、替換、修改的功能。</p><p><b>  問題的解決方案:</b></p><p>  根據(jù)系統(tǒng)的功能要求,可以將問題解決分一下步驟:</p><p>  分析系統(tǒng)中的各個(gè)實(shí)體之間的關(guān)系及其屬性和行為;</p><p>  根據(jù)問題描述,實(shí)現(xiàn)系統(tǒng)的類層次;</p><p&g

5、t;  完成類層次中的各個(gè)類的描述(包括屬性和方法);</p><p>  完成類中的各個(gè)成員函數(shù)的定義;</p><p>  完成系統(tǒng)中的應(yīng)用模塊;</p><p><b>  功能調(diào)試;</b></p><p>  完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書;</p><p><b>  其

6、他要求:</b></p><p>  只能使用c/c++語言,源程序要有合適的注釋,使用程序容易閱讀。</p><p>  至少采用文本菜單界面(如果能使用圖形菜單更好)。</p><p>  學(xué)生可以增加新的功能。</p><p><b>  2總體設(shè)計(jì)</b></p><p>&l

7、t;b>  3 詳細(xì)設(shè)計(jì)</b></p><p><b>  3.1主模塊設(shè)計(jì)</b></p><p>  行編輯器:主要是利用vector(動(dòng)態(tài)數(shù)組)、指針,來實(shí)現(xiàn)對(duì)文檔的儲(chǔ)存、統(tǒng)計(jì)、刪除等功能。</p><p><b>  總體結(jié)構(gòu)流程圖</b></p><p><b&g

8、t;  3</b></p><p>  1 2</p><p>  Esc Esc</p><p>  1 2 3

9、4 5</p><p>  全部按3結(jié)束 </p><p><b>  返回主界面</b></p><p><b>  3.2功能設(shè)計(jì)</b&

10、gt;</p><p><b>  字符串的編輯</b></p><p>  字符串的編輯,是利用動(dòng)態(tài)數(shù)組vector進(jìn)行對(duì)字符的儲(chǔ)存,vector不僅是一個(gè)動(dòng)態(tài)數(shù)組,還帶有指針。一開始可以不定義他的大小,根據(jù)用戶的需要輸入。代碼如下:</p><p>  cout << endl;</p><p>  co

11、ut << " " << "請(qǐng)輸入文本(按Esc鍵切換到統(tǒng)計(jì)模式):" << endl;</p><p>  for( int i = 0; i < txt.size(); ++i ) </p><p><b>  {</b></p>

12、<p>  if( txt[ i ] == 13 ) </p><p>  cout << endl; 鍵盤輸入</p><p><b>  else</b></p><p>  cout << txt[ i ];

13、 </p><p><b>  }</b></p><p>  char c; </p><p>  while( c = getch(),

14、 c != 27 ) if c=27 if c!=27&&c!=13</p><p><b>  {</b></p><p>  if( c == 13 )</p><p>  cout << endl;</p><p><b>  els

15、e </b></p><p>  cout << c;</p><p>  txt.push_back( c );</p><p><b>  統(tǒng)計(jì)文本</b></p><p>  是根據(jù)輸入的文檔的ASSII來判斷分類的,其中能對(duì)英文(分大小寫)、數(shù)字、空格、單詞。進(jìn)行統(tǒng)計(jì)。代碼如下:</

16、p><p>  void count_all()</p><p><b>  {</b></p><p>  cntLower = 0;</p><p>  cntUpper = 0;</p><p>  cntNumber = 0;</p><p>  cntSpace =

17、0;</p><p>  cntWords = 0;</p><p>  for( int i = 0; i < txt.size(); ++i )</p><p><b>  {</b></p><p>  if( txt[ i ] == ' ' ) cntSpace++;</p>

18、<p>  if( txt[ i ] >= '0' && txt[ i ] <= '9' ) cntNumber++;</p><p>  if( txt[ i ] >= 'a' && txt[ i ] <= 'z' ) cntLower++;</p><p>

19、  if( txt[ i ] >= 'A' && txt[ i ] <= 'Z' ) cntUpper++;</p><p>  if(!(txt[ i ] >= 'a' && txt[ i ] <= 'z' || txt[ i ] >= 'A' && tx

20、t[ i ] <= 'Z' ) </p><p>  && (txt[ i - 1] >= 'a' && txt[ i - 1 ] <= 'z' || txt[ i - 1 ] >= 'A' && txt[ i - 1 ] <= 'Z'))</p>

21、;<p>  cntWords++;</p><p><b>  }</b></p><p><b>  N</b></p><p>  Y N</p><p><b>  N</b></p><p

22、><b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b>  Y</b></p><p><b>  統(tǒng)計(jì)某一個(gè)字符串</b></p><

23、;p>  統(tǒng)計(jì)是利用指針來找到統(tǒng)計(jì)的字符,再利用計(jì)數(shù)器進(jìn)行計(jì)數(shù)。</p><p>  int count_string( const char *t )</p><p>  { int res = 0; </p><p>  for( int i = 0; i < txt.size(); ++i )</p><p><b

24、>  {</b></p><p>  int tmp = i;</p><p>  int j = 0;</p><p>  while( t[ j ] != '\0' && txt[ tmp ] == t[ j ] )</p><p><b>  {</b></p

25、><p>  tmp++; N</p><p><b>  j++;</b></p><p>  } Y</p><p>  if( t[ j ] == '\0' )res++;&l

26、t;/p><p><b>  }</b></p><p>  return res;</p><p><b>  }</b></p><p><b>  Y</b></p><p><b>  N</b></p><

27、p><b>  刪除某個(gè)字符串</b></p><p>  刪除字符串雷同查找字符串,查找字符串,先將其字符串找到,再利用計(jì)數(shù)器計(jì)數(shù),而刪除字符串是先找到再刪除,在此不做贅述。</p><p><b>  4主菜單界面</b></p><p><b>  打開程序的界面</b></p>

28、;<p><b>  主菜單</b></p><p><b>  新建文檔</b></p><p>  子菜單(程序的主要功能)</p><p><b>  統(tǒng)計(jì)文本</b></p><p><b>  統(tǒng)計(jì)某個(gè)字符串</b></p&g

29、t;<p><b>  刪除某個(gè)字符串</b></p><p><b>  文檔保存</b></p><p><b>  按任意鍵后到主菜單</b></p><p><b>  打開文檔</b></p><p>  打開文檔(注:修改后的文章

30、)</p><p><b>  5課程設(shè)計(jì)總結(jié)</b></p><p>  經(jīng)過幾天的忙碌,最終把課程設(shè)計(jì)任務(wù)完成了。要做好一件事,只能一步一步的去做,不可能一下子就完成。本來以為簡單的幾個(gè)功能,要實(shí)現(xiàn)以為很容易,至多一天就可以做完,可是在真正實(shí)現(xiàn)、編寫代碼的過程卻發(fā)現(xiàn)有太多的問題沒有解決。比如用什么方式來進(jìn)行字符串的保存,用什么算法來實(shí)現(xiàn)刪除后所有后面的字符向前移動(dòng)

31、,都是值得注意的。</p><p>  要做好一個(gè)系統(tǒng),一個(gè)嚴(yán)謹(jǐn)?shù)乃季S是不可以或缺的,每一個(gè)聯(lián)系都要考慮,每個(gè)細(xì)節(jié)都需要注意,每一種錯(cuò)誤都要會(huì)解決。只有把每一種問題都解決了,才能做出一個(gè)不是很完善的系統(tǒng)出來。讓我懂得了不一定你懂了,你就編出能運(yùn)行的程序,都是要一步一步腳踏實(shí)地去慢慢實(shí)踐,慢慢修改調(diào)試出來的。</p><p><b>  6參考文獻(xiàn)</b></p&

32、gt;<p>  1.《C++程序設(shè)計(jì)》 作者:譚浩強(qiáng) 清華大學(xué)出版社</p><p>  2.《Visual C++程序設(shè)計(jì)技巧與實(shí)例》 作者:許福 舒志 張威 等 出版社:中國鐵道出版社</p><p>  3.《Visual C++全能速查寶典》作者:劉銳寧,梁水,宋坤 人民郵電出版社</p><p>  4.《C++語言程序設(shè)計(jì)題典》

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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)論