C語(yǔ)言課程設(shè)計(jì) 21點(diǎn)游戲設(shè)計(jì)
-
資源ID:28913688
資源大?。?span id="ldfsphp" class="font-tahoma">48.52KB
全文頁(yè)數(shù):5頁(yè)
- 資源格式: DOC
下載積分:15積分
快捷下載
會(huì)員登錄下載
微信登錄下載
微信掃一掃登錄
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。
|
C語(yǔ)言課程設(shè)計(jì) 21點(diǎn)游戲設(shè)計(jì)
C語(yǔ)言課程設(shè)計(jì)題 目:程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)班 級(jí):姓 名:指導(dǎo)教師:所屬系部:電子科學(xué)與技術(shù)系2009年 6 月24 日 21點(diǎn)游戲設(shè)計(jì)1 游戲規(guī)則此游戲,原則上是可以由不限定的人數(shù)來(lái)玩,但是隨著參與人數(shù)的增加,在最后成績(jī)的比較方面會(huì)比較的繁瑣,不像兩個(gè)人之間的比賽結(jié)果那么明顯,所以也應(yīng)該將參與人數(shù)控制在一定的范圍之內(nèi)。確定參與人數(shù)后,系統(tǒng)會(huì)隨機(jī)為每個(gè)人發(fā)三張牌,然后計(jì)算這三張牌的和進(jìn)行比較。如果這三張牌的和大于21,則此人將會(huì)輸?shù)舯荣?,除非其他人的和也大?1(即假若每個(gè)人的三張牌的和都大于21時(shí),該局為平局,打成平手)。如果有的和大于21,有的和小于21,則大于21的人輸?shù)舯荣?,再比較小于21的部分,誰(shuí)的三張牌的和最接近21,則誰(shuí)是該局的贏家。一局玩完后,玩者可以根據(jù)自己情況進(jìn)行選擇是否要再玩一局。若選擇再玩時(shí),系統(tǒng)會(huì)再進(jìn)行下一次的循環(huán)。2 程序算法由系統(tǒng)隨機(jī)產(chǎn)生幾組隨機(jī)數(shù),每組3個(gè)隨機(jī)數(shù)。計(jì)算每一組的三個(gè)隨機(jī)數(shù)的和。 比較每組和的大小。得出比賽結(jié)果3 關(guān)鍵算法流程圖總體框架開(kāi)始開(kāi)始Flag=1Y產(chǎn)生隨機(jī)數(shù),求和,比較,得結(jié)果C =Y輸入字符 CY結(jié)束N4 程序代碼/* Note:Your choice is C IDE */#include <stdlib.h>#include <stdio.h>#include <time.h>#define N 5main( )int i,t,flag, j,m;int b8,a3*N; char c;b1=0;flag=1;while (flag) /控制循環(huán)srand(time(NULL); /scanf("%d",&j); /用j控制組數(shù)for(t=0;t<3*j;t+) /產(chǎn)生幾組隨機(jī)數(shù)if (t%3=0)printf("n");at=rand()%13+1;printf("%5d",at); printf("n");for(i=1;i<=j;i+) /求每組隨機(jī)數(shù)的和 for(t=3*(i-1);t<3*i;t+) bi=bi+at; printf("b%d=%dn",i,bi); bi+1=0; printf("n"); for(t=1;t<j;t+) /對(duì)和的大小進(jìn)行排序 for(i=1;i<=j-t;i+) if(bi>bi+1) m=bi+1; bi+1=bi; bi=m; for (i=1;i<=j;i+) printf("%5d",bi); printf("n"); for (i=1;i<=j;i+) /得出結(jié)論 if(bi>21) printf("這一局為第%d個(gè)人贏n是否再玩一局,若輸入Y則繼續(xù)游戲,輸入N結(jié)束游戲n",i-1); getchar(); /與while語(yǔ)句是一個(gè)系統(tǒng) c=getchar(); if(c=Y) flag=1; else flag=0; 5 在程序設(shè)計(jì)中,出現(xiàn)的問(wèn)題和解決方案: 由于是多組數(shù)據(jù)之間的比較,首先在同時(shí)產(chǎn)生幾組隨機(jī)數(shù)時(shí)遇到障礙,產(chǎn)生隨機(jī)數(shù)的代碼是從網(wǎng)上搜索得到的,再加上一些修改,達(dá)到所需的要求,同時(shí)有一些小的細(xì)節(jié)是在老師幫助下完成的。對(duì)于多組數(shù)據(jù)的處理有些麻煩,首先要依次求和,在求和過(guò)程中要注意細(xì)節(jié)問(wèn)題。對(duì)于多組數(shù)據(jù)的比較,最終只能先排序,然后得出結(jié)論,這一個(gè)程序是比較繁雜的。本程序的不足在于最終結(jié)果表達(dá)不直接,應(yīng)再加一些程序讓玩者更加清晰明了。6 體會(huì):本次程序是一個(gè)繁瑣的過(guò)程,是在多次修改加上老師的指導(dǎo)的基礎(chǔ)上才完成的。通過(guò)本次實(shí)驗(yàn),我認(rèn)識(shí)到要想完成一件事需要一次次地嘗試,一次次地修改,然后再進(jìn)行試驗(yàn)。在修改的工程中,要反復(fù)思考問(wèn)題出在何處,要慢慢的找尋,一點(diǎn)點(diǎn)的排除,在老師為我講解時(shí)我也感受到老師做事的毅力。做任何事都要一點(diǎn)點(diǎn)的,腳踏實(shí)地的去做。本次程序設(shè)計(jì)雖然不算完滿,但都是自己一點(diǎn)點(diǎn)做出來(lái)的,還是有很大收獲的。