
摘 要:本文通過Scratch軟件設計的幾款趣味游戲,以圖形化的方式講解了C語言程序設計中的變量、數組、分支和循環等知識點,幫助學生由淺入深的理解上述知識,把枯燥的程序設計中的基本知識,變成有趣的動畫角色的行為或是得分來講解,在實踐中上取得了不錯的效果。
【關鍵詞】Scratch 圖形化 C語言程序設計數組循環
國外開展計算機編程時,早已將Scratch作為中小學生入門軟件,即便是大學生也是同樣學習Scratch軟件,在中國中小學中才剛剛興起,但是在大學里普及不夠,作為一款計算機編程的圖形化入門軟件,對于幫助大學生學習C語言程序設計有很大的幫助。因此我將其作為C語言教學的輔助軟件,尤其在講解變量、數組、選擇和循環等知識點時,收到了很好的效果,并想與同行們一起分享這些收獲。
1 變量
現在的學生都喜歡打游戲升級刷分數,那我就通過游戲中的分數變化來講解變量是怎么回事。先定義一個變量scores來存放分數,設置初值為0分,每多買一個水果、蔬菜(簡稱果蔬)就加分,不同的果蔬的分值不一樣,這樣通過購買不同的果蔬增加不同的分數,通過分數的增加變成新值,最后通過購買了5個果蔬之后分數累計到了60分的過程,來給演示所謂的變量變化的過程(見圖1)。原來就是在游戲(程序)運行過程中,隨著判斷條件不斷變化而變化的量(變量名是代號而已)。這樣學生很容易接受這樣的演示和說明,除此之外,我還列舉了people_size、interval、speed、sizeofarrow來講解有關變量的內容。
2 數組
通過對游戲中的有序存放果蔬購物車來演示數組是如何實現的,盡管其實Scratch中使用的是鏈表來實現類似數組,我這里的元素都是果蔬的名稱(字符串),從圖1可以看出,每放入一個果蔬shoppingbox,則都會運行“將potato加入鏈表shoppingbox”這樣的操作,其實是增加數組元素的操作,shoppingbox內容增加一個果蔬名稱,數組長度從0到5的變化過程,來描述數組如何有序存放數據元素,來形象闡述數組這個概念和作用,包括訪問和使用這些元素,以及加入、獲取和刪除相應位置的元素值的功能。
3 選擇結構
選擇結構就是根據判斷邏輯條件的“真”、“假”,來決定執行哪個分支的語句。其實重要的在于邏輯條件的選擇上,可以是判斷算術表達式、邏輯表達式、比較表達式等,但是結果必須是非真即假,C語言中表示選擇結構的語句有if、if...else、switch語句,以及它們之間可以嵌套使用。慶幸的是,在Scratch中判斷條件的類型很多,比如兩個對象是否碰到、是否碰到紅色或藍色等、或是否距離某個對象的距離范圍和是否碰到邊緣都成為了選擇結構的判斷類型,這使得學生在邏輯判斷條件類型上的理解更加深入,擴展學生對邏輯判斷條件的認識的范圍。如圖2中,小藍人碰到藍色1次score扣1分,如果scores為0分,則游戲結束,否則碰到紅旗,則勝利,這個是對if的使用;小黃人,如果碰到淡綠色就向左(-90)的方向移動,否則接收到street2home廣播再向右(90)移動,這也是if...else的使用。
4 循環結構
循環結構其實就是判斷條件滿足為真的情況下,不斷執行循環體的語句,直到條件不滿足為假時退出循環,執行下面的語句,這是正常的過程,對于特殊情況會在循環體內,再滿足另外條件式,強行退出循環。C語言表示循環結構的語句有while、do...while和for語句三種。Scratch中也是這幾種基本的語句,但是判斷條件卻和選擇結構一樣的類型豐富。通過圖2,我們可以看到可以無條件也可以有條件的重復執行塊內的順序和選擇結構的語句,例如小藍人,再碰到小紅旗之前可以一直跟隨鼠標坐標移動,直到碰到小紅旗游戲才結束,小黃人則無條件的一直移動,或是循環結構使得造型lion1-a和lion1-b相互切換,實現小動物跑動的動作,通過游戲演示,學生們能夠很容易的掌握循環的概念和用法。
5 結論
通過使用Scratch軟件設計游戲的方式,來講解C語言程序設計中變量、數組、選擇和循環結構的概念和作用。用Scratch游戲中的得分scores、shoppingbox、檢測是否碰到對象或顏色、實現小動物的跑動動作等形式,來演示和闡述,使得學生對上述知識點獲得由淺入深的理解,提高了他們學習C語言程序設計的積極性,也得到了良好的教學效果,我建議講授C語言程序設計的教師都可以嘗試一下這種方式,相信會給你帶來一些幫助的。
參考文獻
[1]張俊竹.展示程序設計[J].設計,2013,(06):79-81.
作者簡介
謝鵬(1975-),男,山西省運城市人。碩士學位。現為銀川大學信息傳媒學院工程師。研究方向為數字圖像融合。
作者單位
銀川能源學院 寧夏回族自治區銀川市 750100