摘 要:C語言程序設計課程作為一門基礎的計算機程序設計課程,其對于計算機教學具有重要的意義,同時也是許多院校理工科學生的必修課程。本文闡述了C語言程序設計課程的教學目標,從學生學習現(xiàn)狀和教師教學模式兩個方面分析了C語言程序設計課程的教學現(xiàn)狀,同時從有效培養(yǎng)學生計算思維能力和科學運用先進教學手段方法兩個方面提出了C語言程序設計課程的教學策略。
關(guān)鍵詞:C語言程序設計課程;教學目標;教學現(xiàn)狀;教學策略
1 C語言程序設計課程的教學目標
C語言程序設計課程的教學目標主要可以分為情感目標、能力目標以及認知目標幾個方面。具體而言,一是體驗C語言程序設計的編程思想,激發(fā)和保持對C語言程序設計課程的求知欲,形成積極主動地學習和參與C語言程序設計課程探究活動的態(tài)度;二是能夠辯證地認識C語言程序設計對社會發(fā)展、科技進步和日常生活學習的影響;三是獲得親自參與研究探索的積極體驗、培養(yǎng)嚴謹?shù)目茖W態(tài)度;四是能夠從日常生活、學習中發(fā)現(xiàn)或歸納可以利用C語言程序設計解決的問題,通過問題分析確定程序功能;五是能夠根據(jù)任務的要求,確定所需信息的類型和來源,并鑒別信息的真實性、準確性和相關(guān)性;六是掌握計算機程序的基本概念,理解并掌握C語言程序設計語言的基本知識,包括語句、數(shù)據(jù)類型、變量、常量、表達式、函數(shù)等,熟悉語言的語法規(guī)則,熟悉計算機程序執(zhí)行的基本過程;七是了解C語言程序設計語言,掌握編寫程序、編譯程序、連接程序以及程序開發(fā)環(huán)境等基本知識,掌握調(diào)試、運行程序的基本方法與技巧等。
2 C語言程序設計課程的教學現(xiàn)狀
1、學生學習現(xiàn)狀
C語言作為許多常用程序設計語言的母語,可以說學會了C語言以后,再進行其他程序設計語言學習能夠達到事半功倍的效果。C語言不僅具備高級語言特點,同時具備匯編語言的優(yōu)越性,因此具有極好的實用性。然而實際教學過程中,其仍然存在一些現(xiàn)實問題:一是語言內(nèi)容繁多,例如C語言有34種運算符,運算表達形式多種多樣。數(shù)據(jù)類型有實型、整型、數(shù)組類型、結(jié)構(gòu)體類型、指針類型等內(nèi)容。學生面對繁多的知識內(nèi)容,容易記不住,也會出現(xiàn)知識混淆的現(xiàn)象。例如在使用字符串賦值時,學生很容易混淆指針變量和字符數(shù)組的賦值方式;二是語法規(guī)則瑣碎,指針的應用又使得編程靈活多變。在調(diào)試程序過程中,一個分號的漏寫,或是一個錯誤的數(shù)據(jù)類型的賦值,就可能導致程序產(chǎn)生很多錯誤,而剛接觸C語言的同學,特別是英文不好的同學,找出疏忽較為困難時容易產(chǎn)生自暴自棄思想,造成學習興趣不濃,對于后續(xù)課程學習將產(chǎn)生不利影響。
2、教師教學模式
從目前來看,許多院校C語言程序設計課程教學模式都是課堂教學+上機實驗為主。教師基本以課堂知識講解為主,按照傳統(tǒng)的先語法后程序設計的教學模式進行教學,容易使得內(nèi)容枯燥無味。長此以往,學生會覺得學習C語言只是為了應付期末考試和等級考試,而不知道為什么C語言中有指針,結(jié)構(gòu)體這些數(shù)據(jù)類型,從而喪失學習興趣,阻礙學生編程思維的發(fā)散,造成部分學生學完C語言只能通過考試,卻不具備實際解決問題的能力。在后續(xù)課程中也無法進行有效銜接,學過和沒學一樣。上機實驗以書本內(nèi)容為主,缺乏適當拓展訓練。大部分學校都是一名教師帶多名學生上機實驗,無法面面俱到,幫助每名同學及時解決問題,造成部分同學在問題得不到及時解答時覺得程序設計很難,很枯燥乏味因而喪失學習信心和興趣。
3 C語言程序設計課程的教學策略
1、有效培養(yǎng)學生計算思維能力
計算思維中算法思維與系統(tǒng)思維是兩種重要的思維,而程序設計是提高計算思維能力的重要途徑。程序設計教學過程中,應強化算法,弱化語法。算法是問題的求解過程,在設計過程中,對算法的可行性,時間空間代價的考慮,能夠更好地培養(yǎng)學生的算法思維能力。當學生將算法用具體語言實現(xiàn)時,又很好地培養(yǎng)了系統(tǒng)思維。由于C語言是其他多種語言的基礎,如果學生真正弄清楚問題的解決方法時,再用其他語言更容易實現(xiàn)。然而學生學習程序設計之初,大都沒有頭緒無從下手。因此,實際教學過程中,教師應講透知識點內(nèi)容,帶著學生編程,逐步讓學生從模仿到自己編程,培養(yǎng)C語言學習興趣。上機實驗時讓學生在實驗之前畫流程圖,或是編寫程序代碼,然后上機調(diào)試,找出錯誤原因。通過不斷地編程學習,能夠培養(yǎng)學生的計算思維能力。
2、科學運用先進教學手段方法
一是運用案例遞進驅(qū)動教學法。實際教學過程中,教師設計教學案例時應根據(jù)思維規(guī)律漸進式地分析問題,找出內(nèi)在規(guī)律。題目不在多而在精。例如輸入若干學生成績,求最高分,最低分,平均分等。從基本輸入輸出開始,到數(shù)組,指針,文件,結(jié)構(gòu)體都可以圍繞該問題用不同方法進行求解,同時題目難度也可以逐漸增加。這樣學生不至于覺得問題無從下手,能很自然地對熟悉的問題在不同方法下求解去比較異同,又從而達到對知識的掌握和運用目的。
二是運用任務驅(qū)動法。實際教學過程中,教師應作為引導者而非傳統(tǒng)的“滿堂灌”方法。通過提出問題—設計算法—編寫程序這一系列的過程,能夠有效提高學生的學習興趣。教學過程中可以提出一些有趣或?qū)嵱玫睦?,活躍課堂氣氛,提高學生參與度。例如雞兔同籠問題,點名程序,學生檔案管理程序等既結(jié)合了書本知識點,又吸引了學生,通過自己編寫程序提高決問題的能力。教學過程中還可以結(jié)合如人臉識別系統(tǒng),嵌入式系統(tǒng)開發(fā)等當前熱點或是與學生專業(yè)相關(guān)的C語言的最新應用,要求學生查閱資料了解,拓寬自己的知識面。從而吸引學生,加強C語言這門課程的學習。
三是翻轉(zhuǎn)課堂教學模式。翻轉(zhuǎn)課堂模式相比傳統(tǒng)課堂模式在教學時間的分配環(huán)節(jié)具有較大區(qū)別,翻轉(zhuǎn)課堂主要通過網(wǎng)絡和現(xiàn)實課堂在教師引導和協(xié)助下,進行教師與學生之間、學生與學生之間的互動和交流。實現(xiàn)翻轉(zhuǎn)課堂,需要搭建相關(guān)的網(wǎng)絡教學平臺,錄制重點內(nèi)容的微視頻或推薦網(wǎng)上好的Mooc視頻,將線上和線下學習有機結(jié)合。教師通過提問、討論、網(wǎng)絡測試等方式了解學生的課外學習情況,學生在課堂提出疑問,討論,上機編寫程序。這樣既能夠促進學生的學習主動性,積極深入地思考問題,又能夠通過分析教學數(shù)據(jù),幫助教師有效改進教學過程,提高教學質(zhì)量。
4 結(jié)語
總之,今后的實踐教學過程中,C語言程序設計課程的教學應以學習主根本,有效培養(yǎng)學生計算思維能力,通過科學運用先進教學手段方法,達到有效教學的目的。
參考文獻
[1] 林冬梅, 冉清. C語言實訓教程[M]. 北京:高等教育出版社,2011.
[2] 何欽銘, 顏暉. C語言程序設計[M]. 北京:高等教育出版社,2008.
[3] 耿國華.程序設計能力培養(yǎng)模式的探索與實踐[J].中國大學教學,2009(3) : 30-32.
[4] 祁俊.《C語言程序設計》課程對學生思維能力的訓練[J].青海大學學報:自然科學版,2009(10):91-93.
[5] 王紅光,都麗霞.C程序設計教學方法改革實踐[J].城市建設理論研究:電子版, 2013,4(32):252-253.
[6] 王穎,楊文蓮,劉麗娟.C語言教學中不容小覷的思維能力培養(yǎng)[J].中國科技信息,2011(2):212-213.
作者簡介
張越男(1978-),女,工程碩士,講師,研究方向計算機多媒體方向。