《c語(yǔ)言課程設(shè)計(jì)報(bào)告-小游戲“石頭剪子布”》_第1頁(yè)
《c語(yǔ)言課程設(shè)計(jì)報(bào)告-小游戲“石頭剪子布”》_第2頁(yè)
《c語(yǔ)言課程設(shè)計(jì)報(bào)告-小游戲“石頭剪子布”》_第3頁(yè)
《c語(yǔ)言課程設(shè)計(jì)報(bào)告-小游戲“石頭剪子布”》_第4頁(yè)
《c語(yǔ)言課程設(shè)計(jì)報(bào)告-小游戲“石頭剪子布”》_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

《c語(yǔ)言課程設(shè)計(jì)報(bào)告--小游戲“石頭剪子布”》《C語(yǔ)言課程設(shè)計(jì)》報(bào)告題目:石頭剪子布

班級(jí):

學(xué)號(hào):

姓名:

指導(dǎo)老師:

成果:

名目:

一、選題背景......................................................................................................................-2-

二、設(shè)計(jì)思路......................................................................................................................-2-

三、主要問(wèn)題的解決方法及關(guān)鍵技術(shù)..............................................................................-3-

四、程序流程圖..................................................................................................................-3-

五、源程序清單..................................................................................................................-6-

六、程序運(yùn)行結(jié)果..............................................................................................................-8-

七、設(shè)計(jì)總結(jié)......................................................................................................................-9-

八、老師評(píng)語(yǔ)....................................................................................................................-10-

一、選題背景

通過(guò)一個(gè)學(xué)期的C語(yǔ)言課程的學(xué)習(xí),《C語(yǔ)言程序設(shè)計(jì)》課程已結(jié)束,依據(jù)學(xué)校課程學(xué)習(xí)的支配,要進(jìn)行一周的C語(yǔ)言實(shí)習(xí),自己動(dòng)手編寫(xiě)嬉戲和系統(tǒng)。依據(jù)老師布置的設(shè)計(jì)任務(wù)書(shū),根據(jù)學(xué)委的支配,依據(jù)個(gè)人的力量及意愿,我選擇了設(shè)計(jì)一格小嬉戲:石頭剪子布。

試驗(yàn)預(yù)備:做嬉戲前,首先,自己具體看了《C語(yǔ)言程序設(shè)計(jì)》(教科書(shū)),理解了相關(guān)函數(shù)的用法和作用;另外,上網(wǎng)查詢(xún)了許多相關(guān)資料,還有找了許多相關(guān)的嬉戲設(shè)計(jì)的代碼,都具體的看了一遍,加深了對(duì)C語(yǔ)言以及相關(guān)內(nèi)容進(jìn)一步理解。依據(jù)實(shí)際狀況設(shè)計(jì)出一款比較抱負(fù)的小嬉戲。

設(shè)計(jì)題目的要求:

①嬉戲要設(shè)置開(kāi)頭,結(jié)束操作掌握

②嬉戲要有時(shí)間提示即相關(guān)結(jié)果的提示語(yǔ)

③嬉戲要能自動(dòng)推斷輸贏,并顯示最終競(jìng)賽結(jié)果

二、設(shè)計(jì)思路

系統(tǒng)功能模塊圖:

輸入:計(jì)算機(jī)隨機(jī)輸入選擇,用戶(hù)輸入選擇,并將數(shù)據(jù)儲(chǔ)存。

計(jì)算:依據(jù)計(jì)算機(jī)和用戶(hù)的選擇,計(jì)算大小,并推斷輸贏,計(jì)算用戶(hù)的勝敗率,并儲(chǔ)存。

輸出:依據(jù)用戶(hù)的輸入,將用戶(hù)的嬉戲結(jié)果顯示在屏幕上。

三、主要問(wèn)題的解決方法及關(guān)鍵技術(shù)

嬉戲功能需求分析:

輸入數(shù)據(jù):

計(jì)算機(jī)隨機(jī)輸入數(shù)據(jù);

用戶(hù)輸入合法的數(shù)據(jù)

存儲(chǔ)數(shù)據(jù):

存儲(chǔ)計(jì)算機(jī)的輸入數(shù)據(jù);

存儲(chǔ)用戶(hù)的合法輸入數(shù)據(jù);

推斷用戶(hù)的輸贏:

依據(jù)用戶(hù)的選擇,比較用戶(hù)與計(jì)算機(jī)的勝敗

計(jì)算用戶(hù)的勝敗率:

依據(jù)計(jì)算機(jī)的記錄,計(jì)算用戶(hù)的勝敗次數(shù)的總和及概率四、程序流程圖

①獵取計(jì)算機(jī)的輸入

②獵取用戶(hù)的合法輸入

③推斷用戶(hù)的輸贏

④記錄用戶(hù)的數(shù)據(jù)機(jī)勝敗率

五、源程序清單

#include

#include

#include

voidmain()

{

charr;/*用來(lái)存放用戶(hù)的選擇*/

chardn;/*用來(lái)存放電腦的選擇*/

ints,q;

doublep,y,n,f,z;

p=0;

y=0;

n=0;

printf("出錘子輸入c\n出剪刀輸入j\n出布輸入b\n計(jì)算您的得分輸入f\n可以一次輸入很多會(huì)一次性出許多結(jié)果哦\n請(qǐng)輸入您的選擇:\n");

srand(time(0));/*隨機(jī)數(shù)生成器,設(shè)置rand種子值,用來(lái)獵取計(jì)算機(jī)的輸入*/do{

do{

s=rand()%3;

switch(s)

{

case0:dn='c';break;

case1:dn='j';break;

case2:dn='b';break;

}

do{

scanf("%c",/*用來(lái)獵取用戶(hù)的合法輸入*/

}while(r!='c'

if(r=='f')

{

z=y+n+p;

f=100/z*(p/2.0+y);

printf("一共比了%g場(chǎng)\n贏了%g場(chǎng)\n輸了%g場(chǎng)\n平局%g場(chǎng)\n",z,y,n,p);

y=100/z*y;

n=100/z*n;

p=100/z*p;

printf("您的勝率為%.3g%%\n您的敗率為%.3g%%\n您平局率為%.3g%%\n您的綜合分?jǐn)?shù)為%.3g\n對(duì)您成果的評(píng)語(yǔ):",y,n,p,f);

if(f20

if(f>40

if(f>60

if(f>80printf("\n任憑輸入幾個(gè)字符按回車(chē)關(guān)閉程序\n");

scanf("%d",

}

if(dn==r)

{

printf("平手,連續(xù)\n");

p++;

}

else

switch(dn)

{

case'c':if(r=='j')

{

printf("電腦WIN!!錘子:剪刀\n");n++;

}

else

{

printf("人WIN!錘子:布\n");y++;

}break;

case'j':if(r=='b')

{

printf("電腦WIN!剪刀:布\n");n++;

}

else

{

printf("人WIN!剪刀:錘子\n");y++;

}break;

case'b':if(r=='c')

{

printf("人WIN!剪刀:錘子\n");y++;

}

else

{

printf("電腦WIN!布:錘子\n");n++;

}break;

}

}while(r==dn);

}while(r=='j'||r=='b'||r=='c');

}

六、程序運(yùn)行結(jié)果

測(cè)試:

①顯示主菜單界面

②輸入界面

③輸出界面

④結(jié)果統(tǒng)計(jì)界面

⑤嬉戲結(jié)束界面

七、設(shè)計(jì)總結(jié)

此的程序?qū)嵲O(shè)計(jì)試驗(yàn)是對(duì)我進(jìn)入高校以來(lái)學(xué)習(xí)程序設(shè)計(jì)語(yǔ)言成果的一個(gè)檢

驗(yàn)。自己動(dòng)手,自己發(fā)覺(jué)和解決問(wèn)題,學(xué)會(huì)了獨(dú)立,自主的思索,發(fā)覺(jué)了自己的很多不足。平常沒(méi)有把握好的學(xué)問(wèn)在這次試驗(yàn)中徹底暴露出來(lái),經(jīng)過(guò)不斷思索,不斷查閱資料和上機(jī)運(yùn)行,解決其中大部分問(wèn)題,當(dāng)然還存在一些問(wèn)題沒(méi)有解決。我相信在以后的學(xué)習(xí)能夠解決好它們。但是,收獲還是不小的,我不僅對(duì)C的操作有了進(jìn)一步的把握,還了解到了程序設(shè)計(jì)的書(shū)寫(xiě)風(fēng)格及其解釋的格式。

當(dāng)我選擇編寫(xiě)小嬉戲“石頭剪子布”這個(gè)題目時(shí),一開(kāi)頭想運(yùn)用大量函數(shù)及循環(huán)來(lái)完成,但是在漸漸琢磨之后,覺(jué)得這個(gè)程序可以簡(jiǎn)化,于是轉(zhuǎn)變了編程思路。當(dāng)然還有不少文件的讀寫(xiě)問(wèn)題,不過(guò)還是通過(guò)不斷測(cè)試之后順當(dāng)解決了。另外一點(diǎn)要說(shuō)的就是這個(gè)程序用了許多的選擇循環(huán),因此對(duì)于循環(huán)的掌握要非常當(dāng)心。

還有一點(diǎn)體會(huì)就是,書(shū)上和老師教的內(nèi)容是有限的,我們需要不斷地靠自己去學(xué)習(xí),向他人請(qǐng)教,學(xué)會(huì)利用網(wǎng)絡(luò)等了解學(xué)問(wèn)的平臺(tái)去學(xué)習(xí)和把握更多的學(xué)問(wèn)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論