◆李曉艷 劉金金
作者:李曉艷,河南師范大學計算機與信息工程學院、計算智能與數據挖掘工程技術研究中心助教,研究方向為粗糙集、數據挖掘、圖像檢索;劉金金,河南師范大學計算機與信息工程學院、計算智能與數據挖掘工程技術研究中心助教,研究方向信息領域識別及粒計算(453007)。
C 語言是一種高級計算機程序設計語言,是各高校計算機類各專業本科教學中的一門重要的專業技術基礎課[1],是學生能夠初步掌握計算機編程分析能力和解決實際問題能力的入門課程,是以后學習其他計算機類語言的基礎[2]。因此,學生對C 語言的掌握程度直接關系到計算機類本科教學的成敗。本文通過分析高校學生在學習過程中存在的問題,探討C 語言課堂教學中的改進方法,及如何組建團隊,提高教學水平。
入門不到位 學生在進入高校之前的理科基本上以學習數、理、化為主,對計算機的了解僅限于會進行簡單的操作和最基本的Office 軟件的使用,而對計算機語言是“不知道、不了解”,這就需要教師對學生做一個較為通俗易懂的入門。而一部分教師對這一點的重視程度顯然不夠。學生在學習的過程中不明白“為什么學習C 語言,學習了C語言能干什么”,而處于盲目的狀態,對學習提不起興趣。
過于依賴教材 部分教師在教學中僅限于對書本知識的講解,能夠對什么是數據類型、語句、語法等書中的內容進行大量詳細的講解,但對如何用于解決實際問題提的很少,以至于學生在遇到實際問題時出現無從下手的情況。而這才是C 語言學習要達到的目標,是學習的難點。
教學形式單一 教師在教學過程中,除了課堂教學就是上機實驗,大多采用學生交作業和實驗報告的形式督促學生學習,有一定的教學效果,但形式和評價方式單一,學生學習興趣不高,有時還可能出現部分學生照抄照搬別的學生的作業情況,教學效果大打折扣。
學生自主學習能力不足 學生已經習慣了高中教師的“手把手教”和“24 小時監督”教育,對大學的自主學習培養方法還不適應,自主學習能力嚴重不足。C 語言程序設計是大學一年級的課程,除了課堂學習之外,還需要大量的課下練習、查資料等,對學生的自主學習能力較之其他課程更高。這就要求教師能夠調動學生的積極性,提高學生的自主學習能力。

表1 C語言和自然語言的相同點和不同點
做好入門是關鍵 學生在入學前對計算機語言了解比較少,對計算機編程的思維方式更是知之甚少。這要求教師能夠給學生做個通俗易懂的入門,使學生能夠快速進入C語言的學習狀態,對C 語言的內容和思維方式有一個初步認識。可以讓C 語言和自然語言進行對比學習,如表1 所示。這樣,通過對比學習,拉近學生和C 語言之間的距離,從而使學生更易接受。
注重形式和過程 大多數教師能夠在課堂上對數據類型、語句、語法等知識點進行詳細的講解和例題展示,卻很少強調解決問題的過程和步驟,以至于學生在上機時,往往直接寫代碼,而對問題沒有一個整體的看法,從而出現各種情況而完不成任務。
例如:求1+2+3+……+100 之和。
第一步,量化:intsum=0,i=1。
第二步,畫流程圖,如圖1 所示。
第三步,編程實現:


圖1 流程圖
學生在初學的過程中養成良好的編程習慣,在以后遇到復雜問題時才不至于出現顧此失彼的情況,調試程序的過程中才更易發現問題、解決問題,項目才可以順利完成。
明確任務提水平 除了課堂學習以外,教師需要給學生布置相應的學習任務,包括綜合性、設計性的實驗。教師在教學過程中應當轉變觀念,充當課程的設計者、學生領路人的角色。要求教師布置的每一項任務都進行過精心的設計,能夠較全面考查學生對知識的掌握程度,難易得當,并對任務進行必要的提示,以免學生在做題的過程中出現無從著手的情況,而挫傷學生的學習積極性。學生在完成任務之后,要對完成的情況進行檢查和對過程與結果進行展示,指出學生實驗過程中存在的優點與不足,以便相互借鑒,提高學生對知識的理解和重點的掌握。
構建項目導師團隊 以教研室為單位構建項目導師團隊,成立C 語言課程研究小組,了解課程知識體系的發展,把研究成果融入課堂教學中[3]。在新學期上課之前,C 語言研究小組可以組織相關教師討論新學期C 語言課程的教學想法,展示不同的建議和方法,教師相互借鑒、相互學習;還可以組織教師進行集體備課,并進行課件展示,建立相互聽課制度等,加強教師之間的合作和交流,更新教師的教學理念和方法,綜合提高教師隊伍的教學能力和水平。
組建學生學習小組團隊 項目導師或任課教師將學生組建成多個學習小組,鼓勵學習小組內相互學習、小組間相互競爭。設置學習情境,明確學習任務,小組內相互合作,發揮集體智慧,實現“一加一大于二”的良好互動效果,小組和小組之間進行比較,尋找完成任務時存在的優點與不足,相互借鑒。這樣,學生在完成任務的過程中相互學習、相互合作,取長補短,對所學知識進行融會貫通,對重點和難點加深理解,提高學生的學習積極性和發現問題、解決問題的能力。
創建校企合作團隊 創建校企合作團隊包括兩個方面,一是教師,二是學生。
一方面,教師需要不斷地學習更新知識和教學理念,這些知識不僅需要從書本和同行中取得,更需要深入企業中學習,靠近知識應用的最前沿和最一線。學校一方面可以派一部分教師深入企業中鍛煉,學習企業中不同于高校的思維方式和先進的技術并融會貫通應用于課堂,同時尋找企業管理模式下存在的亟待解決的問題,在高校的優越條件下進行研究,創新知識,緊跟時代步伐。在深入企業鍛煉時,教師要帶著問題去鍛煉,而不是純粹地學習,也要批判地審視。同時,高校也可以邀請企業的管理人員和一線工作者到學校中開展講座,使學生真正能夠感受到學習的方向和學習的目標,提高學習興趣。
另一方面,高校學生深入企業去參加實習實訓,擴展知識面,提高實踐水平。如此,高校就可以培養出與社會無縫對接的計算機人才。
經過幾年的教學實踐,發現參與教學改革研究的教師對教學更有想法,思維更開闊,研究成果更靠近知識的前沿,具有鮮明的立意和觀點;而參與改革的學生在學習過程中,提出問題和解決問題的能力有顯著提高,合作意識和創新能力更強,思維更發散,有新時代學生學習的熱情和動力。當然C 語言的教學改革不是一朝一夕之功,更需要全國的同仁們進一步探索和思考,創新教學方法,共同提高教學水平。
[1]譚浩強.C 程序設計[M].4 版.北京:清華大學出版社,2010.
[2]劉淑嫻,阿里甫·庫爾班,李曉華.簡單案例為主線的教學模式在C 語言教學中的應用[J].計算機教育,2011(4):89-94.
[3]朱立才,湯克明.C 語言程序設計研究型教學實踐[J].計算機教育,2010(8):115-117.