耿春梅
摘要:循環(huán)結構是C語言程序設計課程中的一個重要的結構,同時也是掌握程序設計的基礎與關鍵。文章在剖析當前C語言循環(huán)結構課堂教學問題的基礎上,探討循環(huán)結構的教學方法,提出一種“源實例”教學法。教學實踐證明該方法在激發(fā)學生求知欲、提高學生抽象思維能力方面有著較好的效果。
關鍵字:C語言;循環(huán)結構;教學方法
C語言是高職院校計算機專業(yè)與非計算機專業(yè)講授程序設計課程的首選語言。C語言的重要性有目共睹,其應用也是包羅萬象。它集匯編語言和高級語言優(yōu)點于一身,向下可以做系統(tǒng)設計語言開發(fā)底層的嵌入式,向上可以做應用程序設計語言開發(fā)應用程序。C語言是一種結構化的高級語言,循環(huán)結構是3種結構中最為復雜,又最為常見的。如果學生沒有掌握好循環(huán),那么學好后續(xù)的數(shù)組、指針、函數(shù)等的知識點便是空中樓閣。因此應注重Z_--結構的教學方法探討,力爭讓學生較好較快地理解和掌握。
1.當前C語言循環(huán)結構課堂教學中的問題
1.1思維方式的跳躍
C語言有3種基本結構:順序結構、選擇結構、循環(huán)結構。在這3種結構中,順序結構和選擇結構十分接近人類的日常思維方式,因而也較容易被理解和掌握。但是循環(huán)結構與人類的自然思維卻不盡相同。所以若在教學過程中按部就班、照本宣科,必然出現(xiàn)思維方式跳躍帶來的知識掌握的滯后性。機械的記憶語法知識、臨摹式的上機調(diào)試課本實例使得越來越多的學生對C語言失去興趣。學生的學習呈現(xiàn)被動狀態(tài),學習積極性不高,甚至產(chǎn)生排斥心理。因此C語言循環(huán)結構課堂教學亟待解決的問題之_就是如何緩沖思維方式的跳躍。能夠讓學生在輕松自由的認知過程中掌握循環(huán)結構的使用,同時這也是激發(fā)學生學習積極性的至關重要的一點。
1.2教材教法的禁錮
C語言的教材充棟折軸,其中也不乏有經(jīng)典教材,然而這也導致了很多學校與教師認為講授必選經(jīng)典教材。但是,教育教學講究靈活多變、因材施教。經(jīng)典教材固然為C語言的教學做出了巨大的貢獻,但是其編寫模式與所舉實例卻不利于引發(fā)學生的學習興趣。目前,關于C語言循環(huán)結構的教學方法及其相關的教學研究等得到了較多的關注,同時也誕生了不少好的教學方法。其中實例教學法就是其中出色的一種。沿用實例教學法的教材也層出不窮,教師在講解循環(huán)結構章節(jié)中采用實例法也是明智之選。然而,實例教學法精髓在于精選實例,如果實例取之不精,不僅不能發(fā)揮其應有的效用,相反還會給教學帶來很大的負面影響,實例取之不當不僅破壞了知識的系統(tǒng)性,甚至會使學生成為“實例操作員”,機械的上機練習,也會影響課堂的教學效果。如何精選實例是C語言循環(huán)結構教學的關鍵所在,實例既要經(jīng)典,突出重點和難點,又要與學生的自然思維想吻合,激發(fā)學生的自主動手能力。
2.C語言循環(huán)結構“源實例”教學法
2.1“源實例”提高學生對抽象概念的感觀認識,實例源自生活,基于觀察
循環(huán)是什么?其實循環(huán)就是“重復操作”,是為了達到某種目標(循環(huán)條件),而反復地執(zhí)行一組操作(循環(huán)體),直到該目標(或條件)達成為止。通過循環(huán)結構,程序員可以減少重復書寫代碼的工作量,能夠充分利用計算機運算速度快的優(yōu)點解決實際問題。循環(huán)同樣也是生活實例的語言抽象。例如生活中的某農(nóng)民對某一農(nóng)田的四季耕耘,在20年的耕作權的時間里,每當春播時節(jié)到來,就會播種,年年如是。再如,參加自考的考生,學習過后,就可以參加考試,然后根據(jù)考試的結果來決定是否需要繼續(xù)學習還是重新參加考試,直到考試通過拿到證書為止??梢詫⒁陨?個事件用流程的形式解釋,如圖1所示。
諸如此類的“源實例”循環(huán)很多,如銀行的密碼驗證過程,教師在授課過程中,經(jīng)常舉一些與實際生活息息相關的事例,圍繞精選出的源于生活的事例,把學習的過程與具體的事例抽象相融合,引導學生自己去思考解決方案。整個教學過程以應用為根本出發(fā)點,強調(diào)在生活事例中抽象,在抽象過程中學習應用,避免枯燥、復雜的理論說教對提高學生綜合分析和解決實際問題的能力有極大的幫助。
2.2“源實例”,實例源于體驗
有了循環(huán)的生活提煉以后,學生還要面臨的一個問題是怎么才能在編程過程中自主的選擇循環(huán)結構程序設計。也就是說,學生要進一步明確在面臨實際問題的時候,何時需要使用循環(huán)。如果只憑教師與教材的一面之詞,學生只是被動接受,止于模仿,充分調(diào)動學生的自主性才是學習程序設計的根本。在循環(huán)結構的前續(xù)知識中,學生已經(jīng)掌握基本的輸出函數(shù)printf(),針對該函數(shù)都會有圖形輸出的趣味練習,比如輸出下實心三角形作為某程序的開始菜單圖標。其圖形與代碼片段如下所示。
教師可以提出,如果該圖形不是3行,而是50行甚至更多,該怎么辦。學生自然會想到繼續(xù)重復的使用printf幾十次是不明智的一件事。教師要抓好時機的進行“重復”抽象的引導,這樣學生自動會考慮使用循環(huán)結構解決。再如,在c語言循環(huán)結構教學之前學生學習if語句和switch語句時,一般學習實現(xiàn)將學生分數(shù)從百分制轉換成五分制。在此基礎上,教師可以引導學生思考,如何完成一個班的學生的分制轉換工作?這種基于學生自身體驗的需求會極大地調(diào)動學生對未知事物探索的積極性,吸引他們的興趣,變被動為主動,變呆板為靈活,更容易對所學循環(huán)結構舉一反三,做到觸類旁通。
“源實例”教學,首先要求教師在實例選擇上多下功夫,精心設計實例,從日常生活中容易看到的、用到的、好理解的問題下手,抓好較為實用的切入點,抓住學生的眼球是該教學方法的關鍵。其次,教師要通過層層引導,讓學生自主動腦,歸納“重復”行為,主動地接近循環(huán)結構的真諦,以達到理解和運用循環(huán)結構的目標。第三,“源實例”教學要求教師注重利用現(xiàn)代科技手段,把課堂擴展到學生喜聞樂見的現(xiàn)代化生活平臺,當前的QQ群或微信朋友圈都是不錯的平臺,一方面打破課堂的物理局限性,另一方面在網(wǎng)絡的平臺下,更能拉近師生距離,使學生將生活中隨時遇到的可以抽象的各種問題與教師實時交流看法與心得,更好地提高教學效率。第四,“源實例”教學要求教師在組織教學的過程中將教材融會貫通,階梯式難度設置。例如游客足跡記錄問題。第一步,讓學生使用循環(huán)結合printf()設計出完成星型界面。第二步,讓學生在上一問題的基礎上,通過設計while(1)循環(huán),實現(xiàn)當用戶輸入Q時該循環(huán)退出并輸出循環(huán)的次數(shù)。依次將任務難度增加,讓學生拾級而上,增強學生編程的自信心。
3.結語
循環(huán)結構是C語言課程的重點,掌握好循環(huán)結構一方面為后續(xù)的數(shù)組、函數(shù)、指針等知識的學習夯實基礎,另—方面也可鍛煉學生的邏輯思維能力,提高學生對編程的信心。在循環(huán)結構程序設計中使用實例教學法可以凸顯課程知識點,明確教學重難點,但是以題為例的實例教學法也會給教學帶來一定的局限性,比如知識點的不系統(tǒng),課程的枯燥感,這些都會給學生帶來一定的厭學情緒,不利于知識的學習。本文通過引入“源實例”教學法,循循善誘,循環(huán)結構變抽象為具體、變枯燥為生動,讓學生在整個教學過程中逐步養(yǎng)成嚴密的邏輯思維,提高學生分析問題、處理問題的能力,教學實踐證明該方法對循環(huán)結構的教學效果明顯。