兒童四則運算游戲-實驗報告_第1頁
兒童四則運算游戲-實驗報告_第2頁
兒童四則運算游戲-實驗報告_第3頁
兒童四則運算游戲-實驗報告_第4頁
兒童四則運算游戲-實驗報告_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

深圳大學實驗報告課程名稱:C程序設計實驗名稱:綜合實驗3:兒童四則運算游戲學院:信息工程學院專業(yè):未分指導教師:裴繼紅報告人:林瑤珠報告人學號:2014130017班級:信工1班實驗時間:2015年5月9日—5月19日報告提交時間:2015年5月19日教務處制9)定義一個函數divLmt100()。該函數沒有輸入參數;函數返回值類型為整型。該函數的功能是:首先調用randLmt100()函數生成兩個隨機整數num1和num2,并判斷num1是否可以被num2整除,若不能整除,則調用randLmt100()函數重新生成兩個新的num1和num2,然后再進行整除性判斷,直到生成的num1可以被num2整除;在num1可以被num2整除的情況下,在屏幕上列出一個算式num1÷num2=,然后接受一個鍵盤輸入的計算答案answer。若結果正確,則屏幕輸出一句贊揚的語句,然后返回函數值1;若結果錯誤,則屏幕輸出一句鼓勵的語句,并輸出正確答案,然后返回函數值0。10)主函數的功能如下:在主函數中調用上面定義的五個函數,在屏幕上隨機循環(huán)出一道100以內的四則運算題。其中,定義一個整型數組proNum[4]和整型數組ansNum[4],這兩個數組中分別存儲在上述游戲循環(huán)過程中加、減、乘、除四種類型的題出現的次數,以及這四種類型的題被答對的次數。在用戶不想繼續(xù)游戲退出時,在屏幕上顯示本次游戲中的加、減、乘、除四種類型題出現的數量,以及每一種題被答對的次數。主程序可參照附錄B給出的參考流程圖編寫。11)在實驗報告中要求說明:程序中那些地方使用了選擇結構,那些地方使用了循環(huán)結構,那些地方使用了函數的嵌套調用。12)在實驗報告中,畫出實現函數subLmt100(intnum1,intnum2)和divLmt100()功能的流程圖。此處運用了循環(huán)結構,按進行循環(huán)。按0退出循環(huán)此處運用了循環(huán)結構,按進行循環(huán)。按0退出循環(huán)游戲界面游戲界面這兩處運用了選擇結構0:退出游戲這兩處運用了選擇結構0:退出游戲1:開始游戲此處運用了選擇結構n=randOper4();此處運用了選擇結構n=randOper4();n=2n=3n=4n=1n=2n=3n=4n=1if(divLmt100())進入除法運算的函數并且判斷答案是否正確ansNumif(divLmt100())進入除法運算的函數并且判斷答案是否正確ansNum[3]++;如果答案正確的話除法答對次數加1;錯誤的話跳過此語句proNum[3]++;不管答對或者答錯,除法的總答題次數加1; if(mulLmt100(num1,num2))進入乘法運算的函數并且判斷答案是否正確ansNum[2]++;如果答案正確的話乘法答對次數加1;錯誤的話跳過此語句proNum[2]++;不管答對或者答錯,乘法的總答題次數加1;if(subLmt100(num1,num2))進入加法運算的函數并且判斷答案是否正確ansNum[1]++;如果答案正確的話減法答對次數加1;錯誤的話跳過此語句proNum[1]++;不管答對或者答錯,減法的總答題次數加1;if(addLmt100(num1,num2))進人加法運算的函數并且判斷答案是否正確ansNum[0]++;如果答案正確的話加法答對次數加1;錯誤的話跳過此語句proNum[0]++;不管答對或者答錯,加法的總答題次數加1;提示加法減法乘法除法出現的次數以及答對的次數!提示加法減法乘法除法出現的次數以及答對的次數!另外,函數intrandN1N2(intrN1,intrN2){ intnum; do { num=rand()%rN2+1; }while(num<rN1||num>rN2); returnnum;}中運用了循環(huán)結構,目的是使程序生成一個大于等于rN1小于rN2的數而divLmt()中也運用了循環(huán)結構do { num1=randLmt100(); num2=randLmt100(); }while(num1%num2!=0);目的是使系統生成的兩個數中num1能夠整除num2;而程序中也有運用到嵌套結構,具體如下:1:在主函數中嵌入Tip_interface()使系統生成開始界面;2:在intrandOper4(){ intn; n=randN1N2(1,4); returnn;}函數中嵌入了n=randN1N2(intnum1,intnum2)生成1-4;3:在intrandLmt100(){ intn; n=randN1N2(1,100); returnn;}函數中嵌入n=randN1N2(intnum1,intnum2)使函數生成1-100;函數subLmt100(intnum1,intnum2)功能的流程圖。numnum=rand()%rN2+1;numnum>=rN1&&num<=rN2num<rN1||num>rN2RReturnnum;函數divLmt100()功能的流程圖。進入函數進入函數num1=randLmt100();num1=randLmt100();num2=randLmt100();NNnum1>=num2?printfprintf("%d÷%d=",num1,num2);scanf("%d",&val);ValVal!=num1/num2;輸出誒啊,離正確答案只差一步!繼續(xù)努力,你可以的!輸出正確答案Val==num1/num2;輸出小伙子,不錯哦!祖國的未來需要你這樣的人才!Return0;Return1;Return0;Return1;實驗結果:游戲開始界面:輸入1:隨機出現了一道除法的等式;輸入正確結果1后,出現了小伙子,不錯哦!祖國的未來需要你這樣的人才!并且自動進入下一次循環(huán),繼續(xù)輸入1隨機出現了一道除法計算題輸入錯誤的答案2,提示誒啊,離正確答案只差一步!繼續(xù)努力,你可以的!并且自動提示了正確的答案?。?!

游戲進入下一次循環(huán),當我輸入0時,游戲出現了加法減法乘法以及除法的出現的總次數以及答對的次數,由上可以知道,加法減法乘法出現了0次,而除法出現了2次,并且答案了一次,與我們操作的結果相符,因此,說明了程序的正確性!對這個游戲,你有什么改進的想法!相對于小朋友來說,這是一個簡單的游戲,100以內的四則運算,符合小朋友們在這個時期所受的教育程度!但是,很明顯,這個程序在輸入錯誤的答案后提示錯誤,并且馬上提示了正確的答案,顯然,這個不能提高小朋友的思考能力以及自己的判斷能力!而一個好的應用程序,應該是一個能提高人的思考能力以及判斷能力的。因此,我建議:在輸出錯誤的答案后,進行以下處理,先把這個輸入值與正確答案進行比較,如果低了則提示輸入結果較低,重新輸入。如果與正確答案相比高了則提示輸入結果較高,重新

溫馨提示

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

評論

0/150

提交評論