課程設(shè)計-擲骰子游戲設(shè)計

課程設(shè)計-擲骰子游戲設(shè)計

ID:6597851

大小:306.04 KB

頁數(shù):15頁

時間:2018-01-19

課程設(shè)計-擲骰子游戲設(shè)計_第1頁
課程設(shè)計-擲骰子游戲設(shè)計_第2頁
課程設(shè)計-擲骰子游戲設(shè)計_第3頁
課程設(shè)計-擲骰子游戲設(shè)計_第4頁
課程設(shè)計-擲骰子游戲設(shè)計_第5頁
資源描述:

《課程設(shè)計-擲骰子游戲設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、C++課程設(shè)計華東交通大學(xué)基礎(chǔ)學(xué)院C++課程設(shè)計報告題目:擲骰子游戲的分析與設(shè)計姓名:張春梅學(xué)號:20080810010101班級:08信息與計算科學(xué)(1)班學(xué)年學(xué)期:2009~2010學(xué)年第一學(xué)期日期:2009年12月21日14C++課程設(shè)計目錄一擲骰子游戲設(shè)計需求分析21、擲骰子游戲需求22、游戲?qū)崿F(xiàn)方式3二類關(guān)系圖和類主要成員函數(shù)和成員變量4三模塊的設(shè)計分析51、游戲類(classPlayer)的說明52、游戲類(classPlayer)的流程圖83、程序運行結(jié)果:11四存在的問題與不足及總結(jié)13五擲骰子游戲使用說明書(操作手冊)1414C++課程設(shè)計一擲骰子游戲設(shè)計需求分析

2、1、擲骰子游戲需求:1)假如有n個學(xué)生排成一圈,編號從1到n,每個人有初始積分,不防設(shè)為100。2)從1號開始擲骰子,骰子出現(xiàn)后,根據(jù)點數(shù)減去擲骰人的相應(yīng)積分,如減去10*(6-點數(shù)),然后根據(jù)點數(shù)多少,就依次向后數(shù)擲骰的點數(shù)同等數(shù)量的人,被數(shù)到的最后一個人繼續(xù)擲骰子,計算積分,依此類推。3)如果某人擲骰后,其積分小于等于0則出列,余下的人繼續(xù)按照此法進(jìn)行游戲,直到剩下最后一個人,為勝利者。4)要求打印每次出列的人的編號,擲骰子的次數(shù),當(dāng)前積分。并打印最后勝利者的相應(yīng)信息。5)要求用環(huán)鏈表以及類來實現(xiàn)這個程序。6)選做:問擲骰m次后,還剩下幾個人積分多少,顯示出來。14C++課程設(shè)

3、計2、游戲?qū)崿F(xiàn)方式:為了實現(xiàn)游戲的上述功能,在整個程序的設(shè)計中構(gòu)造了一個游戲類(classplayer)。下面是游戲類(classplayer)的成員函數(shù)實現(xiàn)的功能:1)成員函數(shù)Player(char*pName,intid)用于儲存參賽者的姓名和他們的編號;2)成員函數(shù)Player::Integral(intnumber)用于計算參賽者的當(dāng)前積分和擲骰子的次數(shù)。3)成員函數(shù)Player::Initial()用于創(chuàng)建參賽者的鏈表。4)成員函數(shù)Player::Game()用于判斷是否要有參賽者出列并記錄當(dāng)前參賽者的信息和擲骰子的次數(shù)、點數(shù)。5)成員函數(shù)Display()用于打印本次游

4、戲打印每次出列的人的編號,擲骰子的次數(shù)和最后勝利者的相應(yīng)信息。14C++課程設(shè)計二類關(guān)系圖和類主要成員函數(shù)和成員變量Player類code;countscorename[20]numOfPlayerPlayer*head;Player*next;Player()Integral()Display()~Player()Initial()Game()code//每位參賽者的編號count//每位參賽者擲骰子的次數(shù)score//參賽者的積分name[20]//參賽者的姓名numOfPlayer//參加游戲總?cè)藬?shù)14C++課程設(shè)計三模塊的設(shè)計分析1.游戲類(classPlayer)的說明1

5、).構(gòu)造函數(shù)Player(char*pName,intid)用于儲存參賽者的姓名和他們的編號;Player::Player(char*pName,intid){code=id;score=100;count=0;strcpy(name,pName);}先是從程序中輸入?yún)①愓呷藬?shù),通過DOS屏幕的提示依次輸入?yún)①愓叩男彰?,系統(tǒng)會自動給參賽者編號,而這些信息由構(gòu)造函數(shù)Player儲存。2).Player::Integral(intnumber)用于計算參賽者的當(dāng)前積分和擲骰子的次數(shù)。Player::~Player(){Player*t;Player*p=head;for(inti=1;

6、i<=numOfPlayer;i++){t=p;if(i!=numOfPlayer){p=p->next;}deletet;}}intPlayer::Integral(intnumber){count=count+1;score-=(6-number)*10;if(score<=0)return0;elsereturn1;}通過構(gòu)造函數(shù)Integral()來計算參賽者的當(dāng)前積分和擲骰子的次數(shù)。另外該函數(shù)被后面的Game()函數(shù)調(diào)用,用于判斷是否有參賽者出列。3).析構(gòu)函數(shù)Player::~Player()。因為分配了堆內(nèi)存,所以當(dāng)程序結(jié)束時要把空間給釋放。14C++課程設(shè)計4).P

7、layer::Initial()用于創(chuàng)建參賽者的鏈表。Player*ps;//創(chuàng)建的結(jié)點指針Player*pend;//鏈尾指針,用于在其后面插入結(jié)點Player::Initial(){intid;intm;Player*ps;Player*pend;while(1){cout<<"下面請輸入?yún)①愓呷藬?shù):";cin>>m;numOfPlayer=m;for(id=1;id<=m;id++){cout<<"請輸入"<

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。