您好, 訪客   登錄/注冊

融入計算思維的C語言程序設計教學探究

來源:用戶上傳      作者:

  摘  要: 計算思維是21世紀大學生應該具備的素質和能力,C語言程序設計課程教學在計算思維的培養中發揮著重要作用。探究C語言程序設計課程在傳統教學的基礎上,融入計算思維的任務驅動教學模式,把計算思維的培養融入到教學中。與傳統的教學模式相比,融入計算思維的任務驅動教學模式提高了學習興趣,增強了學習效果,同時培養了計算思維能力。
  關鍵詞: C語言程序設計; 計算思維; 任務驅動教學模式; 教學改革
  中圖分類號:G642          文獻標志碼:A     文章編號:1006-8228(2019)05-77-03
  Abstract: Computational thinking is a must-have quality and ability for college students of the 21st century. C language programming course teaching plays an important role in the cultivation of computational thinking. This paper explores the task-driven teaching mode with computational thinking on the basis of traditional teaching mode, in order to integrate the cultivation of computational thinking into the teaching. Compared with the traditional teaching mode, the task-driven teaching mode with computational thinking improves the learning interest and learning effect, and cultivates the computational thinking ability.
  Key words: C language programming; computational thinking; task-driven teaching mode; teaching reform
  0 引言
  計算思維是所有大學生21世紀都應該具備的素質和能力,“C語言程序設計”是普通本科高校的一門計算機基礎課程,擔負著培養大學生的程序設計能力和培養計算思維的任務。
  筆者發現,在傳統C語言程序設計課程的教學過程中存在以下問題:一是教學過程中主要由教師講解,學生處于被動的學習狀態;二是教師講解完理論知識后由學生完成固定的實驗內容,沒有發揮學生主觀能動性,其解決問題的能力和主動思考的能力沒有得到提高;三是教師在理論教學和實踐教學中以語法和編碼為主,忽略了算法分析和思維能力的訓練,學生的思路受到限制,不清楚該門課程在專業上的作用,學習動力不足,導致教學效果不夠理想。
  本文提出在C語言程序設計課程教學中融入計算思維的培養,是C語言程序設計課程改革的一個重要方向,也是這門課程教學的核心任務之一。
  1 計算思維
  2006年3月,美國卡內基·梅隆大學計算機科學系主任周以真教授首次提出了計算思維(Computational Thinking)。周教授認為:計算思維是運用計算機科學的基礎概念進行問題求解、系統設計、以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動[1]。隨著這一概念的提出,立刻引起包括美國、英國各界的關注和支持,美國計算機協會(ACM)2008年在網上明確公布將“計算思維”與“計算機導論”課程綁定在一起。在國內,也掀起了計算思維培養的浪潮,2008年10月31日,我國高等學校計算機教育研究會在桂林召開了關于“計算思維”與“計算機導論”專題學術研究會[1]。出席會議的近百位專家都來自于80多所高校,共同探討如何以課程為載體培養學生面向學科的計算思維方法。
  隨著信息科學與技術的不斷進步和普及,特別是互聯網和Cyberspace應用的不斷深化,計算思維將成為我們時代思維的主要方式和手段[4]。在21世紀,計算思維同“讀、寫、算”一樣,成為素質教育的一部分,是必須具備的基本技能[2]。然而,計算機思維的培養比培養“讀、寫、算”困難得多,思維的形成是一個長期培養的結果[5],不能一蹴而就,這就需要把計算思維的訓練融入到教學過程中,通過長期的模擬訓練,讓學生具備并提高計算思維能力。
  2 融入計算思維的任務驅動教學模式在C語言程序設計教學中的實踐
  融入計算思維的任務驅動教學模式以學習者為中心,強調學習者的學習過程必須與學習任務相結合,通過完成任務來激發和維持學習者學習的興趣和動機[3]。在任務驅動的教學模式中,教師是主導,學生是主體,任務是核心。計算思維利用啟發式推理來分析問題、找出解決問題的方法和途徑。而C語言程序設計課程正好符合把計算思維融入到任務驅動的教學模式中培養計算思維的條件。
  計算思維是數學和工程思維的互補與融合[1,3]。在C語言程序設計課程教學中,把與專業相關的簡單工程問題引入到教學案例中,不僅學習了程序設計的基本語法,也體現了該課程在專業中的作用,同時通過解決工程問題的過程訓練學生的計算思維。順序結構程序設計是學習程序設計的入門內容,是學習后續復雜程序設計的基礎,學生初步學會用計算機程序去解決問題。下面是筆者就C語言程序設計的順序結構程序設計,使用融入計算思維的任務驅動教學模型(TDTMCT)來實施教學的過程。教學過程分為以下六個階段。  ?、?師生課前準備
  教學者進行教學設計,包括教學目標,教學任務和教學過程的設計,收集教學材料;學習者清楚教學內容為順序結構的程序設計,在前期已經完成數據類型和輸入輸出語句的學習,預習順序結構程序的相關知識。
 ?、?設計任務
  基于計算思維的任務驅動教學模式中任務是核心,教學者使用計算思維的一系列方法設計課程任務,同時做好教學準備。本節課的教學內容為順序結構程序設計,結合前面的準備,設計任務:求建筑物的高度,具體描述為在工程測量建筑物高度時,首先測出建筑物在太陽照耀下的影子長度m,再通過測角儀測出影子末端與建筑物的仰角的角度a,根據測量的結果計算建筑物的高度。教學過程圍繞這個任務,教師引導學生把工程問題逐步約簡為數學問題,分析出已知和未知的問題、再確定如何求解。
 ?、?呈現任務
  教師利用計算思維的方法把任務呈現給學生。先把問題用圖示的方式給出來,讓學生把工程任務約簡為數學問題:已知直角三角形的一條直角邊長度和鄰角,求另一條直角邊的長度;再約簡為三角函數公式:H=L*tag(a),就成了一個簡單的計算問題。呈現給學生的任務就成了:新建一個程序,輸入測量的影子長度和仰角的角度,求建筑物的高度。 把任務呈現給學習者后,學習者根據任務進行教學,建立小組(建議2人一組),確定任務并進行分工。
 ?、?實施任務
  在任務實施過程中,首先講演一個程序新建、構成和基本結構;然后引導學生分析任務中哪些是已知信息(數據輸入)、完成什么樣的運算(數據加工處理)、哪些是由計算機告訴用戶的結果信息(數據輸出)、具體如何實現;再引導小組分析討論并完成程序的編寫和調試,老師給出一組數據,一人用數學方式給出數據并進行計算,另一個同學用程序來得出結果,兩個同學比較看誰是正確的,如果都是正確的看誰更快,如果程序運算的結果不正確,一起找出問題并修改,直到正確為止;最后再給出另一組數據,兩位同學再分別用人工計算和用計算機程序計算,再進行比較,看誰算得又快又準。
 ?、?總結評價
  在教學任務完成之后,運用計算機思維的遞推方式對整個學習過程進行概括、交流、分享學習心得和程序編寫過程中的注意事項。
 ?、?反思內化
  反思內化過程是融入計算思維的任務驅動教學模式的核心環節,在完成上述過程后,通過思考、課后實踐等方式引導學生對學習的內容進行思考、實踐,并在這個過程中自行歸納出對類似問題的程序編寫方法和實現步驟,完成知識到能力的轉化。通過反思內化,學生對這鞏固部分知識,清楚這些知識的應用領域,會用這些知識去解決相關的問題。
  這只是一個融入了計算思維的順序結構程序設計的教學設計,利用基于計算思維的任務驅動式教學模型TDTMCT,教學者與學習者圍繞任務這根主線進行教與學。在教學者設計任務、呈現任務、實施任務、總結評價,學習者明確任務、完成任務、共享交流的過程中完成學習[3]。學習者用明確任務,運用任務驅動的方式完成新知識的學習,并通過不斷的交流探究問題的實質,并通過最后的總結評價、反思內化進行評價和反思,完成學習的同時感受學習的快樂和成就。計算思維采用了抽象和分解來迎接龐雜的任務或者設計巨大復雜的系統,這與結構化程序中的模塊化程序設計思路一致[1],在C語言程序設計課程中可以很好的把融入計算思維教學模式應用到教學中,在培養學生的程序設計能力同時實現計算思維的培養。
  3 結束語
  把計算思維的理念融入到C語言程序設計課程教學中,把學生從枯燥的語法學習和規則學習轉移到用計算機程序設計解決實際問題中,變被動學習為主動學習,通過解決問題或完成一個實際任務,提高了學習的興趣,增強了學習的成就感,學生自覺地用計算機思維來解決遇到的問題,綜合素質也有所提升。計算思維的培養是一個長期的過程,如何更好的培養計算思維,還需要在教學中不斷的探索。
  參考文獻(References):
  [1] 牟琴,譚良.計算思維的研究及其進展[J].計算機科學,2011.3:10-15,50
  [2] 李國杰.21世紀上半葉信息科學技術展望[J].中國科學院院刊,2010.1:78-86
  [3] 牟琴,譚良,周雄峻.基于計算思維的任務驅動式教學模式的研究[J].現代教育技術,2011.6:44-49
  [4] 王飛躍.面向計算社會的計算素質培養:計算思維與計算文化[J].工業和信息化教育,2013.6:4-8
  [5] 柳泉,張晗.計算機程序設計基礎課程中計算思維的培養[J].計算機工程與科學,2016.A01:167-169
轉載注明來源:http://www.hailuomaifang.com/8/view-14902867.htm

?
99久久国产综合精麻豆