999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

計算機程序設計課程中計算思維能力的培養

2011-12-31 00:00:00于曉強趙秀巖閆丕濤
計算機教育 2011年13期


  摘要:如何在計算機程序設計課程教學中培養學生的計算思維能力,是計算機基礎教學的基本目標之一。針對計算機程序設計課程的語法結構和案例分散現象,本文提出“項目貫穿、循序漸進、思維訓練”的指導思想,介紹培養學生計算思維能力的教學方法和教學手段。
  關鍵詞:計算思維;項目貫穿;循序漸進;計算機程序設計
  
  在《中國高等院校計算機基礎教育課程體系(CFC)2008》中,提出對大學生計算機應用能力的三大要求:操作使用能力、應用開發能力和研究創新能力[1]。操作使用能力主要在第一門課程大學計算機基礎中實現,后兩種能力則主要體現在第二門課程計算機程序設計上。CFC 2008將學習目標確定成:1)學習問題求解的思路和方法,即算法。2)理解計算機是如何具體實現算法的,即如何才能有效地利用計算機編程。
  在大部分高校中,C語言程序設計是非計算機專業理工科學生的一門必修課程。根據CFC 2008精神,其目標首先是使學生掌握程序設計的基本思想,能夠用C 語言編寫程序并具備一定的程序調試能力;第二是為學生今后利用計算機解決本專業問題奠定基礎,培養學生利用計算機作為一種工具,乃至作為一種思維方式去思考問題、解決問題的能力。
  在2010年“第六屆大學計算機課程報告論壇”中,陳國良院士指出,計算思維能力是大學計算機基礎課程教育過程中一個重要的培養目標[2]。陳國良院士同時還指出,人類科學發展的三大支柱是理論科學、實驗科學和計算科學,與之相對應的是人們認識世界、改造世界的三種思維方式,即理論思維、實驗思維和計算思維[2]。
  那么,如何在計算機基礎教學過程中,訓練和培養學生的計算思維能力,使學生學會用計算機的思維去思考問題和解決問題,是一個非常值得探討的問題。
  1計算思維
  美國卡內基?梅隆大學的周以真(J.M.Wing)教授在計算機權威期刊《Communications of the ACM》上指出:計算思維是運用計算機科學的基礎概念進行問題求解、系統設計、人類行為理解等的一系列思維活動[3]。周教授認為,計算思維是人的思維,而不是機器的思維;是概念化的思維,而不是程序化思維;是一種思維方式,而不是一種產品;應當是每個人的基本技能,而不是僅屬于計算機科學家。計算思維概念,與董榮勝、古天龍等教授2002年提出的計算機方法論有著很多共同之處。計算思維是從學科思維這個層面直接討論學科的根本問題與學科的思維方式,而計算機方法論則是從方法論的角度來討論學科的根本問題和學科形態[4]。
  2010年,李國杰院士進一步指出,今天的信息世界已經是一個物理世界、信息世界、人類社會組成的三元世界,是一種新的信息世界觀,與以往一人一機組成的、分工明確的人機共生系統完全不同。這種改變,使信息科學應當成為研究人機物社會中的信息處理過程[5]。
  這種變化,對人們利用計算機分析、解決問題的能力提出了更高的要求,也對高等學校非計算機專業的計算機基礎教學提出了更高要求。計算機基礎教學需要培養學生的計算思維能力,并提高其信息素養,使學生在處理問題時,能夠更好地利用計算機作為一種不可或缺的工具進行思維、表達,從而對各種信息進行深層次的加工處理,以便把其掌握的專業知識更好地應用到科學研究和生產中,促進科技進步和社會生產力的發展。
  2C語言程序設計課程面臨的問題
  李未院士講到程序設計是計算機學科的核心課程,吳文虎教授也談到程序設計課程的教學經驗,凡是講授這門課程的教師都知道,這門課程比較難于教授,尤其是為非計算機專業講授這門課程。在基礎教學中,這門課程難于講授的主要原因可能有以下幾方面:
  1) 教師用“專業”眼光去看待非專業的學生。
  2) 教學中重理論輕實踐,實踐課時不足,對程序設計能力的培養不夠。
  3) 例題多而散,學習后,學生不能得到一個比較綜合的訓練。
  4) 學生的水平參差不齊,教學中對學生個性化學習需求關注不夠。
  5) 課程特有的屬性決定的。各種程序設計語言的語法結構一般都是零散的,學生難于相互關聯、總結,采用的案例也是比較零散、短小的、關聯不大。學生經常是學會了全部的語法知識,但仍然不知道這門語言能做什么,能解決什么實際的問題,甚至不知道如何解決問題。
  6) 學生精力投入不足或學習方法不當,大部分學生認為自己畢業又不從事計算機軟件開發工作,沒有必要學習程序設計課程。
  針對這些問題,結合CFC 2008精神,我們在C語言程序設計課程講授過程中,以學生計算思維能力培養為目標,提出了“項目貫穿、循序漸進、思維訓練”的指導思想,以改變傳統計算機程序設計課程中側重向學生介紹語法結構的做法。
  3教學方法改革及計算思維能力培養
  3.1項目驅動教學
  在理論教學環節上,本著一個項目貫穿整個課程教學的思想。我們用“猜數游戲”為主、常見問題為輔進行各個章節的講授。具體做法如表1所示。
  3.2循序漸進教學
  心理學家認為,模仿是孩子學習的第一步。通過模仿,孩子不僅能夠復制行為,而且也能對模仿的行為進行加工,有所創新。人們經常把模仿描述成“學習的捷徑”。在程序設計課程的學習過程中同樣如此。讓學生通過模仿現有示例,逐步掌握C語言中的各種語法要求、控制結構,不斷加強學生對于課程的學習興趣。
  在實踐教學環節上,我們將實驗內容按照“驗證—調試—設計”的順序進行設計。
  1) 驗證:安排學生對學習過的內容利用現有的簡單程序進行驗證。
  2) 調試示例:編寫簡單的程序作為調試示例,在其中設置學生經常遇到的各種小錯誤(包括語法錯誤、邏輯錯誤),讓學生按照實驗指導中的講解,逐步找到各個錯誤。
  3) 調試練習:讓學生根據前面的調試示例,修改類似程序的錯誤,并進行總結。
   4) 編程示例:針對常見問題進行分析、講解、編程,讓學生學習問題分析方法和程序設計方法。
  5) 編程練習:根據編程示例,將題目進行略微調整或與前面的知識相結合,讓學生進行編程解決。
  通過上述實踐步驟,學生可以逐漸掌握編寫程序的語法規范及思維技巧。
  在理論教學環節,同樣按照循序漸進的原則進行問題講解。例如,在講授九九表輸出問題時,按照如下的順序設計問題并編程,逐步實現九九表的輸出。
  1) 輸出1到9這幾個數字。
  2) 輸出9行1到9。
  3) 修改九九表中各行數值的個數,將輸出的9行數字轉化成九九表格式。
  4) 最后研究數字的變化規律,實現真正九九表的輸出。
  3.3多角度思維訓練
  在C語言程序設計課程中,計算思維的能力要求主要體現在學生對于問題的分析、解決能力培養上。如何在課程講述過程中,訓練、提高學生分析問題、解決問題的能力,是講授這門課程的全體教師的責任。我校除了在課程內容設置上按照“一個項目貫穿課程”的指導思想進行授課、在實踐環節上按照“驗證—調試—設計”的順序進行設計,還在教學過程中注重以下幾個方面。
  1) 上機實驗流程規范化。要求學生對于實驗內容,要按照“課前預習—分析問題—設計算法—編寫程序—上機調試”的順序依次進行,使他們養成一個好的學習和思維習慣,逐步訓練、提高他們分析問題、解決問題的能力。
  2) 答疑指導引導化。在學生有疑問時,不直接為學生指出其問題,而是用提問的方式引導學生逐步自己找到問題所在。例如,學生的程序代碼為:
  學生提出要輸出兩個數的乘積,怎么輸出結果不對呢?可以依次提出問題:應該輸出什么信息呢?計算機屏幕上的顯示和預期有什么不同?有哪些情況可以造成這種不同呢?printf函數的一般格式是什么,每部分什么含義?你所寫的printf函數與一般格式一致嗎?這樣,通過依次設置問題,既引導學生自己發現了程序中的錯誤所在,又訓練并逐步提高了學生發現問題、改正問題的能力。
  
  3) 問題趣味化。常規的、一成不變的問題很難激起學生的學習興趣,趣味性是激起學習興趣的一個可行手段。那么,如何利用趣味化的問題講解程序設計中的各種控制結構?這需要從案例設計入手。例如:用出租車的計費方式和if結構結合、用所得稅的計算方式和switch結構結合、讓學生把一天的行程用基本控制結構進行描述等。
  4) 提倡算法的多樣性。程序設計課程的價值之一在于訓練、提高學生的計算思維能力,如果學生都按照教師的邏輯思維習慣進行分析問題、解決問題,這不能不說是一種失敗。所以,在讓學生學習教師分析問題、解決問題的同時,要倡導算法的多樣性,培養、激勵學生的創新意識、探索精神和問題求解能力。例如,有些同學數學基礎很好,有一些問題,他們總會用數學的方式先進行初步解決,再結合計算機進行編程。對于這些同學,一定要進行及時的鼓勵,并介紹他們的做法,使之感到編程的成就感。
  5) 注重算法的簡化和優化[6]。我們不能只提倡算法多樣化,還要引導學生對算法進行研究,逐步達到簡化并優化算法的目標。例如我們常用的“百雞百錢”問題,很多學生按照公雞、母雞、小雞的順序用三重循環進行實現。我們就提出“是否可以用二重循環實現呢”,學生仔細一想,確實可以改成二重循環進行實現。再比較兩次的實現方法,發現循環次數由100*100*100=1000000降到了100*100=10000,降幅達到了99%。一個簡單的改進,讓學生看到了算法改進的魅力。這也讓部分同學想到“這個問題是否可以進一步簡化呢”,再進行分析,發現公雞的數量不可能大于32,從而可以將算法中公雞數量上限從100改到32,母雞數量上限也改成98,循環次數降到了32*98=3136,比二重循環又減少了近70%。這一系列的簡化,充分調動了學生的學習興趣。
  4結語
  在計算機程序設計課程的講授中,通過采用項目貫穿、循序漸進及多角度的思維訓練方法,學生分析問題和解決問題的能力得到了明顯提高,也有部分同學因無法保證前后知識的連貫性,造成后期難以跟上正常教學進度,出現掉隊現象。如何將計算機程序設計課程中的分散語法結構相互關聯起來,利用好的案例提高學生學習積極性,培養、提高學生的計算思維能力,仍是值得探索的問題。
  
  參考文獻:
  [1] 中國高等院校計算機基礎教育改革課題研究組. 中國高等院校計算機基礎教育課程體系2008[M]. 北京:清華大學

主站蜘蛛池模板: 欧美a在线视频| 欧美日一级片| 在线观看免费黄色网址| 又污又黄又无遮挡网站| 在线一级毛片| 久久免费视频6| 色欲色欲久久综合网| 国产特级毛片| 在线看AV天堂| 青青草原国产av福利网站| 婷婷色婷婷| 欧美午夜视频在线| 国产精品第| 亚洲天堂网在线观看视频| 一级片一区| 中文成人在线视频| 国产门事件在线| 欧美五月婷婷| 日本精品视频一区二区| 在线免费亚洲无码视频| av在线无码浏览| 亚洲av无码久久无遮挡| 最新国产成人剧情在线播放| 高清精品美女在线播放| jizz国产视频| 无码网站免费观看| 一级全黄毛片| 九九热免费在线视频| Jizz国产色系免费| 久久免费精品琪琪| av在线手机播放| 精品91在线| 在线一级毛片| 欧美午夜在线观看| 香蕉色综合| 曰韩人妻一区二区三区| 亚洲熟女偷拍| 国产黄在线免费观看| 久久黄色毛片| 亚洲成年人网| 精品国产自在在线在线观看| 国产极品美女在线| 美女视频黄频a免费高清不卡| 欧美精品另类| 国产男人天堂| 国产大片黄在线观看| 亚洲中文制服丝袜欧美精品| 欧美第二区| 99国产精品免费观看视频| 美女被狂躁www在线观看| 成人在线亚洲| 久久无码免费束人妻| 亚洲欧美另类视频| a毛片在线| 亚洲国产精品日韩av专区| 亚洲欧美精品日韩欧美| 波多野结衣一级毛片| 米奇精品一区二区三区| 在线a视频免费观看| 欧美在线网| 国产成人午夜福利免费无码r| 日韩国产一区二区三区无码| 成人在线欧美| 久久久久人妻一区精品色奶水| 免费中文字幕在在线不卡| 美女被躁出白浆视频播放| 亚洲天堂网在线播放| 免费一级全黄少妇性色生活片| 欧美a在线看| 国产第二十一页| 欧美国产日韩在线| 亚洲日韩第九十九页| 欧美日一级片| 国产一区二区三区夜色| 久久精品丝袜高跟鞋| 一级做a爰片久久免费| 国产精品成人AⅤ在线一二三四| 日韩无码黄色| 久久频这里精品99香蕉久网址| 理论片一区| 日本免费福利视频| 美女一区二区在线观看|