資源描述:
《以計算思維為導(dǎo)向的c語言課程研究》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、以計算思維為導(dǎo)向的C語言課程研究以計算思維為導(dǎo)向的C語言課程研究C語言是我院針對非計算機專業(yè)開設(shè)的計算機類公共基礎(chǔ)課程,也是計算機專業(yè)及相關(guān)專業(yè)的專業(yè)基礎(chǔ)課。在該門課程的教學(xué)中一直存在一些問題:[1] ?。?)我院非計算機專業(yè)學(xué)生約占全體學(xué)生的90%,大部分學(xué)生認(rèn)為自己畢業(yè)又不從事計機軟件開發(fā),與后續(xù)課程結(jié)合又不緊密,所以學(xué)習(xí)的主動性和自覺性下降。人在課堂,心卻不在聽課狀態(tài),厭學(xué)情緒明顯,學(xué)習(xí)效益低下。 ?。?)C語言的課程采取大班上課,學(xué)生的水平參差不齊,隨著程序設(shè)計知識點增多,大量的難以理解和記憶的新概念
2、、新術(shù)語、新規(guī)則出現(xiàn)以后,學(xué)生逐漸感覺課程難度大,更加無心學(xué)習(xí)?! 。?)課堂內(nèi)容與實際問題脫節(jié)C語言是一門理論和實踐性都很強的課程。教學(xué)中重理論輕實踐,實踐課時不足,對程序設(shè)計能力的培養(yǎng)不夠。 ?。?)重語法,輕算法?,F(xiàn)有的C語言教材中首先要介紹編程涉及的語法格式,然后講解語法要點和注意事項,對算法描述內(nèi)容涉及甚少。再加上計算機等級考試的內(nèi)容主要包括選擇題、判斷題、填空題、程序填空、程序改錯、程序編程題等,都是側(cè)重語法,無疑這種考查方法使得學(xué)生的程序設(shè)計能力降低?! 。?)C語言的語法結(jié)構(gòu)一般都是零散的,學(xué)
3、生難于相互關(guān)聯(lián)、總結(jié),采用的案例也是比較零散、短小的、關(guān)聯(lián)不大。學(xué)生經(jīng)常是學(xué)會了全部的語法,但仍不知道這門課能做什么,能解決什么實際的問題,甚至不知道如何解決問題。 1計算機思維 近年來,隨著計算思維概念的提出,各大高校相繼把計算思維引入到計算機類課程教學(xué)中,圍繞計算思維能力的培養(yǎng)開展課程教學(xué)。那么,究竟什么是計算思維? 計算機思維的概念和特征:周以真教授于2006年在municationsoftheACM期刊上首次提出了計算思維的基本概念:計算思維是運用計算機科學(xué)的基礎(chǔ)概念進行問題求解、系統(tǒng)設(shè)計以及人
4、類行為理解等涵蓋計算機科學(xué)之廣度的一系列思維活動為便于理解。計算思維作為一種思維活動,它不是僵化的一種具體問題的解決方法,而是具有很好普適性的思考方式,提供的是一種方法論。[2] 2如何在C語言課程中培養(yǎng)計算思維能力?以下針對這些問題談一下筆者的認(rèn)識和看法 ?。?)重視實驗教學(xué)。C語言程序設(shè)計是一門實踐性很強的課程,實驗教學(xué)環(huán)節(jié)尤為重要。目前我院通過優(yōu)化調(diào)整現(xiàn)有學(xué)時比例達到課程改革的目的。將C語言程序設(shè)計的學(xué)時重新分配:該課程總課時為72學(xué)時,其中學(xué)時調(diào)整為理論和實踐學(xué)時各占一半。在教學(xué)內(nèi)容符合省等級考綱要
5、求的基礎(chǔ)上,課程采用課堂講授與實驗操作相結(jié)合的方法,使學(xué)生動手能力得到了較大的提高。實驗內(nèi)容要具有一定的趣味本文由論文聯(lián)盟.L.收集整理性或?qū)嵱眯?,比如銀行存款利息和if結(jié)構(gòu)結(jié)合、出生月份的計算和sdash;調(diào)試設(shè)計的順序進行設(shè)計。1)驗證:安排學(xué)生對學(xué)習(xí)過的內(nèi)容利用現(xiàn)有的簡單程序進行驗證;2)調(diào)試示例:編寫簡單的程序作為調(diào)試示例,在其中設(shè)置學(xué)生經(jīng)常遇到的各種小錯誤(包括語法錯誤、邏輯錯誤);3)編程練習(xí):根據(jù)編程示例,讓學(xué)生能用靈活運用所學(xué)知識,求解新的問題解決類似的問題,既鞏固了所學(xué)知識,又提升了學(xué)生的分
6、析問題和解決問題的能力。在實驗教學(xué)過程中,授課教師還要注意引導(dǎo)、啟發(fā)學(xué)生積極思考。讓學(xué)生在親手操作中學(xué)習(xí)知識、消化知識,運用知識,強化計算思維。培養(yǎng)他們積極思維,自己發(fā)現(xiàn)問題、解決問題的計算思維能力。[3] ?。?)采用項目驅(qū)動的方式進行教學(xué)。針對于C語言的語法結(jié)構(gòu)過于零散的情況,可以采用項目驅(qū)動的方式。本著一個項目貫穿整個課程教學(xué)的思想??梢赃x用涵蓋所有知識點的猜數(shù)游戲經(jīng)典程序,讓學(xué)生圍繞這個程序循序漸進地學(xué)習(xí),便于思維訓(xùn)練的連貫性。[4] ?。?)案例式教學(xué)。案例式教學(xué)通過先提出問題分析問題解決問題的過程
7、中講授所需知識點。在講解案例時,我們先提出具體問題,后引導(dǎo)學(xué)生去體會為了解決問題而產(chǎn)生的大腦思考過程,將人的想法轉(zhuǎn)寫成計算機能夠處理的表達式或操作步驟。在課堂上教師借助案例題把C語言的基本概念和方法傳授給學(xué)生。這種案例式教學(xué)能更好地引導(dǎo)學(xué)生去分析問題、解決問題,特別是提高學(xué)生如何自主尋求解決方案的獨立思考能力?! 。?)重視算法的作用。將C語言中常用的算法進行歸類,在教學(xué)過程的不同階段,分別引入這些算法。好的算法不一定適用于每個問題和每個學(xué)生,通過算法的多樣性使學(xué)生深入理解到計算機求解同一問題可用不同的方法。
8、而掌握計算機求解問題的各類方法,也是培養(yǎng)學(xué)生計算思維的關(guān)鍵。例如素數(shù)求解問題:如果n能被2~(n-1)之中任何一個整數(shù)整除,則表示n肯定不是素數(shù),不必再繼續(xù)被后面的整數(shù)除;反之就是素數(shù)。按照這種方法求解的程序是: for(i=2;i<=n-1;i++) if(n%i==0)break; 這樣For循環(huán)要執(zhí)行n-2次,經(jīng)過分析我們發(fā)現(xiàn)并不需要使用這么多次判斷。只要條件滿足n能被2~之中任何