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

正文內(nèi)容

第5章綜合程序練習題(參考版)

2024-10-02 15:57本頁面
  

【正文】 。 第 5章 綜合程序練習題 —— 總結 通過以上大型程序的設計練習,可運用前幾章講述的高級程序設計思想和方法,使自己對復雜、綜合性程序設計有一個全面的領會和把握,提高自身的設計能力。對可摧毀障礙的管理,使 用一個統(tǒng)一的過程,當某個單位網(wǎng)格狀態(tài)改變時,調(diào)用 該過程即可。同時,如果發(fā)現(xiàn)前期設計有疏漏,也便于更改): 如果對話框不多,可分別管理,如果較多,可以設計一個像游戲框( Container)那樣的結構體來進行統(tǒng)一管理。 /*對話框邊界顏色 */ } StatusBox。 /*消息狀態(tài)文本 */ unsigned sbBackgroundColor。 /*對話框矩形區(qū) */ char *sbTitle。 2)坦克結構體: 另外,金鷹也可使用這一結構,只需用 tFlag加以區(qū)別即可。 /*坦克方向偏移數(shù)組,用以確定坦克路徑,具體值自己確定 */ char tFlag。 /*坦克圖像大小 */ Point tLocation。 第 5章 綜合程序練習題 —— 坦克大戰(zhàn) 主要數(shù)據(jù)結構提示 ( 二 ) typedef struct tagTank { char *tImage。 /*N, M是事先定義的游戲框網(wǎng)格數(shù) */ /*cBoard[][]主要記錄各網(wǎng)格是何種元素,作為坦克前進的依據(jù) */ } Container。 /*游戲框邊界顏色 */ unsigned cBackgroundColor。 第 5章 綜合程序練習題 —— 坦克大戰(zhàn) 設計及實現(xiàn)要點 游戲是否結束 初始化圖形界面 讀取游戲者輸入 開炮 , 并顯示視聽效果 根據(jù)當前數(shù)據(jù)移動坦克或不反應 電腦坦克按預先 設定做出相應反應 更新狀態(tài)欄消息 游戲者選擇開炮 游戲者選擇移動 退出系統(tǒng)并清理垃圾 是 否 坦克大戰(zhàn)程序的總體結構 第 5章 綜合程序練習題 —— 坦克大戰(zhàn) 主要數(shù)據(jù)結構提示 ( 一 ) typedef struct tagContainer { Rect cRect。對 于向固定目標前進的算法,可以先對 N*M的網(wǎng)格做一次 寬度優(yōu)先搜索( BFS),算法中注意判重,避免消耗過多 的搜索時間,這樣可以在較短的時間內(nèi)找出一條最短路 徑。游戲者坦克被全部摧毀或金鷹被摧毀則電腦方獲勝,若電腦坦克被全部摧毀則游戲者獲勝。其它賽車始終保持同一速度,并保存其各自的相對原點的距離,根據(jù)游戲者賽車相對原點距離就可算出其他賽車在當前屏幕中的位置。游戲中,始終保持游戲者賽車在屏幕上的垂直位置不變,這樣,就可以將游戲者的賽車作為其他物體的參照,方便各輛賽車座標位置的換算。 第 5章 綜合程序練習題 —— 賽車 主要算法提示 為了數(shù)據(jù)處理的方便,采用直道作為賽車道,并以初始點作為原點。不過使用頁交替法時仍應盡量減少作圖以使畫面顯示流暢。用這方法可以避免圖像閃爍現(xiàn)象。注意,相對位置只應計算在屏幕上的垂直高度,水平位置應保留在各賽車的結構體中。 2:基本功能 ? 游戲環(huán)境 、 鍵盤控制賽車 、 視聽效果 、 游戲控制 、 動畫效果顯示 3:高級功能 ? 高級視聽效果 ? 提供兩人對陣游戲模式 ? 提供不同的游戲關卡,不同關卡的賽車數(shù)目和速度都可選擇。游戲者如果第一個到達終點,則獲勝,否則失敗。游戲者能對賽車的操作有:向左、向右、加速、減速、停車。開 始后輪流為每位游戲者提供一個前進的步數(shù),游戲者到 達一個地方后,系統(tǒng)根據(jù)游戲規(guī)則,做出相應的判定并 調(diào)整其持有的現(xiàn)金數(shù)量。注意:由于畫面比較 復雜,最好是調(diào)用位圖或已轉(zhuǎn)換成其它圖像格式的文件 ,否則單獨繪制一個地圖就會有較大的工作量。 第 5章 綜合程序練習題 —— 大富翁 主要數(shù)據(jù)結構提示 ( 二 ) 2)人物的結構體: typedef struct tagPeople { char *pImage; /*指向人物圖像緩沖區(qū)的指針 */ char *pBackgroundImage; /*指向被人物圖像覆蓋的圖像緩 沖區(qū)的指針 */ size_t pImageSize; /*圖像大小 */ Point pCoordinate; /*人物圖像左上角坐標 */ int pCash; /*記錄該人物的剩余現(xiàn)金 */ int pStatus; /*標示該人物的狀態(tài),即是處于可移動還是在醫(yī)院狀態(tài)中,當 pStatus為 0時可移動,正值表示住院,負值表示原地停留;絕對值為還需停留的天數(shù) */ } People; 狀態(tài)欄和消息欄的管理比較簡單,只需要隨游戲進行更新相關信息就可以了。 第 5章 綜合程序練習題 —— 大富翁 設計及實現(xiàn)要點 大富翁程序的總體結構 第 5章 綜合程序練習題 —— 大富翁 主要數(shù)據(jù)結構提示 ( 一 ) typedef struct tagCity { Point cCenter; /*記錄人物進入城市時,其圖像左上角對應在當前圖 形模式坐標系中的坐標 */ int cSpecialEvent; /*該城市的特殊地區(qū)、特殊位置;為了處理方便, 可自行定義一組描述這些地區(qū)和位置的宏定義 */ } City。每走一步就將線性表的 指針后移一位,就可取得下一個城市的位置。 由于實際活動的圖形元素只有游戲者代表人物,其移 動只取決于當前位置和下一個位置。 ? 提供游戲進度保存功能 第 5章 綜合程序練習題 —— 大富翁 難點分析 本游戲的難點主要集中在圖形處理和數(shù)據(jù)處理的簡化 設計上。 2:基本功能 ? 游戲的環(huán)境地圖構建 、 游戲狀態(tài)顯示 、 游戲階段的輸入只包含擲骰子及確定相關選項 3:高級功能 ? 提供更多的特殊地區(qū),如旅館、監(jiān)獄、股票交易中心、銀行,并為之設計相應的活動規(guī)則。游戲在一個由城市、道路、及其他特殊建筑組成的地圖上進行,游戲雙方通過擲骰子獲得的前進或后退步數(shù)不斷地前進或后退,當落在可以購買空地的位置時,如果現(xiàn)金足夠則可選擇購買之;當落在自己已買下地產(chǎn)的位置時,如現(xiàn)金足夠則可選擇建設之;當落在對手地產(chǎn)的位置上時,則要支付相應的罰金;落在地圖中某些特殊位置還會有特殊的懲罰或獎勵。 3)對于智能識別和自動移動功能,只要根據(jù)網(wǎng)格的狀態(tài)屬性 (即當前各網(wǎng)格是何種物體 )加以處理即可。 第 5章 綜合程序練習題 —— 搬運工 主要數(shù)據(jù)結構提示 2)搬運工和箱子的結構體: 由于墻壁、障礙物和箱子的目標位置都是固定不變的,它們的圖形可以在初始化時一次性完成,而其位置則可保存在上面的 Container中,下面是搬運工和箱子的結構體: typedef struct tagObject { char *oImage; /*指向圖像緩沖區(qū)的指針 */ size_t oImageSize; /* size_t 定義為 unsigned,
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1