曾春艷 汪繁榮 張宇 武明虎 王志鋒


摘要:本文針對目前C語言程序設計教學學時緊張,內容枯燥,學生興趣低的問題,提出了C語言的教學和考試改革方法。利用C語言課程特點,采用基于項目的教學方法,以項目的實施為主線,講授本門課程的主要知識點。開發對應的考試系統,分階段檢測學生知識點的掌握情況,使考試不僅是期末的評價標準,更是平常教學鞏固知識點的有力工具。從而提高學生的學習興趣,提高動手能力,為后續課程的學習打下良好基礎。
關鍵詞:PBL;C語言教學;考試改革;考試系統
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2015)49-0110-02
一、教學及考試方法改革的必要性
本校電氣學院C語言程序設計這門課程的教學目標主要有以下三點:第一,通過24學時的理論課,講授算法概念與編寫程序的基本流程、結構;第二,通過24學時的上機課提高學生的實踐能力,讓學生在機房里編寫基本的程序,并實時輔導有狀況出現的學生;第三,讓學生在C語言教學完成后,參加計算機二級等級考試,拿證的同時鞏固知識點。
基于以上教學目標,結合本院的學時制定情況,即24學時理論學時加上24學時上機學時,按照大多數教材上的教學安排,無法在48學時內學完所有知識點。另一方面,需要對這門課程的考試考核辦法進行改進,通過考試改革增加學生自主學習的積極性,使重要的知識點在課堂上消化,相關知識點學生自學。
二、教學改革措施
(一)采用基于項目的授課方式
教師在備課時,整理每一學時的知識點之間的聯系,用一個小的項目將需要講授的知識點串聯起來。這種授課方式需要放在機房實現,學生聽完教師所講授的知識點,并思考項目解決方案后可以立即自己動手實現驗證。這種教學方式使聽、思考、實踐的步驟聯系起來,學生的學習過程更為完整。這種基于項目的授課方式能明顯提高學生探索問題的熱情,并在每次課結束后都因解決了某個問題而有成就感,感到有所收獲,從而有動力自學下一次課的內容,以有更多的提高。需要注意的是,授課教師在備課時,要注重知識點與項目內容的結合、每堂課內容之間的銜接、難度由易到難的合理過渡,使學生能跳一跳摘到果子。在教學的過程中,要及時肯定和表揚學生的能力,讓他們體會到成功的樂趣。
(二)試點與傳統教學方法并行,由大樣本實驗教學數據確定改革可行性
傳統的教學方法為在教室講授理論課,在機房編程實踐,試點的教學方式是將理論授課移入機房,理論講授與機房實踐相結合。另外傳統教學與試點教學的效果對比需要通過同一種上機考試,公平測試,并給出知識點的統計數據。
三、考試改革方案
(一)上機考試改革的必要性分析
傳統的期末考試,采用紙質考核閱卷的方式。對學生而言,這種方式由于試卷相同(AB卷的試卷種類也有限),容易抄襲;考核方式脫離了編程這種技能必備的上機編譯調試環境,不能真正體現學生的編程能力。此外,紙質的考核方式會使學生在期末考試前找到歷屆考試試卷,找到教師出題思路,只突擊復習相應的知識點,從而失去了考試的意義。紙質閉卷的考核方式一旦出現漏題,則失去了考試的公平性。
基于題庫軟件的上機考試方式,由于教師不用批閱試題,分數直接由系統當場給出,大大減少教師的工作量并提高了打分的公平性、準確性。而且通過從題庫中抽取試題,各個學生的題目不同,避免了學生之間的抄襲現象,減輕了監考壓力。另外,上機考試的方式能利用程序的編譯環境,直接考察學生的編程、調試能力,這種方式最接近實際的應用,可以最大程度地考核真正的能力,也有利于學生后期相關課程的學習和工作中的實際應用。
(二)上機考試系統的設計
本文設計的上機考試系統是與基于項目的教學方式相結合的。由于課時少,項目涉及的知識點有限,課堂上講授的知識點不能涵蓋教材上的所有內容,所以需要學生利用課后的時間自學其他沒有講到的內容。如果沒有考核機制,很難讓學生自覺完成相關知識點的自學,所以我們需要合理設計上機考試試題內容,在每章內容的學習完成后,即考試一次,考試內容既包括課程上講授的項目涉及的知識點,也包括自學內容。通過每一章后的上機考試,讓學生找到學習的盲區,并自覺鞏固相應內容。上機考試系統的設計如下:
1.系統架構設計。上機考試系統以全國計算機等級考試二級考試題庫為基礎,開發環境使用Visual Basic,數據庫采用SQL Server,構建基于B/S模式的試卷自動生成系統。B/S模式的優勢是客戶端零維護,客戶端除了瀏覽器,一般無須任何用戶程序,使用方便簡潔。B/S以訪問Web數據庫為中心,HTTP為傳輸協議,客戶端通過瀏覽器訪問Web服務器和與其相連接的后臺數據庫。
2.系統功能模塊。整個系統劃分為試題管理、組卷管理、評分管理和系統設置這四大模塊,如圖1所示:
3.試題管理模塊。本模塊的主要功能是試題的錄入、修改和刪除,因為本系統是以C語言考試為目的,因此試題管理中的題型主要有選擇題、填空題、判斷題、程序改錯題、編程題和程序填空題。試題管理模塊的流程為:首先選擇題目類型,系統會自動顯示題庫中已經存在的題目,然后自己選擇操作,有三種操作可選:增加、刪除、修改,根據所選操作,彈出響應的操作界面,完成試題管理功能。
4.組卷管理模塊。本模塊分為自動組卷和手動組卷。若是讓系統自動組卷,需要選擇每種題型的分值和數量,再選擇相應的難度系數和考核涉及的章節,然后由系統生成一個隨機數組抽取題目,并生成試卷和答案。若是由教師手動組卷,則先選擇每種題型的分值和數量,然后手動從試題庫中添加試題,最后生成試卷和答案。
自動組卷時系統需要遵循某種算法邏輯選取不同的題目,以保證最終試卷覆蓋范圍全面,題目難度均衡。自動組卷的算法比較多,常用的有隨機選取法、回溯試探法和數據挖掘和知識發現等方法。手動組卷由出卷教師自行設置各個題型的題目數量以及分值,還可以通過難易度和章節過濾試題,再手動添加到試卷試題列表中。
5.評分管理模塊。評分的主要標準是匹配標準答案字符和學生答案字符,流程如圖2所示:
6.系統設置模塊。本模塊主要是對數據庫中的數據進行設置,這些數據包括用戶管理、章節設置、試題難度設置。其中用戶管理包含兩類權限:教師用戶和學生用戶,教師用戶可以管理試題、查看考試的卷面和分數,學生用戶只能在考試時登錄,且同一次考試只能登錄一次,再次登錄需要授權。
三、總結
本文探討了目前C語言程序設計教學和考試中遇到的問題,針對這些問題提出了教學和考試改革的必要性,并給出了教學和考試改革的具體措施。本文的主要創新點在于課堂教學采用了基于項目的講授方法,將相關知識點融入到項目的教學中,使學生更有興趣思考問題的解決方式,在教師講授完后,學生可以立即動手編程驗證自己的解決方案。在考試方面的改革主要體現在使用上機考試,每章學完后立即考試,檢驗上課和自學內容。
參考文獻:
[1]白萍.高職院校C語言教學現狀及改革措施[J].中國市場,2014,(31).
[2]C語言教學中的項目設計[J].吉林教育,2011,(16).
[3]曹鳳蓮.C語言考試系統的設計與實現[J].福建電腦,2009,(06).