freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于c的21點游戲的設計與開發(fā)—畢業(yè)論文(編輯修改稿)

2025-06-20 01:11 本頁面
 

【文章內(nèi)容簡介】 數(shù)充分體現(xiàn)了類的面向?qū)ο缶幊痰膬?yōu)點。 程序中一共有 13張撲克牌可以隨機抽取,設計了一個 random函數(shù)實現(xiàn)。大于 10的點數(shù)為 10, A 根據(jù)情況點數(shù)不同,當前點數(shù)小于 11時為 11點,大于 10時則為 1 點。用 if判斷語句控制。 莊家永遠不會暴莊,莊家取下一張牌之前先判定取牌后總點數(shù)是否會大于 21點,大于的話就拒絕取下一張,小于時就繼續(xù)取牌,在函數(shù)中首先 隨機產(chǎn)生下一張牌,接著用條件語句判定原有點數(shù)與新牌的點數(shù)之和是否大于 21點,然后決定是否取牌。 隨機產(chǎn)生的 1~13的數(shù)據(jù)為整型,設計一個轉(zhuǎn)換函數(shù) changechar將其轉(zhuǎn)換為撲克的字符形式,主要考慮到對 10的轉(zhuǎn)化輸出,此函數(shù)設計為指針函數(shù)。 可以查看下一張牌,即按 H 鍵,然后按要求輸入密碼, 密碼正確可以看下一張牌,并決定是否要牌。 設計一整型成員函數(shù) chkkey(),判定玩家是否繼續(xù)要牌之前加入對玩家是否輸入 H 鍵的判定,如果輸入 H 則調(diào)用為處理玩家輸入密碼而單獨編寫的成員函數(shù),在該函數(shù)中,首先判定玩家的密 碼輸入是否正確,不正確則返回 0,正確則返回 1。 一個好程序首先應該界面清晰易讀。本程序?qū)缑嬖O計處理做了很多努力,盡量使程序運行界面易于分辨。 對于數(shù)字輸入,由于字符和數(shù)字可以混用,用一般的整型數(shù)據(jù)輸入方式,當輸入字符也可以執(zhí)行,并且輸入漢字時程序就會變死,極無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 15 易產(chǎn)生錯誤。用指針的方式動態(tài)申請字符數(shù)組,然后對每個輸入的字符即數(shù)組的每個元素判斷是否在 0~9之間,再作相應的處理,這樣即可很好地處理此種錯誤輸入問題。 類及對象的設計主要體現(xiàn)類的封裝性和面向?qū)ο缶幊痰奶攸c。本程序設計了一個 Game_21類,包含 16個類數(shù)據(jù)成員和 16個類函數(shù)成員。程序所有功能都在類里實現(xiàn),主函數(shù)定義了一個 Game_21 game1對象,然后只調(diào)用了一個類的開始成員函數(shù)啟動程序,因而達到了很好的封裝效果,充分體現(xiàn)了類的面向?qū)ο缶幊痰膬?yōu)點。 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 16 圖 21 數(shù)據(jù)流程圖 軟件運行 新游戲 載入游戲 選擇 先行、后行游戲難度 設置 游戲開始 游戲開始 要牌、出牌 要牌、出牌 判斷輸、贏、和局 保存 保存 退出游戲 操作 操作 操作 操作 判斷 判斷 操作 操作 操作 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 17 第三章 程序設計 功能簡介:本軟件為 21點小游戲,主要實現(xiàn)玩家跟電腦且以電腦為莊家的游戲?qū)崿F(xiàn),玩家可以通過新游戲和退出菜單開始和關(guān)閉游戲,通過“發(fā)牌”、“要牌”、“開 牌”、“洗牌”、“結(jié)束”等按鈕操作游戲。 圖 31 游戲主界面 開始和退出功能實現(xiàn) 圖 32 開始界面 private void 新游戲 ToolStripMenuItem_Click(object sender, EventArgs e) //新游戲,將游戲中所有的數(shù)據(jù)清空或歸位; { index = 0。 count = 0。 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 18 a = 0。 b = 0。 c = 0。 d = 0。 f = 0。 g = 0。 h = 0。 o = 0。 ii = 1。 ss = 0。 aa = 0。 diannao = 0。 q1 = 0。 qq = 0。 duoyu = 0。 xiazhu = 0。 zongshu = 0。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 ()。 = false。 = false。 = false。 = true。 = true。 = true。 = 。 = 。 private void 退出 ToolStripMenuItem_Click(object sender, EventArgs e) { ()。 } 發(fā)牌 功能實現(xiàn) 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 19 圖 33 發(fā)牌按鈕 用 0~53 分別代表撲克牌的 54 張牌面,通過使用 Random 類的 .Next 方法隨機生成 0~53 的偽隨機數(shù),每個數(shù)字分別代表相應的一張撲克牌,使用 (隨機數(shù) % 3 +1)的方法算出牌面對應點數(shù),大于10 點的轉(zhuǎn)為 10 點;另外定義一個變量 ii,作為當前生成的牌是第幾張的標識,配合 switch選擇語句識別當前所發(fā)的牌,并做出相關(guān)的新牌生成,重復牌判斷和點數(shù)累計, 21 點黑杰克判斷以及是否爆點判斷 。 switch (ii) //ii是作為進入玩家加牌的數(shù)值定義,因為玩家是一張一張牌來增加的。 { case 1: //ii的默認值為 1; { 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 20 = (tupian\\)。 //電腦臺面上的第一張牌,為背面,無用 a = (52)。//隨機選出第一張牌,為電腦臺面上的第二張牌,因為是第一張隨機選出的牌,所以不用判斷是否與其它的牌重復 = (tupian\\ + () + .jpg)。 //電腦臺面上的第二張牌,同時 也是作為基礎牌面要計算數(shù)值的第一張牌; d1 = a % 13 + 1。 //將所得的牌轉(zhuǎn)換成 1~13的數(shù)字 if (d1 10) //判斷是否為 1 1 13這三個數(shù)字,如果是,就將它轉(zhuǎn)換為 10; d1 = 10。 b = (52)。//這里往下就是玩家的第一張牌,與之相應的是在文件夾中名字為 0~51的圖片; while (b == a) //當玩家的這個隨機得到的牌與莊家得到的第一張隨機的牌相同時,則重新生成一個隨機數(shù),讓它與前面的牌的點數(shù)不一樣; { b = (52)。 } w1 = b % 13 + 1。 //計算出隨機得到的數(shù)所在的牌的點數(shù) if (w1 10) //當?shù)玫降狞c數(shù) 10的時候,即 1 1 13,將它們變成 10(作為 21點游戲的規(guī)則而設定的) w1 = 10。 zongshu += w1。 //zongshu是玩家所得的點數(shù)相 加之和的定義 = (tupian\\ + () + .jpg)。 //將玩家隨機得到的第一張牌顯示出來 c = (52)。//這里往下為玩家的第二張牌,一直往下相似的代碼均為此效果; 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 21 while (c == a || c == b) { c = (52)。 } w2 = c % 13 + 1。 if (w2 10) w2 = 10。 zongshu += w2。 = (tupian\\ + () + .jpg)。 勝負判斷功能實現(xiàn) 圖 34 勝負判斷 private void buttonResult_Click(object sender, EventArgs e) { if (zhuangnumber gamernumber) { for (i = 1。 i 6。 i++) { if (ab[i] != 100) [i].Image = [ab[i]]。 } = ()。 (莊家贏了!開始下一局! )。 } else if (zhuangnumber == gamernumber) { 無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 22 for (i = 1。 i 6。 i++) { if(ab[i]!=100) [i].Image = [ab[i]]。 } = ()。 (莊家贏了!開始下一局! )。 } else { for (i = 1。 i 6。 i++) { if (ab[i] != 100) [i].Image = [ab[i]]。 } = ()。 (你贏了!開始下一局! )。 } } private void 結(jié)束 ToolStripMenuItem_Click(object sender, EventArgs e) { ()。 } //游戲規(guī)則在第二個 Form上 private void 游戲規(guī)則 ToolStripMenuItem_Click(object sender, EventArgs e) { Form2 myform = new Form2()。 ()。 } //開始在 panel上添 加 PictureBox并設置其屬性,生成四張無錫科技職業(yè)學院畢業(yè)設計(論文) 基于 C的 21 點游戲的設計與開發(fā) 23 牌,各兩張(莊家有一張隱藏) } zhuangnumber = zhuangnumber + b。 = 未知! 。 Bijiao(out a, out b, gamernumber, ab)。
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1