于真
摘 要:程序設(shè)計基礎(chǔ)是高等院校計算機(jī)相關(guān)專業(yè)的基礎(chǔ)課程,針對我校具體的學(xué)生學(xué)習(xí)情況,本文將分模塊實例化教學(xué)方法引入課堂教學(xué),通過一些實例來將抽象的概念形象化。從實際授課效果來看,學(xué)生更容易接受相關(guān)知識點(diǎn),提高了學(xué)習(xí)效果,具有良好的理論意義和實際意義。
關(guān)鍵詞:C語言;分模塊;實例化;教學(xué)方法
1 緒論
我校信息技術(shù)專業(yè)的程序設(shè)計基礎(chǔ)課程使用C語言來編程,授課的對象是新生,絕大多數(shù)是原來沒有編程基礎(chǔ),對于很多抽象概念接受起來有難度。特別是有些程序設(shè)計的理論本身比較抽象,傳統(tǒng)教學(xué)方式很難將其形象化、具體化,學(xué)生學(xué)習(xí)起來感覺生澀難懂,打擊了學(xué)生學(xué)習(xí)課程的積極性。[1]
現(xiàn)有的一些程序設(shè)計類的教學(xué)改革是引入一些案例來啟發(fā)教學(xué),或者任務(wù)驅(qū)動來提高積極性。但是很多方法缺乏課程知識點(diǎn)的系統(tǒng)性梳理,難以讓學(xué)生對課程內(nèi)容整體上有深入的理解和認(rèn)識。對大綱內(nèi)容做模塊劃分,在每個模塊以實例化、形象化為引導(dǎo)。
[2]
本文將分模塊實例化貫穿于課堂教學(xué),通過一些實例來將抽象的概念形象化,從而提高第一門程序設(shè)計語言的學(xué)習(xí)效果。
2 分模塊實例化
C語言的基礎(chǔ)知識點(diǎn)繁雜,系統(tǒng)的歸納之后,本項目研究的基本內(nèi)容包括:1)基礎(chǔ)模塊,包括一些基本概念,3種基本結(jié)構(gòu)和數(shù)組;2)函數(shù)模塊;3)指針模塊;4)結(jié)構(gòu)體模塊。在這幾大模塊中,每一個模塊設(shè)計典型實例,每一模塊的主要知識點(diǎn)利用該實例進(jìn)行形象化和具體化,連貫起來,而不是僅僅通過實例去介紹某個知識點(diǎn),而是通過實例的活動來將所有主要知識點(diǎn)貫穿起來,通過現(xiàn)實世界的例子來促進(jìn)學(xué)生的理解和接受。[3]
2.1 基本知識模塊
很多同學(xué)理解不了變量的本質(zhì),本研究預(yù)計用杯子來對變量進(jìn)行實例化,變量就像是杯子,是一種容器,承裝某些事物,它有大小與類型。數(shù)據(jù)類型轉(zhuǎn)換是學(xué)生不好理解的知識點(diǎn),可以通過大杯子、小杯子的互相裝載可以進(jìn)行形象化介紹。三種基本結(jié)構(gòu)的學(xué)習(xí),可以通過學(xué)生在現(xiàn)實生活中的每日活動流程,或者復(fù)讀機(jī)等具有一些特性的活動和事物去設(shè)計。數(shù)組的理解也是一個難點(diǎn),這時就可以利用前面的杯子實例去拓展,數(shù)組猶如杯架,承載若干杯子。
1)變量、數(shù)據(jù)類型。變量是第一個學(xué)生需理解的知識點(diǎn),包括變量的定義,變量的存放,變量的賦值等,那么,我們引入杯子可以描述變量,當(dāng)講述變量的定義時,我們可以說拿到了一個具體的杯子,這個杯子有個名字,相當(dāng)于變量名;這個杯子里面可以盛放一些數(shù)據(jù),相當(dāng)于為變量開辟內(nèi)存空間,往里面存入數(shù)據(jù),并且對變量賦值。變量具有不同的類型,我們拿不同大小的杯子表示占用不同的字節(jié),小杯子的內(nèi)容倒到大杯子里可以,但是大杯子里的東西倒進(jìn)小杯子就會溢出,可以用這一個例子來解釋賦值兼容。
2)順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。當(dāng)學(xué)到三種基本結(jié)構(gòu)時,可以通過學(xué)生在現(xiàn)實生活中的每日活動流程來描述順序結(jié)構(gòu)和選擇結(jié)構(gòu)。此外,可以通過復(fù)讀機(jī)、音樂軟件的循環(huán)播放等學(xué)生們都使用過的事物來進(jìn)行類比說明,從而介紹循環(huán)的起點(diǎn)、終點(diǎn)以及循環(huán)的內(nèi)容。
3)數(shù)組。數(shù)組是學(xué)生學(xué)習(xí)的一個重點(diǎn),也是一個難點(diǎn)。數(shù)組類型是相同類型的數(shù)據(jù),可以用杯架中放著同樣大小的杯子來類比說明,數(shù)組的定義可以用取得一個全是杯子的杯架來說明,對于數(shù)組元素的使用就像對里面每個杯子存取數(shù)據(jù),每個杯子有一個標(biāo)號來代表,即為數(shù)組的下標(biāo)。
2.2 函數(shù)模塊
函數(shù)模塊中,理解函數(shù)的定義和調(diào)用是一個難點(diǎn),本研究計劃引入機(jī)器人來貫穿講解函數(shù)的所有知識點(diǎn),包括封裝的概念,函數(shù)定義的概念,函數(shù)調(diào)用的方式,均可以用機(jī)器人的特性去解釋。
2.3 指針模塊
指針模塊中,指針變量的使用是一個難點(diǎn),本研究計劃從現(xiàn)實世界的角色定位來引導(dǎo),并通過遙控器這一實例去形象化指針概念。遙控器可以來貫穿講解指針模塊中的所有知識點(diǎn),包括指針的定義,指針的使用,指針指向數(shù)組,指針變量作為函數(shù)參數(shù)等。
2.4 結(jié)構(gòu)體模塊
結(jié)構(gòu)體模塊中,如何定義、使用結(jié)構(gòu)體變量是一個難點(diǎn)。本研究計劃從肯德基的套餐來進(jìn)行實例化設(shè)計。套餐可以貫穿講解結(jié)構(gòu)體模塊中的所有知識點(diǎn),包括結(jié)構(gòu)體類型的定義,結(jié)構(gòu)體變量的聲明,結(jié)構(gòu)體變量的使用等。
通過這些現(xiàn)實世界中實例的利用,可以融會貫通每一個模塊中的絕大多數(shù)知識點(diǎn),讓學(xué)生把抽象的概念聯(lián)系到熟悉的現(xiàn)實世界,可以激發(fā)興趣,并從整體上提高學(xué)生對本課程內(nèi)容體系的理解程度。
3 結(jié)論
本文的教學(xué)方法可應(yīng)用于程序設(shè)計基礎(chǔ)的理論和實驗教學(xué),促進(jìn)學(xué)生更好的理解課程內(nèi)容,提高自己的編程水平。通過系統(tǒng)的課程學(xué)習(xí),學(xué)生應(yīng)能理解基本的概念定義,三種基本結(jié)構(gòu),熟練使用循環(huán)結(jié)構(gòu)進(jìn)行程序設(shè)計,熟練利用數(shù)組處理批量數(shù)據(jù),熟練用函數(shù)實現(xiàn)模塊化程序設(shè)計,善于利用指針,可以自己建立數(shù)據(jù)類型。從而達(dá)到學(xué)生對課程內(nèi)容體系有系統(tǒng)的理解和更加深入的認(rèn)識這樣一個教學(xué)目的。
參考文獻(xiàn):
[1]張波,雷東升.模塊化案例教學(xué)在“C語言程序設(shè)計”課程中的應(yīng)用.計算機(jī)教育,2009(21):62.65.
[2]熊高君,朱同林,趙妮.C語言課堂教學(xué)中的趣味性探討——函數(shù)與結(jié)構(gòu)的趣味性研究.計算機(jī)教育,2008(18):84.85.
[3]高挺挺.模塊化案例教學(xué)在C語言教學(xué)中的應(yīng)用.電腦知識與技術(shù),2015,11(10):113.114.