小學算術課程設計_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  課程設計(實訓)報告</p><p>  學 院 電子信息學院 專 業(yè) 廣播電視工程</p><p>  姓 名 課 題 少兒算術運算測試 </p><p>  指導教師 ____ _ ___ 報告成績 _______________</p><p>

2、  日 期: 2012 年 3 月 22 日</p><p>  目 錄</p><p>  一.課程設計目的………………………………………………3</p><p>  二.課程設計要求………………………………………………3</p><p>  三.設計題目分析………………………………………………4</p&

3、gt;<p>  3.1題目簡介 …………………………………………………4</p><p>  3.2設計要求 …………………………………………………4</p><p>  四.課程設計內(nèi)容………………………………………………5</p><p>  4.1總體設計 …………………………………………………5</p><p>  4

4、.2詳細設計 …………………………………………………6</p><p>  1.模塊具體說明 ……………………………………………7</p><p>  4.3調(diào)試與測試 ………………………………………………7</p><p>  五.設計心德與總結……………………………………………8</p><p>  六.建議………………………………………

5、…………………9</p><p>  七.評閱意見……………………………………………………9</p><p>  八.源代碼………………………………………………………10</p><p><b>  少兒算術運算測試</b></p><p><b>  一、課程設計目的</b></p>

6、<p>  1).主要利用c語言的編程運算能力設計一個可供小學生以及低齡兒童小學算術運算測試的程序。</p><p>  2). 通過程序設計熟練掌握c語言編程的技能并提高自身的能力和水平。</p><p>  3). 通過程序設計的過程復習c語言的主要內(nèi)容并以此為計算機二級等級考試做好相應的充分準備。</p><p>  4).讓我們學習完《C語言程序

7、設計》課程后再次進行的一次全面的綜合練習,我們積累實踐經(jīng)驗的好機會。</p><p>  5).加深我們對C語言程序設計的基本理論和基本語法知識的理解,全面掌握高級語言程序設計的基本方法和技術,熟悉相關編程環(huán)境和工具,能夠熟練地運用C++編寫較為簡單的應用程序,并對之進行調(diào)試分析。</p><p>  6).將課本上的理論知識和實際有機的結合起來,鍛煉學生的分析解決實際問題的能力。提高學生

8、適應實際編程中遇到的問題,實踐編程的能力培養(yǎng)學生在項目開發(fā)中創(chuàng)新意識及能力。</p><p><b>  二、課程設計要求</b></p><p>  1)同學之間討論算法的實現(xiàn)和編程的思路和方法,但每個人必須自己動手編寫程序,不抄襲他人。</p><p>  2)對系統(tǒng)進行功能模塊分析、控制模塊分析正確,符合課題要求,實現(xiàn)相應功能;</

9、p><p>  可以加以其他功能或美化修飾,使程序更加完善、合,、更適合低齡兒童及小學生的使用; </p><p>  3)要求利用C語言面向過程的編程思想來完成系統(tǒng)的設計;具有清晰的程序流程圖和數(shù)據(jù)結構的詳細定義; </p><p>  系統(tǒng)設計要實用,編程簡練,可用,功能全面 </p><p>  記錄設計

10、情況,也為編寫設計說明書作好準備,對自己的程序熟悉,面對教師提問能熟練地解釋清楚。</p><p>  6)設計上交內(nèi)容:設計報告一份(按格式書寫)。</p><p><b>  三、設計題目分析</b></p><p><b>  3.1 題目簡介</b></p><p>  要求:制作一個可供小

11、學數(shù)學運算的程序。</p><p>  10以內(nèi)的加減乘除法,能根據(jù)輸入題數(shù)出題,判斷做題是否正確,最后計算分數(shù),并計算出正確率。</p><p><b>  例如:請輸入;4</b></p><p><b>  9+15=</b></p><p><b>  7-4=</b>

12、</p><p><b>  9*1=</b></p><p><b>  5/6=</b></p><p>  由用戶輸入答案,程序根據(jù)答案判斷正誤,并給出每題的正確答案,最后計算輸出正確率(%)。</p><p><b>  3.2 設計要求</b></p>

13、<p>  要求:制作一個可供小學生以及低齡兒童數(shù)學運算的程序。</p><p>  10以內(nèi)的加減乘除法,能根據(jù)輸入題數(shù)出題,判斷做題是否正確,最后計算分數(shù),并由此得出正確率(%)。</p><p><b>  四、課程設計內(nèi)容</b></p><p><b>  4.1 總體設計</b></p>

14、<p><b>  4.2詳細設計</b></p><p><b>  1.模塊具體說明</b></p><p>  主函數(shù)模塊包括:輸入函數(shù)(scanf()),輸出函數(shù)(printf())</p><p>  變量定義模塊包括:隨機函數(shù)(rand()),調(diào)用函數(shù)(Getanum)(mul)(swap)<

15、/p><p>  運算種類模塊包括:多分支if語句,關系表達式</p><p>  循環(huán)運算模塊包括:for語句</p><p><b>  4.3調(diào)試與測試</b></p><p><b>  單項訓練效果圖</b></p><p><b>  綜合訓練效果圖<

16、/b></p><p><b>  五.設計心得與總結</b></p><p>  剛剛拿到這個設計題目時,腦子里便對這個系統(tǒng)的程序有一定的想法,但在自己把程序編寫出來進行調(diào)試時卻出現(xiàn)了很多的錯誤但在我自己的努力及老師和同學幫助下都被一一的客服,現(xiàn)在運行本程序時已經(jīng)能熟練的操作,并能正確的輸出結果。在剛開始的幾次調(diào)試中曾經(jīng)出現(xiàn)了代碼錯誤,不能運行,不能生成10以

17、內(nèi)的隨機數(shù)字,不能進行循環(huán),不能再做一次等等問題。經(jīng)過我自己的努力及老師同學們的幫助,這些問題都被順利解決,程序也得到了進一步的完善?,F(xiàn)在不僅能對做錯的題目在做一次,而且還能給出正確答案,最后還能輸出做對的題目數(shù)和對應的正確率。</p><p>  在此次設計過程中,不僅復習了課本上所學的知識,還通過查資料,問老師以及同學學到了許多課本以外的知識。從而啟發(fā)了我,要想寫出一個好的程序,在學好的課本上知識的同時還要多

18、讀一些和專業(yè)有關的書籍,同時還要多動腦子,盡量把學到的東西運用到實際問題當中,在實踐中將知識完善,力爭在實踐中寫出好的程序。除此之外,我還得到了一些有用的教訓:寫程序是必須要細心不能輸錯一個字符標點,就連全角半角都不能有錯。同時在修改程序時要有耐心,編譯出錯后必須逐個錯誤去修改,決不能心浮氣躁,否則錯誤還沒改好又會有新的錯誤出現(xiàn),總之編程要細心和欣喜。</p><p><b>  六.建議</b&

19、gt;</p><p><b>  七.評閱意見</b></p><p><b>  教師簽名:</b></p><p>  年 月 日</p><p><b>  參考文獻:</b></p><p>  江寶釧,陳葉芳,賈曉雯,陳金彪,

20、管博,《C語言程序設計》,北京,清華大學出版社,2010</p><p>  裘姝平,賈曉雯,孫霞,《C語言程序設計二級考試輔導教程》,浙江,浙江大學出版社,2008</p><p><b>  八.源代碼</b></p><p>  #include<stdio.h></p><p>  #include&

21、lt;stdlib.h></p><p>  #include<time.h></p><p>  #include<math.h></p><p>  #define N 100</p><p>  int swap(int x,int y)//建立一個能進行除法運算的函數(shù)//</p><p

22、><b>  {</b></p><p><b>  int t=0;</b></p><p>  while(x>=y)</p><p><b>  {x=x-y;</b></p><p><b>  t++;}</b></p>

23、<p><b>  return t;</b></p><p><b>  }</b></p><p>  void main()</p><p><b>  {</b></p><p>  printf("------------------------

24、--歡迎進入少兒算數(shù)測試系統(tǒng)----------------------------\n");</p><p>  printf("---------注:㈠本系統(tǒng)有綜合訓練模式和專項訓練模式請根據(jù)自己需求自主選擇模式----\n");</p><p>  printf("------------㈡綜合訓練模式有一定難度,請低齡用戶慎選--------

25、------------------\n");</p><p>  printf("**下面進入系統(tǒng),開始你們的測試吧!加油!!!!!**\n");</p><p>  int i,c1,c2,sum,age,fen=0,e,x,y;</p><p>  int a[N],b[N],p[N],d[N]={0},t[N],q[N];<

26、;/p><p>  float m,n;</p><p>  srand(time(0));</p><p>  printf("----------按1選擇專項訓練模式\n----------按2選擇綜合訓練模式\n");</p><p>  scanf("%d",&c1);</p>

27、<p>  while(c1!=1&&c1!=2)</p><p><b>  {</b></p><p>  printf("輸入錯誤,請再次輸入!!\n");</p><p>  scanf("%d",&c1);</p><p><b&

28、gt;  }</b></p><p>  //進入專項訓練模式</p><p><b>  if(c1==1)</b></p><p><b>  {</b></p><p>  printf("-------------------下面開始你們的算術專項訓練。加油! ! !-

29、------------\n");</p><p>  printf("按0進入加法練習\n按1進入減法練習\n按2進入乘法練習\n按3進入除法練習\n");</p><p>  scanf("%d",&c2);</p><p>  for(i=0;i<N;i++) </p><p

30、>  {a[i]=rand()%10;</p><p>  b[i]=rand()%10;</p><p><b>  p[i]=c2;}</b></p><p><b>  }</b></p><p>  //進入綜合訓練模式</p><p><b>  i

31、f(c1==2)</b></p><p><b>  {</b></p><p>  printf("-----------下面開始你們的綜合訓練。加油!!!----------\n");</p><p>  printf("請輸入自己的年齡:");</p><p> 

32、 scanf("%d",&age);</p><p>  for(i=0;i<N;i++)</p><p><b>  {</b></p><p>  a[i]=rand()%10;</p><p>  b[i]=rand()%10;</p><p>  if(a

33、ge<=8)</p><p>  p[i]=rand()%2;</p><p><b>  else</b></p><p>  p[i]=rand()%4;</p><p><b>  }</b></p><p><b>  }</b></

34、p><p>  printf("輸入題數(shù)");</p><p>  scanf("%f",&n);</p><p><b>  //以下是運算程序</b></p><p>  for(i=0;i<=n-1;i++)</p><p>  { //

35、以下加法運算過程</p><p>  if(p[i]==0)</p><p><b>  {</b></p><p>  printf("第%d題:%d + %d = ",i+1,a[i],b[i]);</p><p>  t[i]=a[i]+b[i];</p><p>  s

36、canf("%d",&sum);</p><p>  if(sum==a[i]+b[i])</p><p><b>  fen++;</b></p><p><b>  else</b></p><p><b>  {</b></p>

37、<p>  printf("X﹏X,你的輸入錯誤咯,再給你一次機會,輸入你的正確答案吧!加油!!!!\n");</p><p>  printf("第%d題:%d + %d = ",i+1,a[i],b[i]);</p><p>  scanf("%d",&sum);</p><p>&l

38、t;b>  d[i]=i+1;</b></p><p><b>  }</b></p><p>  printf("正確答案%d",t[i]);</p><p>  printf("\n");</p><p><b>  }</b><

39、/p><p>  //下面減法運算過程</p><p>  if(p[i]==1)</p><p><b>  {</b></p><p>  if(a[i]>b[i])</p><p>  printf("第%d題:%d - %d = ",i+1,a[i],b[i]);&l

40、t;/p><p><b>  else</b></p><p>  printf("第%d題:%d - %d = ",i+1,b[i],a[i]);</p><p>  t[i]=abs(a[i]-b[i]);</p><p>  scanf("%d",&sum);</p

41、><p>  if(sum==abs(a[i]-b[i]))</p><p><b>  fen++;</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  printf("X﹏X,你的輸

42、入錯誤咯,再給你一次機會,輸入你的正確答案吧!加油!!!!\n");</p><p>  printf("第%d題:%d - %d = ",i+1,a[i],b[i]);</p><p>  scanf("%d",&sum);</p><p><b>  d[i]=i+1;</b><

43、;/p><p><b>  }</b></p><p>  printf("正確答案%d",t[i]);</p><p>  printf("\n");</p><p><b>  }</b></p><p>  //以下乘法運算過程<

44、;/p><p>  if(p[i]==2)</p><p><b>  {</b></p><p>  printf("第%d題:%d * %d = ",i+1,a[i],b[i]);</p><p>  t[i]=a[i]*b[i];</p><p>  scanf("

45、%d",&sum);</p><p>  if(sum==a[i]*b[i])</p><p><b>  fen++;</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  

46、printf("X﹏X,你的輸入錯誤咯,再給你一次機會,輸入你的正確答案吧!加油!!!!\n");</p><p>  printf("第%d題:%d * %d = ",i+1,a[i],b[i]);</p><p>  scanf("%d",&sum);</p><p><b>  d[

47、i]=i+1;</b></p><p><b>  }</b></p><p>  printf("正確答案%d",t[i]);</p><p>  printf("\n");</p><p><b>  }</b></p><

48、p>  //以下除法運算過程</p><p>  if(p[i]==3) {</p><p>  while(b[i]==0) //如果除數(shù)b[i]為零,重新生成一個隨機數(shù)b[i]//</p><p>  {b[i]=rand()%10;}</p><p>  printf

49、("第%d題:%d / %d = ",i+1,a[i],b[i]);</p><p>  t[i]=a[i]/b[i];</p><p>  q[i]=a[i]%b[i];</p><p>  scanf("%d",&sum);</p><p>  y=swap(a[i],b[i]);</

50、p><p>  printf("余數(shù)為"); //如果沒有除盡,要輸入余數(shù)//</p><p>  scanf("%d",&x);</p><p>  sum=a[i]/b[i];</p><p>  if(a[i]==(sum*b[i]+x) && sum==y)</

51、p><p><b>  fen++;</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  printf("X﹏X,你的輸入錯誤咯,再給你一次機會,輸入你的正確答案吧!加油!!!!\n");</p

52、><p>  printf("第%d題:%d / %d = ",i+1,a[i],b[i]);</p><p>  scanf("%d",&sum);</p><p>  printf("余數(shù)為"); //如果沒有除盡,要輸入余數(shù)//</p><p>  scanf(&q

53、uot;%d",&x);</p><p><b>  d[i]=i+1;</b></p><p><b>  }</b></p><p>  printf("正確答案%d余數(shù)為%d",t[i],q[i]);</p><p>  printf("\n&q

54、uot;);</p><p><b>  }</b></p><p><b>  }</b></p><p>  m=fen*100/n;</p><p>  printf("做對的題數(shù)為%d\n正確率為%.2f%%\n",fen,m);</p><p>

55、  if(m>=100)</p><p><b>  {</b></p><p>  printf("( ⊙o⊙ )哇!好厲害,恭喜您獲得了滿分,送你一束鮮花\n");</p><p>  printf(" (@) \n");</p><p>

56、  printf(" (@) * (@) \n");</p><p>  printf(" (@) * (@) * (@) \n");</p><p>  printf("(@)* (@) * (@) * (@) \n");</p><p>  printf("\ (@

57、) * (@) * (@) / \n");</p><p>  printf(" \ \ \ l / / / \n");</p><p>  printf(" \\ \ Y / // \n");</p><p>  printf(" \\ l // \n

58、");</p><p>  printf(" \\Y// \n");</p><p>  printf(" >=< \n");</p><p>  printf(" //*\\ \n");</

59、p><p><b>  }</b></p><p>  else if(m>90)</p><p>  printf("o(≧v≦)o~~好棒...您的成績很優(yōu)秀!\n");</p><p>  else if(m>70)</p><p>  printf("

60、您的成績?yōu)榱? ^_^ )不錯嘛\n");</p><p>  else if(m>=60)</p><p>  printf("您的成績通過了,不過還要繼續(xù)努力哦!!!O(∩_∩)O\n");</p><p><b>  else</b></p><p>  printf("

61、;你的成績不太給力哦,繼續(xù)努力,加強練習!-_-|||\n");</p><p>  printf("想要再來一次嗎(⊙_⊙)?\n");</p><p>  printf("想要的就按1,如果不想的話請按2\n");</p><p>  scanf("%d",&e);</p>

62、<p>  while((e!=1)&&(e!=2))</p><p><b>  {</b></p><p>  printf("輸入無效,請再次輸入:");</p><p>  scanf("%d",&e);</p><p><b&g

63、t;  }</b></p><p><b>  if(e==1)</b></p><p><b>  main ();</b></p><p><b>  if(e==2)</b></p><p>  printf("\n歡迎再來,拜拜!!\(^o^)/~

溫馨提示

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

評論

0/150

提交評論