c語言課程設(shè)計報---小學(xué)算術(shù)運算測試_第1頁
已閱讀1頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目 錄</b></p><p>  題目與要求............3</p><p>  功能設(shè)計....................3</p><p>  程序代碼設(shè)計................6</p><p>  C程序設(shè)計報告...............7</p

2、><p>  結(jié)束語......................8</p><p>  參考文獻.........................8</p><p><b>  題目與要求</b></p><p><b>  1.1問題提出</b></p><p>  我計劃編寫

3、小學(xué)算術(shù)運算測試程序,主要面向小學(xué)生數(shù)學(xué)算術(shù)。要求完成10以內(nèi)加減乘除四則運算。能根據(jù)輸入提示出題,用戶可選擇1.加法運算2.減法運算3.乘法運算4.除法運算5.退出。用戶輸入答案后可以判斷正誤,并能給出算對和算錯的題目和總共做多少道題。做完一題后用戶可根據(jù)提示是否繼續(xù)下一次測試。</p><p>  1.2本系統(tǒng)涉及的知識點</p><p>  主要有函數(shù)、循環(huán)語句、分支、簡單的算法&l

4、t;/p><p><b>  1.3功能要求</b></p><p>  1.能完成10以內(nèi)加減乘除</p><p>  2.根據(jù)提示用戶可選擇算法類型</p><p>  3.用戶輸入答案后可以判斷正誤</p><p>  4.能給出算對的題目</p><p>  5.能給出

5、算錯的題目</p><p>  6.能給出共做多少題目</p><p>  7.用戶可根據(jù)提示是否繼續(xù)下一測試</p><p><b>  2.功能設(shè)計</b></p><p><b>  2.1算法分析</b></p><p>  根據(jù)程序要求將程序代碼分成五部分, 利用s

6、witch語句設(shè)計如圖1所示的主菜單:</p><p>  請輸入選項編號(1-5)</p><p><b>  1——加法運算</b></p><p><b>  2——減法運算</b></p><p><b>  3——乘法運算</b></p><p&g

7、t;<b>  4——除法運算</b></p><p><b>  5——退出</b></p><p>  圖1 小學(xué)算術(shù)運算測試程序主菜單</p><p>  選擇1后,調(diào)用加法函數(shù),進入函數(shù)后利switch語句實現(xiàn)一個如圖2所示的菜單</p><p><b>  1——加法運算<

8、/b></p><p>  圖2.加法運算子菜單</p><p>  3、根據(jù)所選菜單編寫相應(yīng)代碼:</p><p>  1)輸入數(shù)字1后程序自動選擇加法運算,系統(tǒng)會自動隨機給出兩個數(shù)的加法式子,用戶可根據(jù)提示輸入答案。</p><p>  2)做完本題后用戶可根據(jù)系統(tǒng)提示選擇是否繼續(xù)做題。</p><p>  

9、3)用戶選擇退出系統(tǒng)后,系統(tǒng)會自動統(tǒng)計用戶共做多少道題,判斷用戶做對和做錯多少道題。</p><p>  2.2部分模塊流程圖</p><p><b>  程序代碼設(shè)計</b></p><p>  #include <stdlib.h></p><p>  #include <stdio.h>&l

10、t;/p><p>  #include <time.h></p><p>  int question_get();</p><p><b>  int type;</b></p><p>  void main( void )</p><p><b>  {</b>

11、</p><p>  int answer,n;</p><p>  srand( (unsigned)time( NULL ) );</p><p>  loop: printf( "請選擇要進行測試的題目種類:" );</p><p>  printf( "\n1.加法運算\n2.減法運算\n3.乘法運算\

12、n4.除法運算\n5.退出運算\n" );</p><p>  printf("\t\t\t請選擇(1-5):");</p><p>  scanf( "%d", &type );</p><p>  while( 1 )</p><p><b>  { </b&g

13、t;</p><p><b>  int temp;</b></p><p><b>  int flag;</b></p><p>  answer = question_get();</p><p>  printf( "請回答:\n" );</p><p

14、>  scanf( "%d", &temp );</p><p>  while( temp!=answer )</p><p><b>  {</b></p><p>  printf( "\n答案錯誤,重做\n" );</p><p>  scanf( "

15、;%d", &temp );</p><p><b>  }</b></p><p>  printf( "\n答案正確,很好\n" );</p><p>  printf( "繼續(xù)請按1,退出請按0\n" );</p><p>  scanf( "%d

16、", &flag );</p><p>  while( flag!=0&&flag!=1 )</p><p><b>  {</b></p><p>  printf( "按其它鍵無效\n" );</p><p>  scanf( "%d", &

17、amp;flag );</p><p><b>  }</b></p><p>  if( flag==0 )</p><p><b>  break;</b></p><p>  goto loop;</p><p><b>  }</b></p

18、><p><b>  }</b></p><p>  int question_get()</p><p><b>  {</b></p><p>  int a,b,c;</p><p>  loop: if( type==1 )</p><p><

19、;b>  {</b></p><p>  a=rand()%99;</p><p><b>  b=99-a;</b></p><p>  b=rand()%b;</p><p>  printf( "%d + %d = ?", a, b );</p><p>

20、;  return(a+b);</p><p><b>  }</b></p><p>  else if( type==2 )</p><p><b>  {</b></p><p>  b=rand()%99;</p><p><b>  c=99-b;<

21、/b></p><p>  c=rand()%c;</p><p>  printf( "%d - %d = ?", b+c, b );</p><p>  return(c);</p><p><b>  }</b></p><p>  else if( type==3

22、 )</p><p><b>  {</b></p><p>  a=rand()%10;</p><p><b>  b=50-a;</b></p><p>  b=rand()%b;</p><p>  printf( "%d * %d = ?", a

23、, b );</p><p>  return(a*b);</p><p><b>  }</b></p><p>  else if( type==4 )</p><p><b>  {</b></p><p>  b=rand()%50;</p><p

24、><b>  c=100/b;</b></p><p>  while( 1 )</p><p><b>  {</b></p><p>  c=rand()%c;</p><p>  if( c!=0 )</p><p><b>  break;</b

25、></p><p><b>  }</b></p><p>  printf( "%d / %d = ?", b*c, b );</p><p>  return(c);</p><p><b>  } </b></p><p>  else if

26、( type==5 )</p><p><b>  {</b></p><p>  printf("\t\t\t退出系統(tǒng)\n"); /*結(jié)束程序*/</p><p>  system("pause"); </p><p><b>  exit(0);</b>&

27、lt;/p><p><b>  }</b></p><p>  else if( type==0||type>5 )</p><p><b>  {</b></p><p>  printf("\t\t\t輸入錯誤,請輸入1-5內(nèi)的數(shù)字\n");</p><

28、p>  printf("\t\t\t請選擇(1-5):");</p><p>  scanf( "%d", &type );</p><p>  goto loop;</p><p><b>  }</b></p><p><b>  }</b>

29、</p><p>  4 .C程序設(shè)計總結(jié)</p><p>  內(nèi)容:程序調(diào)試情況:在開始編寫階段,我確實遇到很多麻煩,操作的過程中遇到很多錯誤,功夫不負(fù)有心人,在老師和同學(xué)的幫助下,終于完成了這項程序,并且在原程序的基礎(chǔ)上有了一些新的改進。該具有以下功能 程序能完成10以內(nèi)加減乘除,根據(jù)提示用戶可選擇算法類型,用戶輸入答案后可以判斷正誤,還有一些功能不再一一列舉。</p>

30、<p>  本人在程序設(shè)計中感本想: C語言是一門操作性很強的一門課程,只看課本是遠(yuǎn)遠(yuǎn)不夠的,在這短短的幾天里我感覺到又學(xué)到很多知識,對以前未充分領(lǐng)悟的要點也有了一些充分的認(rèn)識,在此過程中,也暴露出我很多的缺點和不足,編寫的過程中考慮不足,老出現(xiàn)一些基礎(chǔ)的錯誤,這些錯誤大多有馬虎引起的,通過這次程序設(shè)計為以后我的編寫生涯提了一個醒,有錯誤不怕,關(guān)鍵是能從中學(xué)到更多的要領(lǐng)。</p><p>  5.結(jié)束語

31、 本周的c語言課程設(shè)計課,給我留下了很深的印象,該課程為我們學(xué)生提供了一個既動手又動腦獨立實踐的機會,將所學(xué)理論知識與實際有機的結(jié)合起來,感謝老師和同學(xué)們在我遇到麻煩時,給予耐心的指導(dǎo),這不僅是程序設(shè)計,更是鍛煉我們處理問題的能力,同時也使我們了解到團隊合作的可貴.總之,這次課程設(shè)計讓我獲益匪淺,讓我對C語言的掌握和實踐有了更深刻的理解</p><p><b>  參考文獻</b><

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論