
[摘 要]在信息技術快速發展的背景下,程序設計在高等教育中占據著重要的地位。然而,傳統教學模式存在著教學缺乏針對性、考核方式單一等問題,可能無法全面激發學生的積極性和創造性。本文以天梯賽為例,通過深入研究“以賽促學”教學模式,為教學改革提供了新的思路和方法,也促進了學生的學習和技能提升。這種模式是以案例式教學為主,充分結合競賽知識點教學,以“以賽促教,以賽促學和以賽促改”為訓練目標。在實施過程中,采用適當的課程設計和考核方式,激發學生的學習熱情和競爭意識。同時,詳細介紹這種基于競賽模式的C程序設計課程改革方案的設計理念、具體教學模式的設計過程以及課程改革的效果。這種模式不僅將理論知識與實際項目相結合,還大大提高了學生的專業競賽成績。
[關鍵詞]天梯賽;以賽促學;C語言;教學模式
doi:10.3969/j.issn.1673-0194.2024.21.060
[中圖分類號]G642 [文獻標識碼]A [文章編號]1673-0194(2024)21-0213-04
0" " "引 言
為培養大學生的編程能力,各大高校在大學一年級開設了程序設計類課程,如C語言、Python等,具有較強的實踐性和操作性。學生通過學習計算機編程語言,培養自身的計算思維能力,完善自身對專業領域問題的抽象理解能力。隨著國家對高校教育改革的深入,“以賽促學”這種教學方式越來越凸顯優勢。參加全國性的軟件競賽,可以從多個層面培養計算思維、提升學生的計算機能力和水平,但是國際大學生程序設計競賽要求比較高,一般本科院校很難參與其中。在這種情況下,??诮洕鷮W院積極開展綜合素質教育,組織學生參加中國高校計算機大賽——團體程序設計天梯賽。
本文以C程序設計課程為教學研究對象,以案例式教學為基礎,以提高競賽水平為目標。實驗實訓課以PTA平臺輔助,實驗內容融入競賽真題,鼓勵學生積極參與課堂討論和學習活動。這種教學模式旨在幫助學生更好地理解編程知識,提高編程水平,培養學生的創新思維和團隊合作能力。
1" " "天梯賽簡介
團體程序設計天梯賽是面向全國高校學生的高水平計算機類競賽,是中國高校計算機大賽的競賽板塊之一,旨在提升學生計算機問題求解水平,增強學生程序設計能力,培養團隊合作精神,提高大學生的綜合素質。該比賽以算法設計、編程技巧和解決問題的能力為側重點。比賽重點考查參賽隊伍的基礎程序設計能力、數據結構與算法應用能力,并通過團體成績體現高校在程序設計教學方面的整體水平。浙江大學的在線評測系統發展出一個可支持在線教學的良好平臺——PTA輔助教學平臺。2023年比賽共有來自全國480所高校的1 624支代表隊,共16 167名選手參加,參賽規模創歷史新高。
2" " "傳統教學模式存在的問題
傳統C語言教學模式存在一系列問題,主要包括以下三個方面。
2.1" "大學生現有基礎參差不齊,教學缺乏針對性
隨著教育事業的不斷發展,各級院校都在逐漸擴招,因此,這就在某種程度上導致學生本身的能力素質水平參差不齊,加上對于該專業的學生來說,在高中階段對計算機專業知識內容接觸得較淺,所以本身能力素質水平有限。
2.2" "C語言概念比較抽象,學生難以直觀理解
傳統的教學方法過于強調理論知識的灌輸,這種做法忽略了知識與實踐之間的密切聯系,限制了學生的全面發展。內容通常過于抽象和枯燥,缺乏趣味性和互動性,這使得學生缺乏學習C語言的興趣,學習積極性不高。
2.3" "考核方式過于單一
目前實踐課程的考核方式一般以學生在課堂上完成的實驗報告及學生完成實踐作業的情況來決定實踐教學的成績。這種考核方式過于單一,無法反映每一個學生的真實水平。而且這種考核方式存在很多弊端,學生的目標就是通過考核,因此部分學生可能無法完成任務,就去復制基礎相對好些學生的成果[1]。
傳統案例式教學著重于教科書知識的傳遞,卻忽視了通過競賽式編程培養學生解決實際問題的技能。因此我們迫切需要改革創新課程體系、教學方法,以適應??诮洕鷮W院應用型本科的轉型。
3" " "基于天梯賽的“以賽促學”教學模式設計
“以賽促學”是通過參與學科競賽的方式提高學生學習的質量。結合學科競賽的特點,??诮洕鷮W院逐步建立并實施“以賽促學”計算機實踐的教學模式,具體做法如下。
3.1" "以賽促教,融入競賽知識點
程序設計大賽的題目一般是對實際應用問題的求解,在語言描述上往往比較生動有趣?;诔绦蛟O計類學科競賽的需求,在傳統的理論教學基礎上,將學科競賽知識點和課程教學內容進行整合與優化,構建項目化和模塊化的教學單元,將理論與學科競賽知識點進行一體化融合[2]。海口經濟學院C程序設計課程教學所授的教學內容涵蓋了大賽的知識點,采用案例式教學模式,運用邊講邊練的手段,學生練習的實際案例由真題構成,引導帶動學生思考、討論解決問題的方法,分析該方法的實現原理,并逐步推導總結出解決此類問題的一般思路。
然而,算法競賽題目涉及領域非常廣,對學生要求較高,且在大三會開設對應的算法分析與設計課程。競賽題目的難度可分為低難度、中等難度和高難度三個類型,主要包含窮舉、排序、搜索、遞歸、回溯、數據結構、動態規劃和圖、STL容器、迭代器等相關知識。為了幫助低年級學生提前打好編程競賽基礎,可在設計C程序設計課程案例時充分融入常見的中低層次的競賽知識點[3]。
傳統案例式教學過于注重教材內容,忽視了培養學生解決實際問題的編程能力。為彌補這一不足,教師在日常教學中將競賽真題穿插到相關章節,同時對知識點進行梳理概括,幫助學生建立知識體系,提升他們的競賽水平。
案例教學:2020年天梯賽真題——誰是贏家
在娛樂節目中,觀眾投票和評委評審一直是決定藝人勝負的關鍵環節。2020年天梯賽的真題——誰是贏家通過表演賽制引發了觀眾的興趣。本文將深入解析該題,運用選擇結構的知識,幫助讀者更好地理解問題,并培養學生對課程的學習興趣。
3.1.1" "問題描述
某電視臺娛樂節目的規則是觀眾投票和評委投票兩部分決定勝負。規則包括:觀眾票數高且得到至少1名評委認可,或者觀眾票數低但得到全部評委認可。
3.1.2" "分析與解答
場景分析:
首先,觀眾人數為奇數,確保沒有平票的情況。這意味著一方必定能夠獲得多數觀眾的支持。
勝負條件:
如果一位藝人的觀眾票數高,且得到至少1名評委的認可,該藝人勝出。
或者,藝人的觀眾票數低,但得到全部評委的認可,也可以勝出。
關鍵點:
藝人需要至少在觀眾或評委中的一方占據優勢,否則無法獲勝。
3.1.3" "案例教學的作用
該問題引導學生運用選擇結構的知識,通過觀眾票數和評委投票兩方面的條件進行邏輯判斷。學生需要運用邏輯思維,判斷何種條件下藝人能夠獲勝,培養他們的思辨能力。通過解答這一實際問題,學生不僅鞏固了選擇結構的概念,還能夠將其應用到實際生活場景,培養解決問題的能力。
3.2" "借助平臺,優化課堂教學
PTA是一個開放的程序教學平臺,任何人都可以通過手機或者郵箱免費注冊,用戶角色主要分為教師和學生角色。教師可申請開通教師權限,具備教師權限的賬號可創建和管理班級、建立(并分享)題目集、布置作業、考試及統計成績等。為了更好地提升學生自主探究的能力,??诮洕鷮W院C程序設計課程是線上線下混合教學模式,借助PTA平臺發布課程預習任務,學生在線上自主預習。課上,教師講授完理論知識后,學生就通過PTA平臺進行練習,以此達到鞏固知識點的作用。課后,教師設置好每章的習題集,通過PTA平臺發布作業,教師也可以通過統計答題得分了解學生不足。
3.3" "增加技能競賽的專業素質拓展課
為全面推進素質教育,有效強化素質教育在培養應用型人才、服務學生成長成才的功能和作用,海口經濟學院為計算機科學與技術專業的學生開設素質拓展項目計算機類競賽培訓。本課程是讓學生綜合運用C語言、C++語言等相關技術知識,進行計算機程序設計比賽,提高綜合應用知識的能力、分析解決問題的能力和程序設計實踐技能。
技能大賽為學生提供了一個培養創新能力的平臺,激發他們的學習熱情。通過備賽、集訓,提高學生算法設計、數據結構和編碼實踐的能力,并培養分析和解決問題的能力。學生積累項目經驗,提升解決問題的能力,極大地提高了他們的就業競爭力。圖1為??诮洕鷮W院部分同學的素質拓展課的答題情況,通過增加專業素質拓展課,對提高學生競賽成績具有積極的影響。這樣的實踐課程不僅有助于學生更深入地理解和掌握程序設計的相關知識,還有助于培養他們更全面、更實際的專業素質。
3.4" "舉辦校內程序設計大賽
程序設計大賽是一種以程序設計為基礎、以實際編程為手段的競賽形式。??诮洕鷮W院連續6年成功舉辦了校內程序設計大賽,這類比賽通常設有一系列挑戰性的題目,要求參賽學生在有限的時間內完成程序設計任務。學院先組織初賽,再到全國賽,安排了專門的老師對學生進行賽前培訓指導。賽后選拔出成績優異的同學成為全國賽的正式隊員,再開始有計劃、有組織地進行全國賽前培訓。
培訓階段,教練組老師共同設計一些有挑戰性的競賽題目,確保比賽內容貼近實際應用,促使學生更深入地理解和掌握知識。同時,學院讓參加過比賽、有經驗的學長帶領低年級的同學,互幫互助。通過參加校內程序大賽,學生能夠積累實踐經驗,更好地應對全國賽的挑戰。
4" " "課程教學改革的成效
近幾年,??诮洕鷮W院的網絡學院每年組織相關專業的學生參加天梯賽,高度重視學生的程序設計能力培養,并以天梯賽為契機,積極開展程序設計類課程的教學改革。通過建立完善的獎勵機制,不僅激發了學生參賽的熱情,也調動了專任教師的教學積極性,為提升學生編程能力和教學質量提供了有力保障。
在競賽中,海口經濟學院學生展現了扎實的程序設計能力,取得了良好成績。學院師生團隊連續5年榮獲全國總決賽“海南省高校一等獎(珠峰爭鼎)”。2023年,全校共7名教師及60名學生參賽,獲得“海南省高校一等獎(珠峰爭鼎)”一項、“海南省團隊一等獎”一項、“海南省團隊二等獎”兩項,所有參賽選手均榮獲“全國總決賽——成功參賽獎”。
學生積極參加競賽不僅提高了專業成績,更重要的是全面提升了他們的綜合素質和創新創業能力,同時營造了積極向上的學習氛圍。學科競賽進一步提升了學生的創新思維、團隊合作和實踐應用的綜合能力,也是構建以“實踐應用+專業認證+校企融合+創新創業意識”為驅動的項目伴隨式教學體系成效的最好注解。
依托程序設計大賽的契機,學校對傳統的編程語言類課程進行全面的改革。教師們將競賽知識與原有實踐項目有機融合,不斷更新和完善教學內容,實現了競賽知識的普及化教育。同時,這一過程促進了教師專業技能的提升,為教學質量的提高奠定了堅實的基礎。
5" " "結束語
“以賽促學”的教學模式為C語言課程的教學改革提供了新的思路。本文以天梯賽為例進行研究和分析,探究了“以賽促學”教學模式在大學編程課程的應用。這種教學模式是通過參與比賽來激發學生的學習興趣和積極性,在不斷地練習中提高了學生程序設計能力。我們發現通過比賽的形式推動教學改革,學生們愿意投入更多時間和精力去學習??傊?,“以賽促學”教學模式在提高學生學習積極性、專業成績和學生創新意識等方面具有積極的影響。
主要參考文獻
[1]陳有英.程序設計課程以賽促學的教學改革研究:以藍橋杯為例[J].教育教學論壇,2020(39):290-291.
[2]吳志強.學科競賽引領下的程序設計基礎課程教學改革與實踐[J].河南教育(高等教育),2023(7):63-65.
[3]譚立興,姜楓.基于競賽模式的“C程序設計”教學改革研究[J].科技與創新,2022(9):145-148.