版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
兒童四則運算游戲-實驗報告深圳大學實驗報告課程名稱: C程序設計 實驗名稱: 綜合實驗3:兒童四則運算游戲學院: 信息工程學院 專 業(yè): 未分 指導教師: 報告人: 林瑤珠 報告人學號:班級:信工1班實驗時間:2015年5月9日一5月19日報告提交時間: 2015年5月19日教務處制一、實驗目的與要求.實驗目的:(1)學習和掌握C語言函數的定義與調用;(2)進一步掌握隨機數、選擇結構、循環(huán)控制、交互式輸入輸出等程序設計方法;(3)進一步掌握C語言中的數組定義和引用方法;(4)學習和掌握根據流程圖進行模塊化程序設計的思想。⑸提交正式的電子版實驗報告到Blackboard。實驗要求::、實驗內容:1)在VC++中建立一個工程;2)在程序開始的注釋行中寫上你自己的信息;3)定義一個函數randN1N2(intrN1,intrN2)。該函數有兩個整型的輸入參數rN1和rN2,其中,rN1<=rN2。該函數的功能是生成rN1到rN2之間均勻分布的隨機整數,該函數的返回值類型是整型。每調用一次該函數,函數返回一個rN1至rN2之間的隨機整數(隨機數的生成方法可參考LabAssessment3)。4)定義一個函數randOper4()。該函數沒有輸入參數,函數的返回類型是整型。該函數內部調用上述randN1N2()函數。每調用一次函數randOper4(),返回一個1至4之間的隨機整數。5)定義一個函數randLmt100()。該函數沒有輸入參數,函數的返回類型是整型。該函數內部調用上述randN1N2()函數。每調用一次函數randLmt100(),返回一個0-99之間的隨機整數。定義一個函數addLmt100(intnum1,intnum2)。該函數有兩個整型的輸入參數num1和num2;函數返回值類型為整型。該函數的功能是:在屏幕上列出一個算式num1+num2=,然后接受一個鍵盤輸入的計算答案answer。若結果
正確,則屏幕輸出一句贊揚的語句,然后返回函數值1;若結果錯誤,則屏幕輸出一句鼓勵的語句,并輸出正確答案,然后返回函數值0。定義一個函數subLmtl00(intnuml,intnum2)。該函數有兩個整型輸入參數numl和num2;函數返回值類型為整型。該函數的功能是:在屏幕上列出一個算式numMl-numM2=,其中:numMl是numl和num2中較大的一個數,numM2是numl和num2中較小的一個數;然后接受一個鍵盤輸入的計算答案句,然后返回函數值1;若結果錯誤,則屏幕輸出一句鼓勵的語句,并輸出正確答案,然后返回函數值0。answer。若結果正確,則屏幕輸出一句贊揚的語answer。若結果正確,則屏幕輸出一句贊揚的語)定義一個函數mulLmt100(intnuml,intnum2)。該函數有兩個整型輸入參數numl和num2;函數返回值類型為整型。該函數的功能是:在屏幕上列出一個算式numlXnum2=然后接受一個鍵盤輸入的計算答案answer。若結果正確,則屏幕輸出一句贊揚的語句,然后返回函數值1;若結果錯誤,則屏幕輸出一句鼓勵的語句,并輸出正確答案,然后返回函數值0。9)定義一個函數divLmt100O。該函數沒有輸入參數;函數返回值類型為整型。該函數的功能是:首先調用randLmt100O函數生成兩個隨機整數numl和num2,并判斷numl是否可以被num2整除,若不能整除,則調用randLmt100()函數重新生成兩個新的numl和num2,然后再進行整除性判斷,直到生成的numl可以被num2整除;在numl可以被num2整除的情況下,在屏幕上列出一個算式numl+num2=然后接受一個鍵盤輸入的計算答案answer。若結果正確,則屏幕輸出一句贊揚的語句,然后返回函數值l;若結果錯誤,則屏幕輸出一句鼓勵的語句,并輸出正確答案,然后返回函數值0。l0)主函數的功能如下:在主函數中調用上面定義的五個函數,在屏幕上隨機循環(huán)出一道l00以內的四則運算題。其中,定義一個整型數組proNum[4]和整型數組ansNum[4],這兩個數組中分別存儲在上述游戲循環(huán)過程中加、減、乘、除四種類型的題出現的次數,以及這四種類型的題被答對的次數。在用戶不想繼續(xù)游戲退出時,在屏幕上顯示本次游戲中的加、減、乘、除四種類型題出現的數量,以及每一種題被答對的次數。主程序可參照附錄B給出的參考流程圖編寫。11)在實驗報告中要求說明:程序中那些地方使用了選擇結構,那些地方使用了循環(huán)結構,那些地方使用了函數的嵌套調用。12)在實驗報告中,畫出實現函數subLmt100(intnuml,intnum2)和divLmt100()功能的流程圖。n=1n=4n=1n=4ifififif(addLmt100(n(subLmt100(n(mulLmt100((divLmt100())uml,num2))uml,num2))numl,num2))進入除法運算的進人加法運算進入加法運算進入乘法運函數并且判斷答的函數并且判的函數并且判算的函數并案是否正確斷答案是否正斷答案是否正且判斷答案ansNum[3]++;確確是否正確如果答案正確的ansNum[0]++;ansNum[1]++;提示加法減法乘法除法出現的次數另外,函數intrandN1N2(intrN1,intrN2)(intnum;do(num=rand()%rN2+1;}while(num<rN1||num>rN2);returnnum;}中運用了循環(huán)結構,目的是使程序生成一個大于等于rN1小于理2的數而divLmt()中也運用了循環(huán)結構do(num1=randLmt100();num2=randLmt100();}while(num1%num2!=0);目的是使系統(tǒng)生成的兩個數中num1能夠整除num2;而程序中也有運用到嵌套結構,具體如下:1:在主函數中嵌入Tip_interface()使系統(tǒng)生成開始界面;2:在intrandOper4()(intn;n=randN1N2(1,4);returnn;}函數中嵌入了n=randN1N2(intnum1,intnum2)生成1-4;3:在intrandLmt100()(intn;n=randN1N2(1,100);
returnn;)函數中嵌入n=randN1N2(intnuml,intnum2)使函數生成1-100;函數subLmt100(intnuml,intnum2)功能的流程圖。Returnnum;函數divLmt100()功能的流程圖。進入函數
num1=randLmt100();num2=randLmt100();Nnum1>=nuprintf("%d+%d=",numl,num2);
scanf("%d”,&val);Val==num1/num2;輸出num1=randLmt100();num2=randLmt100();Nnum1>=nuprintf("%d+%d=",numl,num2);
scanf("%d”,&val);Val==num1/num2;輸出小伙子,不錯哦!祖國的未Val!=num1/num2;輸出埃啊,離正確答案Return0;Return1;Return0;實驗結果:游戲開始界面:諳掩入你由近探:游戲開始界面:諳掩入你由近探:輸入1:請輸入以下問題的正確答案3。3=隨機出現了一道除法的等式;輸入正確結果1后,隨機出現了一道除法的等式;輸入正確結果1后,出現了小伙子,不錯哦!祖國的未來需要你這樣的人才!并且自動進入下一次循環(huán),繼續(xù)輸入1隨機出現了一道除法計算題請輸入以下問題的正確答案22:1輸入錯誤的答案2請輸入以下問題的正確答案=2+i”工啊,離正確答案只差一步!跳續(xù)努力.飾可以的!讀題的正語答案為二』提示誒啊,離正確答案只差一步!繼續(xù)努力,你可以的!并且自動提示了正確的答案?。?!游戲進入下一次循環(huán),當我輸入0時,請輸入你的選擇身?nLl'gw00@2■?:?nLl'gw00@2■?:■--■YE-亡簟三
口IIIIIIEI
三x_/■,=一刃刃力刃
的西勢茶
女4-」也次游戲出現了加法減法乘法以及除法的出現的總次數以及答對的次數,由上可以知道,加法減法乘法出現了0次,而除法出現了2次,并且答案了一次,與我們操作的結果相符,因此,說明了程序的正確性!對這個游戲,你有什么改進的想法!相對于小朋友來說,這是一個簡單的游戲,100以內的四則運算,符合小朋友們在這個時期所受的教育程度!但是,很明顯,這個程序在輸入錯誤的答案后提示錯誤,并且馬上提示了正確的答案,顯然,這個不能提高小朋友的思考能力以及自己的判斷能力!而一個好的應用程序,應該是一個能提高人的思考能力以及判斷能力的。因此,我建議:在輸出錯誤的答案后,進行以下處理,先把這個輸入值與正確答案進行比較,如果低了則提示輸入結果較低,重新輸入。如果與正確
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年銷售合同實施步驟詳解版B版
- 2024年版合同特定條款修訂補充合同版B版
- 2024租地合同范本
- 2025年度金融衍生品交易財務顧問合同2篇
- 2024年電子商務營銷專屬協議3篇
- 2025年度城市基礎設施建設擔保合作協議范本3篇
- 2024年環(huán)保節(jié)能設備制造與銷售合同
- 2025年度航空航天器研發(fā)與生產合作合同3篇
- 2025年度智能駕駛出租車運營服務雇傭合同3篇
- 2025年度智能辦公系統(tǒng)全面維護與升級服務合同3篇
- 污水處理廠設備安裝施工方案
- 噪聲監(jiān)測記錄表
- 百分數的認識說課稿(課堂)課件
- 老年人能力評估標準解讀講義課件
- 材料報價三家對比表
- 2024年國家公務員考試公共基礎知識全真模擬試題及答案(共四套)
- 焊接工序首件檢驗記錄表
- (通橋【2018】8370)《鐵路橋梁快速更換型伸縮縫安裝圖》
- 針灸的作用原理和治療原則
- 標準輔助航空攝影技術規(guī)范
- 項目經理部組織機構
評論
0/150
提交評論