c 游戲 編程,C哪種更適合小學(xué)生?
Scratch更適合小學(xué)生。、C、Python是高級(jí)編程語(yǔ)言,其語(yǔ)法和人類自然語(yǔ)言比較接近,需要經(jīng)過編譯器或解釋器才能轉(zhuǎn)換為機(jī)器語(yǔ)言。還有一些更加易于學(xué)習(xí)的可視化語(yǔ)言,比如Scratch就是一種可視化語(yǔ)言,它們是在高級(jí)語(yǔ)言的基礎(chǔ)上,經(jīng)過包裝或定制后,才成為更加容易學(xué)習(xí)和理解的編程語(yǔ)言的。
你可能會(huì)問,為什么不直接學(xué)習(xí)C、C++、Python這樣的高級(jí)語(yǔ)言,而要學(xué)習(xí)Scratch這樣的可視化語(yǔ)言呢?這主要是因?yàn)镾cratch對(duì)于青少年來說更加容易理解和上手。Scratch包含了講故事、做動(dòng)畫、設(shè)計(jì)游戲等功能元素,而這些元素都特別能夠激發(fā)孩子的學(xué)習(xí)興趣。等到他們通過Scratch逐漸熟悉和掌握了編程語(yǔ)言的一些基本原理,再去進(jìn)一步學(xué)習(xí)Python或C++等高級(jí)語(yǔ)言,就會(huì)容易很多。
因此,學(xué)習(xí)編程需要一個(gè)從易到難的過程,而Scratch真的是一種更不錯(cuò)的入門語(yǔ)言,對(duì)于孩子來說更是最佳的選擇。
目前孩子學(xué)習(xí)Scratch 使用最多的是這本《Scratch 3.0少兒游戲趣味編程》
《Scratch 3.0少兒游戲趣味編程》特色:
“做中學(xué)”的方法和理念。學(xué)習(xí)任何具有實(shí)踐價(jià)值的知識(shí)和技能,最好的方式就是“做中學(xué)”,也就是通過實(shí)際操作和練習(xí)來熟悉和掌握必備的知識(shí)。本書精選了15個(gè)游戲案例,讀者通過按部就班的實(shí)際操作,就可以掌握Scratch編程技能,并且編寫出趣味盎然的游戲。注重基礎(chǔ)知識(shí)的介紹和鋪墊。在初次學(xué)習(xí)程序設(shè)計(jì)時(shí),很多初學(xué)者經(jīng)常遇到的“攔路虎”,要么是大量的基礎(chǔ)概念和術(shù)語(yǔ),要么是對(duì)編程模塊不熟悉。本書考慮到這兩方面的問題,專門安排了一章介紹Scratch的基本概念和程序設(shè)計(jì)的一些基本概念,并在附錄部分給出了Scratch 3.0中常用的積木的簡(jiǎn)介,為初學(xué)者掃清障礙。游戲選取注意代表性和趣味性,區(qū)分不同的難度層次。本書選取的15款游戲,分為初級(jí)難度(8個(gè))、中級(jí)難度(4個(gè))和高級(jí)難度(3)個(gè)。一方面,這些游戲很有代表性(或者說是典型性),它們很可能是讀者玩過或者非常熟悉的游戲(尤其是3個(gè)具有高級(jí)難度的游戲)。讀者用Scratch 3.0編寫出自己曾經(jīng)玩過的游戲,將會(huì)獲得很大的成就感,從而激發(fā)出強(qiáng)烈的學(xué)習(xí)興趣。其次,這些游戲本身很有趣味性,讀者可以根據(jù)不同的難度需求,跟著本書逐步編寫實(shí)現(xiàn),并且在試玩的過程中,可以不斷調(diào)整參數(shù)或進(jìn)行擴(kuò)展,熟悉編程技術(shù)和發(fā)揮創(chuàng)意。根據(jù)讀者的意見,本書基于Scratch 3.0的版本,對(duì)游戲進(jìn)行了更新和增加。根據(jù)讀者對(duì)《Scratch 2.0少兒游戲趣味編程》給出的反饋,我們?cè)谟螒虻倪x取上也做了精心的調(diào)整。用3款更具有趣味性和新穎性的小游戲做了替換,并且新增了一款較為高級(jí)并且具有一定趣味性和代表性的游戲——“泡泡龍”。使用“小貼士”和特殊的板塊,詳細(xì)講解游戲中用到的知識(shí)和技巧,強(qiáng)調(diào)一些需要讀者注意的地方,或者是解釋程序設(shè)計(jì)中的算法難點(diǎn)。分享一下本書第三章部分內(nèi)容,看一看孩子是否喜歡這樣的閱讀風(fēng)格。
第3章 初級(jí)游戲編程之一對(duì)程序設(shè)計(jì)初學(xué)者尤其是青少年來說,用Scratch 3.0編寫趣味游戲是一種很好的學(xué)習(xí)方法。一方面,Scratch 3.0可視化的編程方式簡(jiǎn)單易學(xué),可以比較方便、快速地實(shí)現(xiàn)程序邏輯;另一方面,Scratch 3.0的項(xiàng)目編輯器融合了角色、造型、背景、繪圖、圖像、聲音、坐標(biāo)、動(dòng)畫等多種功能,這使得Scratch 3.0非常適合用來編寫妙趣橫生的游戲。在閱讀本書后面的各章的時(shí)候,相信你會(huì)非常深刻地體會(huì)到這一點(diǎn)。
本書從第3章到第8章,都將集中介紹一些既有趣味性又有典型性的游戲的開發(fā),從而幫助讀者掌握Scratch 3.0編程的技巧。在本章中,我們通過實(shí)際動(dòng)手來開發(fā)4款比較簡(jiǎn)單的游戲——“大家來找茬”“迷宮探險(xiǎn)”“打地鼠”和“翻翻樂”。
3.1 大家來找茬
“大家來找茬”這款游戲又叫“找不同”。在這個(gè)游戲中,玩家要從兩張只有細(xì)微差異的圖片中找出不同的地方。
這款游戲共有9個(gè)角色,1個(gè)角色是需要查找不同的兩張圖片,還有5個(gè)角色是兩張圖片中有差異的地方,另外3個(gè)角色表示開始界面、開始按鈕和玩法介紹。
這個(gè)游戲的原理很簡(jiǎn)單。玩家要在左側(cè)圖片中,把和右側(cè)圖片不同的地方用具有兩個(gè)造型的角色表示出來,如果玩家用鼠標(biāo)點(diǎn)中了有差異的地方,相應(yīng)的角色就會(huì)切換為帶有紅色畫圈的造型,表示玩家查找正確。
我們先來看看這個(gè)游戲要用到的變量。
1.變量
這個(gè)游戲只有1個(gè)變量,它負(fù)責(zé)記錄找到了幾個(gè)不同的計(jì)數(shù)器,這是個(gè)隱藏變量。
小貼士
注意,“計(jì)數(shù)器”變量前面的復(fù)選框是沒有選中的,表示這個(gè)變量是隱藏的,即該變量的監(jiān)視器,不會(huì)在舞臺(tái)上顯示出來。
2.角色和編程步驟
把默認(rèn)的“小貓”角色刪除,然后添加自己的角色。
第1個(gè)角色:開始界面
我們添加的第一個(gè)角色是“開始界面”,它有1個(gè)造型。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),將角色移至最前面。這時(shí)候開始界面遮蓋住了“開始按鈕”,所以還得后移1層,才可以暴露出“開始按鈕”角色。最后,顯示“開始界面”角色。
第2步
當(dāng)接收到“開始游戲”消息時(shí),隱藏“開始界面”角色。需要注意的是,在點(diǎn)擊 “開始按鈕”角色時(shí),會(huì)廣播消息“開始游戲”,我們稍后會(huì)看到這一點(diǎn)。
第2個(gè)角色:“開始按鈕”
這個(gè)角色的造型如下。
它也有兩段腳本。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),將角色移至最前面。顯示角色。
第2步
當(dāng)點(diǎn)擊角色時(shí),隱藏角色,并廣播消息“開始游戲”。
第3個(gè)角色:“玩法介紹”
這個(gè)角色的造型如下。
為了更容易理解如何玩游戲,我們還制作了一段錄音,對(duì)玩法做出了說明。
其腳本如下所示。
當(dāng)接收到“開始游戲”消息時(shí),將角色移至最前面。然后顯示角色和播放聲音“錄音1”,以便讓玩家能夠了解如何玩游戲。之后,隱藏角色。
第4個(gè)角色:用來找不同的圖片
其造型如下所示。
從聲音庫(kù)中為該角色選擇了一個(gè)聲音“clapping”,當(dāng)玩家選中所有不同之處時(shí),播放該聲音以表示祝賀玩家。
其腳本如下所示。
當(dāng)接收到 “開始游戲”消息時(shí),該角色移動(dòng)到舞臺(tái)中央。后移圖層50層,目的是讓它在所有角色之下,以免覆蓋其他角色,這樣后面介紹的“不同1”等角色才能顯示在這張圖片之前。將變量“計(jì)數(shù)器”設(shè)置為0。在這個(gè)變量<5時(shí),一直等待。當(dāng)“計(jì)數(shù)器”等于5時(shí),會(huì)播放聲音“clapping”,并宣布找到所有不同的獲勝消息。
小貼士
這個(gè)積木表示等待條件成立時(shí),再執(zhí)行下面的積木。
與之類似的是積木,它表示重復(fù)執(zhí)行其中的積木,直到條件成立時(shí),再執(zhí)行其后面的積木。
第5個(gè)角色:不同1
它有兩個(gè)造型,正常形態(tài)的造型叫作“1-a”,用紅圈圈出來的形態(tài)的造型叫作“1-b”。
它有一個(gè)聲音,是從聲音庫(kù)中選擇的“boing”,當(dāng)選中該角色后,會(huì)播放該聲音。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),將造型切換為“1-a”,也就是沒有紅圈的造型。
第2步
當(dāng)點(diǎn)擊角色時(shí),將造型切換為“1-b”,也就是帶有紅圈的、表示選中了不同之處的造型。然后將變量“計(jì)數(shù)器”加1。 播放聲音“boing”,表示成功地找到了一處不同。
第6個(gè)角色:不同2
其造型如下。
它也有聲音“boing”。
“不同2”角色的腳本和“不同1”角色的腳本基本一致,這里不再贅述,直接把腳本給出來。
第7個(gè)角色:不同3
其造型如下。
聲音如下。
這個(gè)角色的腳本和 “不同1” 角色的腳本基本一致,這里不再贅述,直接把腳本給出來。
第8個(gè)角色:不同4
其造型如下。
聲音如下。
這個(gè)角色的腳本和 “不同1” 角色的腳本基本一致,這里不再贅述,直接把腳本給出來。
第9個(gè)角色:不同5
其造型如下。
聲音如下。
這個(gè)角色的腳本和 “不同1” 角色的腳本基本一致,這里不再贅述,直接把腳本給出來。
好了,這個(gè)游戲很簡(jiǎn)單,到這里就完成了。其中,最重要的核心內(nèi)容,也就是對(duì)各個(gè)不同的角色的腳本編程,這也是所有Scratch 3.0游戲的一個(gè)特點(diǎn)。快來運(yùn)行你的游戲,找找不同吧!
讀者也可以自己動(dòng)手,按照這個(gè)游戲程序的編寫過程,嘗試增加新的不同圖片,邀請(qǐng)好朋友一起來玩。
3.2 迷宮探險(xiǎn)
在“迷宮探險(xiǎn)”游戲中,小企鵝要拿到4把藏在迷宮4個(gè)角落的鑰匙,才能獲得勝利。
1.變量
在這個(gè)游戲中,我們定義了3個(gè)變量:
x:小企鵝的x坐標(biāo),這是個(gè)隱藏變量。
y:小企鵝的y坐標(biāo),這是個(gè)隱藏變量。
鑰匙數(shù)量:表示找到了幾把鑰匙,這是個(gè)隱藏變量。
2.背景
我們以迷宮地圖作為背景,背景庫(kù)中沒有相應(yīng)的圖形,需要從本地來上傳迷宮地圖。
3.角色
這個(gè)游戲中共有5個(gè)角色,分別是4把鑰匙和一個(gè)企鵝。下面依次介紹。
第1個(gè)角色:企鵝
我們選擇角色庫(kù)中的企鵝作為游戲的“主角”。
為這個(gè)角色添加4個(gè)聲音,分別是聲音庫(kù)中的“l(fā)o gliss tabla”“fairydust”和“clapping”以及本地上傳的“移動(dòng)”的聲音。當(dāng)企鵝移動(dòng)時(shí)播放“移動(dòng)”聲音,當(dāng)企鵝撞墻時(shí)播放“l(fā)o gliss tabla”聲音,當(dāng)企鵝撿到鑰匙時(shí)播放“fairydust”聲音,當(dāng)集齊4把鑰匙時(shí)播放“clapping”聲音。
這個(gè)角色有3段腳本。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),通過方向鍵來移動(dòng)角色。
首先,游戲一開始,將企鵝角色放置到迷宮中央。設(shè)置角色的大小,并將其移到最前面。作為初始化的一個(gè)步驟,還要將“鑰匙數(shù)量”變量設(shè)置為0。
后續(xù)的代碼放入到一個(gè)循環(huán)中,將重復(fù)執(zhí)行。將角色的x坐標(biāo)保存到變量x中,將角色的y坐標(biāo)保存到變量y中。如果按下左移鍵,將x坐標(biāo)增加-5,表示向左移動(dòng),然后播放聲音“移動(dòng)”,直到播放完畢。如果按下右移鍵,將x坐標(biāo)增加5,表示向右移動(dòng),同時(shí)播放“移動(dòng)”聲音。如果按下上移鍵,將y坐標(biāo)增加5,表示向上移動(dòng),同時(shí)播放“移動(dòng)”聲音。如果按下下移鍵,將y坐標(biāo)增加-5,表示向下移動(dòng),同時(shí)播放“移動(dòng)”聲音。如果碰到迷宮墻壁的顏色,角色將回到移動(dòng)前的位置,表示碰到墻壁了,無(wú)法移動(dòng),同時(shí)播放“l(fā)o gliss tabla”聲音,表示撞墻的聲音。
小貼士
請(qǐng)注意,企鵝移動(dòng)時(shí),播放聲音用的積木是,而不是。這是因?yàn)椋婕铱赡軙?huì)一直按住方向鍵,如果使用積木,那么第1個(gè)聲音沒有結(jié)束播放,第2個(gè)聲音又開始播放,就變成了噪音。而使用積木,會(huì)等這個(gè)聲音播放完后,才繼續(xù)執(zhí)行后邊的腳本,就不會(huì)有噪音。另外,如果你覺得企鵝走得太慢,也可以從腳本中拿掉積木,那么企鵝馬上就可以奔跑起來。
第2步
當(dāng)點(diǎn)擊綠色旗幟后,首先判斷條件
是否成立。如果條件成立,就表示企鵝已經(jīng)找到了全部4把鑰匙;如果條件不成立,表示還沒有找到全部鑰匙,一直等待。如果條件成立,會(huì)停止角色的其他腳本。然后把企鵝移動(dòng)到屏幕中央,將它逐漸放大,播放聲音“clapping”,并宣布玩家已經(jīng)找到了全部鑰匙,表示玩家獲勝。
第3步
當(dāng)接收到“找到鑰匙”消息時(shí),播放聲音“fairydust”。
第2個(gè)角色:鑰匙1
這個(gè)角色只有如下一個(gè)造型,我們將其放置到屏幕的左下角。
這個(gè)角色只有一段腳本。當(dāng)點(diǎn)擊綠色旗幟時(shí),顯示角色。在碰到“企鵝”角色之前會(huì)一直等待。當(dāng)碰到“企鵝”角色時(shí),會(huì)廣播消息“找到鑰匙”,然后將變量“鑰匙數(shù)量”增加1。隱藏“鑰匙1”角色,表示企鵝拿到了鑰匙。
第3~5個(gè)角色:鑰匙2~鑰匙4
我們復(fù)制3個(gè)鑰匙1,將它們分別改名為“鑰匙2”“鑰匙3”和“鑰匙4”,然后將這3個(gè)新的角色分別放在右下角、右上角和左上角。這3把鑰匙的造型和腳本也都與角色“鑰匙1”一樣,這里就不再贅述。
小貼士
復(fù)制角色,選中目標(biāo)角色的縮略圖,點(diǎn)擊鼠標(biāo)右鍵,在出現(xiàn)的菜單中選擇“復(fù)制”。
這樣就會(huì)生成一個(gè)從造型到腳本都完全一樣的角色,只是角色名稱最后的數(shù)字有所不同。
這樣,“迷宮探險(xiǎn)”這個(gè)游戲就完成了。大家可以試著玩一玩,也可以自行添加更多鑰匙和新的地圖,甚至可以設(shè)置不同的關(guān)卡,從而增加這個(gè)游戲的趣味和難度。
3.3 打地鼠
“打地鼠”是一款比較經(jīng)典的游戲。在游戲中,玩家通過操控錘子擊打從地洞里冒出來的地鼠來得分。在本節(jié)中,我們用Scratch 3.0來編寫它。
1.變量
我們定義了兩個(gè)變量。
剩余時(shí)間:游戲還剩下多少時(shí)間,這個(gè)變量會(huì)顯示在屏幕上。
得分:已經(jīng)得到的分?jǐn)?shù),這個(gè)變量會(huì)顯示在屏幕上。
2.背景
我們選擇從本地上傳的圖片作為背景。
這個(gè)背景只有一段腳本,就是當(dāng)接收到 “游戲開始”消息后,設(shè)置變量初始值,并開始游戲倒計(jì)時(shí)。將變量“得分”設(shè)置為0,隨著玩家打中了地鼠,“得分”會(huì)增加。將變量“剩余時(shí)間”設(shè)置為30,表示一局游戲的時(shí)間為30秒。然后執(zhí)行一個(gè)循環(huán)30次,在循環(huán)體中,每次等待1秒后,將變量“剩余時(shí)間”減1。當(dāng)“剩余時(shí)間”為零后,廣播 “游戲結(jié)束”消息,并停止全部腳本。
3.角色
先刪除默認(rèn)的“小貓”角色刪除。
這個(gè)游戲中的角色比較多,共有13個(gè),分別是9只地鼠、1把錘子,以及表示開始和結(jié)束的3個(gè)角色。
第1個(gè)角色:開始界面
我們選擇從本地上傳的圖像作為開始界面。
這個(gè)角色有兩段腳本。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),顯示角色。
第2步
當(dāng)接收到 “游戲開始”消息時(shí),隱藏角色。
第2個(gè)角色:開始按鈕
其造型如下所示。
這個(gè)角色也有兩段腳本。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),移動(dòng)角色位置,將角色移至最前面,并顯示角色。
第2步
當(dāng)點(diǎn)擊角色時(shí),隱藏角色,并廣播“游戲開始”消息。
第3個(gè)角色:錘子
“錘子”角色有兩個(gè)造型,分別表示“普通”造型和“攻擊”造型。
這個(gè)角色有兩段腳本。
第1步
當(dāng)接收到 “游戲開始”消息時(shí),顯示角色,并將造型切換為“普通”造型。讓錘子跟隨鼠標(biāo)移動(dòng)。如果偵測(cè)到按下鼠標(biāo),將造型切換為“攻擊”造型,表示要打地鼠。隨后等待0.2秒,再將造型切換到“普通”造型。
第2步
當(dāng)接收到消息“游戲結(jié)束”時(shí),隱藏角色。
第4個(gè)角色:結(jié)束信息
這是游戲結(jié)束后要顯示的信息,造型如下。
它有兩段腳本。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),隱藏角色。
第2步
當(dāng)接收到“游戲結(jié)束”消息時(shí),將角色移至最前面顯示。
第5個(gè)角色:地鼠
對(duì)于地鼠角色,我們選擇角色庫(kù)中的“Squirrel”文件。
我們從聲音庫(kù)中選擇“water drop”聲音,表示錘子砸中地鼠時(shí)發(fā)出的聲音。
這個(gè)角色有兩段腳本。
第1步
當(dāng)點(diǎn)擊綠色旗幟時(shí),將角色移動(dòng)到第一個(gè)洞里,隱藏角色。
以下內(nèi)容會(huì)重復(fù)進(jìn)行。隨機(jī)等待一段時(shí)間后,顯示角色,表示地鼠鉆出洞來。之后隨機(jī)等待一段時(shí)間,隱藏角色,表示地鼠又躲回到洞中。
制作游戲輔助用E語(yǔ)言還是C語(yǔ)言?
E語(yǔ)言
建議使用易語(yǔ)言,如果您想去做更高級(jí)的事情 完全不用懷疑 C++ Java 才是目前的王道。
c語(yǔ)言可以寫外掛嗎?
可以寫。
通過 C 語(yǔ)言編寫一個(gè)簡(jiǎn)單的外掛,通過 API 函數(shù)修改游戲數(shù)據(jù),從而實(shí)現(xiàn)作弊功能如下
對(duì)象分析
要用的 API 函數(shù)簡(jiǎn)單介紹
編寫測(cè)試效果
總體評(píng)價(jià)
C語(yǔ)言是一門面向過程的、抽象化的通用程序設(shè)計(jì)語(yǔ)言,廣泛應(yīng)用于底層開發(fā)。C語(yǔ)言能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器。
C語(yǔ)言是僅產(chǎn)生少量的機(jī)器語(yǔ)言以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的高效率程序設(shè)計(jì)語(yǔ)言。
以上就是關(guān)于c 游戲 編程和C哪種更適合小學(xué)生的相關(guān)問題解答,希望對(duì)你有所幫助。