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

正文內(nèi)容

程序設(shè)計實(shí)踐第5章-閱讀頁

2025-01-23 14:57本頁面
  

【正文】 然后,再為各個圖形元素建立相應(yīng)的保存其特有信息的數(shù)據(jù)結(jié)構(gòu)。/*矩形左上定點(diǎn)和右下定點(diǎn) */ } Rect。 } Point。 /*確定整個容器在屏幕上的坐標(biāo) */ int cBoard[N][M]。 其中數(shù)組 cBoard其取值代表各網(wǎng)格是何種圖形元素:箱子、空格、障礙、目標(biāo)位置,其它必要屬性,可自行酌情添加。 2)對于搬運(yùn)工和箱子的移動效果,可以直接在一個頁面上(即無需使用換頁機(jī)制)操作。 第 5章 綜合程序練習(xí)題 —— 大富翁 1:問題描述 ? 本游戲基于雙人游戲模式的簡單版本。最后當(dāng)一方現(xiàn)金為零時游戲結(jié)束,現(xiàn)金為零的一方失敗,另一方獲,現(xiàn)金為零的一方失敗,另一方獲勝。 ? 在特殊位置提供更多的活動內(nèi)容,如獲得幾輪之內(nèi)不用交罰款、可以奪取他人地產(chǎn)等特權(quán)。數(shù)據(jù)處理設(shè)計將在數(shù)據(jù)結(jié)構(gòu)中提示,下面先提 供一個簡化圖形處理的方案。所以,實(shí)際編程時 只需要把游戲中各個位置的坐標(biāo)從初始位置開始,按實(shí) 際到達(dá)順序用一線性表來管理。當(dāng)指針越 過最后一位時,重新指到初始位置,進(jìn)入下一輪循環(huán)。 1)城市和特殊地區(qū)的結(jié)構(gòu)體: 前面提及的那個線性表就可以由 City作為元素構(gòu)成,這樣只要在初始化時畫出整個地圖,然后將每個城市的 City結(jié)構(gòu)按“難點(diǎn)分析”中所說方法保存下來即可。 第 5章 綜合程序練習(xí)題 —— 大富翁 主要算法提示 通過位圖在屏幕上顯示出一個基本的環(huán)境地圖、游戲雙 方的人物形象、狀態(tài)欄和消息欄。同時應(yīng) 記錄下各圖形元素的位置,以供數(shù)據(jù)處理模塊使用。 第 5章 綜合程序練習(xí)題 —— 賽車 1:問題描述 ? 這里所講的賽車是基于平面第三視角的,即在一個平面的跑道上,由游戲者操控一輛賽車,與電腦控制的多臺賽車比賽。比賽中如果游戲者的賽車與別的賽車相撞,則其速度均減為最小,游戲者必須重新開始加速。本游戲的動畫處理較為復(fù)雜,要求能夠顯示出各賽車前進(jìn)的動態(tài)效果,以及一定的視聽功能。 第 5章 綜合程序練習(xí)題 —— 賽車 難點(diǎn)分析 ? 動畫效果顯示 ? 刷新賽車位置時,先畫出游戲者賽車,然后計算出其他賽車相對游戲者賽車的位置,如果在屏幕范圍內(nèi)則畫出,否則不畫。 ? 為了方便作圖,跑道最好使用同一種顏色,將賽車圖像四周用這種顏色圍上一圈,如寬度為兩個像素點(diǎn),這樣每次移動兩個像素點(diǎn)距離后的顯示刷新只需直接對賽車圖像進(jìn)行一次 putimage函數(shù)操作即可。當(dāng)然,更復(fù)雜的避免閃爍的方法是使用頁交替法。 第 5章 綜合程序練習(xí)題 —— 賽車 設(shè)計及實(shí)現(xiàn)要點(diǎn) 初始化圖形界面 讀取游戲者輸入 修改賽車位置參數(shù) 根據(jù)賽車參數(shù)刷新界面, 重畫色道 到達(dá)終點(diǎn) 是 否 退出系統(tǒng)并清理垃圾 賽車程序的總體結(jié)構(gòu) 第 5章 綜合程序練習(xí)題 —— 賽車 主要數(shù)據(jù)結(jié)構(gòu)提示 ( 一 ) typedef struct tagContainer /*賽車場的容器,描述固定元素的位置 */ { Rect cRacingGround; /*賽車區(qū)域矩形 */ Rect cAutodrome; /*賽車跑道矩形區(qū) */ Rect cColorStrip; /*跑道兩旁的色道矩形區(qū) */ } Container; 1)賽車場的容器結(jié)構(gòu)體:描述固定元素的位置 typedef struct tagColorStripe { unsigned csColor[N]; /*N是事先設(shè)定的色道條數(shù),該表記錄各色道顏色 */ int csStripeOff; /*顯示的最上面一條色道在 csColor中的下標(biāo) */ } ColorStripe; 2)色道結(jié)構(gòu)體: 第 5章 綜合程序練習(xí)題 —— 賽車 主要數(shù)據(jù)結(jié)構(gòu)提示 ( 二 ) typedef struct tagRacingCar { char *rcImage; /*指向賽車圖像 */ size_t rcImageSize; /*賽車圖像大小 */ unsigned rcSpeed; /*賽車速度 */ unsigned rcDisplacement; /*相對原點(diǎn)位移 */ unsigned rcVertical; /*水平位置 */ Point rcAbosoluteCoordiante; /*相對出發(fā)點(diǎn)的絕對距離即豎直位置 */ int rcFlag; /*標(biāo)識賽車身份 */ } RacingCar; 3)賽車結(jié)構(gòu)體: 注意, rcAbosoluteCoordinate最好只是游戲賽車使用,其它賽車的位置根據(jù)前面 提到的方法來計算出其各自位置,這樣可以簡化數(shù)據(jù)處理過程。為了表現(xiàn)出賽車前進(jìn)的效果,可以在車道兩旁加上橫向的顏色不同、相間排列的色道,然后將色道作周期性循環(huán)下移顯示就可以實(shí)現(xiàn)動畫效果。車道兩旁的色道后移速度即為游戲者賽車的前進(jìn)速度。 第 5章 綜合程序練習(xí)題 —— 坦克大戰(zhàn) 1:問題描述 ? 游戲者操控一到兩臺坦克,抵抗電腦控制的多臺坦克,保衛(wèi)金鷹(特指一個游戲者需要保護(hù)的物體);雙方通過火炮攻擊對方,坦克被炮彈擊中即被摧毀;對戰(zhàn)雙方如果還有在屏幕上活動的可用坦克,則在有坦克被摧毀后才能補(bǔ)充上來。 2:基本功能 ? 游戲場景 、 游戲者控制的和電腦控制的坦克的運(yùn)動狀況 、 游戲狀態(tài)判別勝負(fù) 、 提供足夠的按鍵實(shí)現(xiàn)游戲者對坦克的控制 3:高級功能 ? 視聽效果 ? 鼠標(biāo)控制 ? 電腦坦克智能化 第 5章 綜合程序練習(xí)題 —— 坦克大戰(zhàn) 難點(diǎn)分析 本游戲難點(diǎn)主要集中在對坦克自動化控制的算法上。 由于游戲者坦克運(yùn)動不確定性太高,為電腦坦克搜索一 條正確的攻擊游戲者坦克的路徑難度較高。 /*游戲框矩形區(qū) */ unsigned cBorderColor。 /*游戲框背景顏色 */ int cBoard[N][M]。 1)游戲框的結(jié)構(gòu)體: 像前面講述一樣,固定的圖形元素可以在初始化時一次性完成,其位置記錄 在 Container中即可。 /*指向坦克圖像緩沖區(qū)的指針 */ size_t tImageSize。 /*坦克在網(wǎng)格中的坐標(biāo) */ char tDirctionOff[MAX_STEP]。 /*標(biāo)識坦克身份 */ } Tank。 第 5章 綜合程序練習(xí)題 —— 坦克大戰(zhàn) 主要數(shù)據(jù)結(jié)構(gòu)提示 ( 三 ) typedef struct tagStatusBox { Rect sbRect。 /*對話框名 */ char *sbStatusText。 /*對話框背景色 */ unsigned sbBorderColor。 3)基本對話框結(jié)構(gòu)體(每個對話框只包含一類信息,這主要是為了從可擴(kuò)展性考慮。 第 5章 綜合程序練習(xí)題 —— 坦克大戰(zhàn) 主要算法提示 對于坦克大戰(zhàn)中的固定元素和對話框等只改動消息欄文 本的元素,可在初始化時統(tǒng)一輸出到屏幕上,以后根據(jù) 需要改變對話框的消息文本。坦克的管理較為復(fù)雜,不過對于其移動, 也可使用一個統(tǒng)一的過程來管理,這個過程只接收當(dāng)前 位置和下一步的偏移。 另外,也希望能充分發(fā)揮自我能動性,在大型程序的內(nèi)容分解、算法設(shè)計、人機(jī)界面、執(zhí)行效率等方面進(jìn)行較深入的創(chuàng)新性思考與個性化設(shè)
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1