国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

提高C語言編程能力的幾點(diǎn)策略

2016-06-14 19:48:12鄧廣彪覃賢立
電腦知識(shí)與技術(shù) 2016年12期
關(guān)鍵詞:策略

鄧廣彪+覃賢立

摘要:C語言是計(jì)算機(jī)專業(yè)的一門專業(yè)必修課程,是其他編程類課程的基礎(chǔ),在教學(xué)過程中起著重要的引導(dǎo)作用。但在教學(xué)過程中存在學(xué)生學(xué)習(xí)興趣不高、應(yīng)用能力不強(qiáng)、編程能力差等問題,針對(duì)這些問題,從上好第一次課、強(qiáng)化實(shí)踐、重視上機(jī)、進(jìn)行綜合實(shí)踐等方面提出相關(guān)策略。經(jīng)過實(shí)踐,證明這些策略是可行的。

關(guān)鍵詞:C語言;編程能力;策略

中圖分類號(hào):G424 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)12-0060-02

1 概述

C語言具有執(zhí)行效率高、語法規(guī)則簡(jiǎn)單、移植性強(qiáng)等特點(diǎn),同時(shí)具有其他高級(jí)語言不能實(shí)現(xiàn)的對(duì)硬件進(jìn)行操作的特點(diǎn),因此成為計(jì)算機(jī)類專業(yè)入門必修的計(jì)算機(jī)語言[1]。該課程一般是在大一第一學(xué)期開始,對(duì)于剛?cè)氪髮W(xué)校門的新生來說既感到新奇又迷惑,新奇是發(fā)現(xiàn)C語言能解決很多在高中沒能快速解決的問題,迷惑的是如何才能學(xué)好它用好它。C語言還是《數(shù)據(jù)結(jié)構(gòu)》、《操作系統(tǒng)》以及其他程序設(shè)計(jì)語言等計(jì)算機(jī)類專業(yè)核心課程的基礎(chǔ),如果C語言學(xué)不好,必然對(duì)整個(gè)大學(xué)期間其他課程學(xué)習(xí)受到影響。一般新生入學(xué)比高年級(jí)學(xué)生入學(xué)晚,又有軍訓(xùn),導(dǎo)致在大一第一學(xué)期學(xué)習(xí)該課程時(shí)存在時(shí)間緊、任務(wù)重、難度大等特點(diǎn),從而導(dǎo)致教學(xué)過程中存在學(xué)生學(xué)習(xí)積極性不高,對(duì)課程不感興趣,語法規(guī)則難以記住,分析和解決實(shí)際問題難,動(dòng)手能力差等特點(diǎn)。根據(jù)存在的問題,總結(jié)多年教學(xué)經(jīng)驗(yàn),從上好第一次課、弱化細(xì)節(jié)、重視上機(jī)、布置綜合練習(xí)等方面提出教學(xué)建議,通過實(shí)踐,證明這些建議是可行的、有效的。

2 上好第一次課,確定學(xué)習(xí)目標(biāo)

對(duì)于大學(xué)中的任何一門課程,都要讓學(xué)生掌握本課程的學(xué)習(xí)目標(biāo),如果學(xué)習(xí)目標(biāo)不明確,學(xué)習(xí)興趣則將不高[2]。C語言課程教學(xué)一般在第1周學(xué)生學(xué)習(xí)的積極性都很高,對(duì)課程也很感興趣,因?yàn)閯偨佑|C語言,發(fā)現(xiàn)能控制電腦做自己想要的簡(jiǎn)單事情,如輸出自己想要的一些內(nèi)容或圖形。但在后續(xù)的過程中興趣慢慢地減少,覺得學(xué)習(xí)C語言枯燥無味,不感興趣,難以堅(jiān)持等。若從開始授課時(shí)不進(jìn)行調(diào)整,不采取相關(guān)對(duì)策,勢(shì)必影響后續(xù)的學(xué)習(xí)。

好的開始是成功的一半,在第一節(jié)課授課時(shí),要以生動(dòng)有趣的形式告訴學(xué)生本課程的功能、主要學(xué)習(xí)的內(nèi)容及重要性,讓學(xué)生有目的地去學(xué)習(xí)本課程。很多教師在第一次上課時(shí)都會(huì)告訴學(xué)生學(xué)習(xí)完本課程后要考全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)中的《C語言程序設(shè)計(jì)》科目,其實(shí)這是一種錯(cuò)誤的引導(dǎo),這種做法讓學(xué)生誤認(rèn)為本課程的學(xué)習(xí)就是為了考過二級(jí),導(dǎo)致學(xué)生在學(xué)習(xí)過程中以二級(jí)考核的內(nèi)容和知識(shí)點(diǎn)來引導(dǎo)自己學(xué)習(xí),這必然導(dǎo)致學(xué)生只注重細(xì)節(jié),不注重編程思想的形成。

以計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)為例,在第一次上課時(shí)給學(xué)生提出本課程的學(xué)習(xí)目標(biāo):1)本課程主要學(xué)習(xí)順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)這三種結(jié)構(gòu)程序設(shè)計(jì)的基本思想和語法結(jié)構(gòu),數(shù)量掌握數(shù)組、函數(shù)、結(jié)構(gòu)體、指針以及文件的使用,掌握這些知識(shí)后為后續(xù)課程《數(shù)據(jù)結(jié)構(gòu)》、《Java語言程序設(shè)計(jì)》、《C#程序設(shè)計(jì)》等與編程相關(guān)課程打下基礎(chǔ)。計(jì)算機(jī)編程語言的語法和思想基本相通[3],C語言不掌握,以后其他課程的學(xué)習(xí)就很困難,更談不上軟件開發(fā)。2)掌握使用編程知識(shí)解決實(shí)際問題的方法,如求素?cái)?shù)、數(shù)列之和、球類循環(huán)賽編排等,同時(shí)演示1-100之間人與計(jì)算機(jī)猜數(shù)字的游戲,讓學(xué)生對(duì)簡(jiǎn)單的實(shí)際問題有一個(gè)基本了解;3)基本掌握小型軟件開發(fā)及合作開發(fā)的基本方法,同時(shí)演示學(xué)生成績(jī)管理系統(tǒng),該系統(tǒng)基于VC++6.0使用C語言開發(fā),經(jīng)過這樣的演示,學(xué)生基本了解軟件開發(fā)的結(jié)果是什么樣子,激發(fā)了學(xué)生開發(fā)軟件的興趣。對(duì)于上述三個(gè)學(xué)習(xí)目標(biāo)的解釋及演示,學(xué)生既了解到本課程所需要學(xué)習(xí)的知識(shí),又能了解到學(xué)完本課程后能做什么事情。

在第一次授課時(shí),除開給學(xué)生講解學(xué)習(xí)目標(biāo)外,還需要告訴學(xué)生本課程的學(xué)習(xí)方法:上課認(rèn)真聽知識(shí)點(diǎn)的講解,為做實(shí)例奠定基礎(chǔ);認(rèn)真完成上課時(shí)講解的實(shí)例,總結(jié)實(shí)例的解決方法,為解決其他問題提供解題思路;重視上機(jī),通過上機(jī)查找程序編寫的問題,提高編程能力;課后多討論所布置或發(fā)現(xiàn)實(shí)際問題的解決方法,養(yǎng)成自學(xué)及協(xié)同工作的習(xí)慣。

3 弱化學(xué)習(xí)細(xì)節(jié),強(qiáng)化趣味實(shí)踐

任何一門課程所要學(xué)習(xí)和掌握的內(nèi)容是非常多的,根據(jù)課程的作用,對(duì)學(xué)習(xí)的內(nèi)容必須要有所取舍,如果上課時(shí)面面俱到,最終將導(dǎo)致學(xué)到最后一無所獲,特別是對(duì)于C語言這種細(xì)節(jié)能進(jìn)行很深入展開的課程[4]。但是很多C語言的教師在授課時(shí)總是不知不覺的強(qiáng)調(diào)注意細(xì)節(jié),總怕學(xué)生如果這點(diǎn)不掌握就在考全國(guó)計(jì)算機(jī)二級(jí)時(shí)相關(guān)知識(shí)點(diǎn)的題目不會(huì)做,如強(qiáng)調(diào)自增自減運(yùn)算符的使用、對(duì)每個(gè)轉(zhuǎn)義字符進(jìn)行講解、解釋for語句中三個(gè)表達(dá)式可以省略等,對(duì)這些細(xì)節(jié)的強(qiáng)調(diào)不僅不利于學(xué)生學(xué)習(xí),反而讓學(xué)生去糾結(jié)到底用i++好還是++i才好,去背每個(gè)轉(zhuǎn)義字符的作用,這樣導(dǎo)致學(xué)生總是去考慮細(xì)節(jié)如何記憶,而沒花心思去想某個(gè)問題的解決思路,從而不利于培養(yǎng)學(xué)生解決實(shí)際問題的能力。

其實(shí)在授課時(shí),對(duì)知識(shí)點(diǎn)的講解以基本夠用就行,重點(diǎn)在培養(yǎng)學(xué)生解決實(shí)際問題的能力,通過具體的編程學(xué)習(xí)相關(guān)的知識(shí)點(diǎn)。如在學(xué)習(xí)順序結(jié)構(gòu)時(shí),只講整型、字符型、浮點(diǎn)型變量的定義以及printf、scanf函數(shù)的基本格式,然后就講解“輸入兩個(gè)整數(shù),求這兩個(gè)整數(shù)的和、差、積、商,并且要求輸出商有2位小數(shù)”這個(gè)例子,在這個(gè)實(shí)例中引出強(qiáng)制類型轉(zhuǎn)換的知識(shí),讓學(xué)生實(shí)現(xiàn)本實(shí)例后,再講解如何通過scanf和printf設(shè)置符合實(shí)際需求的輸入輸出格式。這樣通過實(shí)例來學(xué)習(xí)知識(shí)點(diǎn),既能避免學(xué)習(xí)知識(shí)點(diǎn)的枯燥無味,又能讓學(xué)生記住相關(guān)知識(shí)點(diǎn)及掌握實(shí)際問題的解決方法。

在實(shí)踐教學(xué)過程中,尋找有趣、容易理解且能引出相關(guān)知識(shí)點(diǎn)的趣味實(shí)例是教學(xué)過程中較難的地方,也是教師在備課過程中重點(diǎn)要考慮的教學(xué)設(shè)計(jì)。如在學(xué)習(xí)循環(huán)語句的使用時(shí),講解while語句的基本格式后,就要求學(xué)生考慮猜數(shù)字實(shí)例:使用rand函數(shù)隨機(jī)生成一個(gè)1至100之間的整數(shù),然后最多給10次機(jī)會(huì)輸入整數(shù),判斷所輸入的整數(shù)是否等于隨機(jī)生成的整數(shù),如果猜對(duì)了就提示“正確”,否則提示“大了”或者“小了”,接著繼續(xù)猜。這樣的實(shí)例既有趣,又能把循環(huán)中涉及的循環(huán)初值、循環(huán)條件、重復(fù)事件與循環(huán)增值內(nèi)容理清,還能復(fù)習(xí)if語句嵌套的使用,更能夠引出新知識(shí):當(dāng)猜對(duì)時(shí)需要使用break提前結(jié)束循環(huán)。因此通過實(shí)踐鞏固所學(xué)知識(shí)時(shí),趣味實(shí)例是一種很好的運(yùn)用,更能促使教師在上課前需認(rèn)真?zhèn)湔n。

4 重視上機(jī)實(shí)踐,提高編程能力

C語言教學(xué)過程中經(jīng)常碰到的問題就是學(xué)生編程能力差,遇到問題不懂如何解決,害怕教師布置作業(yè),害怕編程,編程過程中遇到錯(cuò)誤不懂解決等[5]。這些問題如果不能得到較好的解決,將影響學(xué)生學(xué)習(xí)C語言的興趣,進(jìn)而影響后續(xù)課程的學(xué)習(xí)。

C語言是一門實(shí)踐性很強(qiáng)的課程,只掌握理論知識(shí)就好比紙上談兵,必須要通過上機(jī)實(shí)踐來理解并鞏固課堂所學(xué)知識(shí),因此上機(jī)實(shí)踐是C語言教學(xué)的一個(gè)重要環(huán)節(jié),只有強(qiáng)化、重視上機(jī),才能切實(shí)提高學(xué)生的編程能力。

錯(cuò)誤容易吸引學(xué)生的注意力,在上機(jī)實(shí)踐前,進(jìn)行與知識(shí)點(diǎn)相關(guān)實(shí)例講解的過程中經(jīng)常故意設(shè)置一些錯(cuò)誤地方。這種故意錯(cuò)誤分為兩種,一種是語法錯(cuò)誤,程序編譯通不過,跟學(xué)生一起解讀錯(cuò)誤提示來解決語法錯(cuò)誤,以提高學(xué)生語法錯(cuò)誤的修改能力;另一種錯(cuò)誤是邏輯錯(cuò)誤,程序能正常執(zhí)行,但得不到正確結(jié)果,如講解1+[]+……+[110]的累加實(shí)例中,以a表示分子,b表示分母,在求和時(shí)故意寫成sum=sum+b/a,這樣的錯(cuò)誤讓學(xué)生對(duì)變量的起名要引起注意,要能夠見名知意,否則在編程過程中容易誤用變量。

在上機(jī)過程中,有目的的引導(dǎo)學(xué)生,既能夠鍛煉學(xué)生糾錯(cuò)編程問題的能力,還能夠鍛煉學(xué)生分析問題的能力。在上機(jī)過程中,先讓學(xué)生完成課堂上講解的實(shí)例,在完成課堂實(shí)例程序編寫的過程中,如果遇到語法錯(cuò)誤學(xué)生提問時(shí)暫不予以解決,先讓學(xué)生之間商量解決,實(shí)在無法解決的再提示學(xué)生如何解決。在完成課堂實(shí)例后,布置新的且未講解過的實(shí)例,讓學(xué)生自己尋找解決問題的方法,自己測(cè)試結(jié)果是否正確。如學(xué)生完成在1+[]+……+[110]的累加實(shí)例后,布置學(xué)生求[1-23+55-107+179+……]數(shù)列前20項(xiàng)之和,讓學(xué)生自己尋找分子分母的規(guī)律。由于沒有提醒學(xué)生,學(xué)生找到各種各樣的規(guī)律,讓學(xué)生自行發(fā)現(xiàn)規(guī)律能充分鍛煉學(xué)生的編程能力和思維能力,如第一種規(guī)律:下一項(xiàng)的分母是上一項(xiàng)的分母加2,下一項(xiàng)的分子是上一項(xiàng)分子與分母之和;第二種規(guī)律:i從1開始,分母是2*i-1,分子是(i-1)2+1等等。在讓學(xué)生做上述練習(xí)時(shí),也不告訴學(xué)生最終結(jié)果,讓學(xué)生2項(xiàng)、3項(xiàng)、4項(xiàng)、……的測(cè)試,這樣能鍛煉學(xué)生測(cè)試程序的習(xí)慣,依賴教師則會(huì)越來越少。在完成課堂實(shí)例及新實(shí)例后,讓學(xué)生在課后自行考慮自己需要解決的問題,將問題及程序在課后發(fā)給教師,教師根據(jù)這些問題及程序,結(jié)合上課及上機(jī)情況,綜合確定學(xué)生的平時(shí)分。

5 布置綜合作業(yè),鍛煉解決實(shí)際問題的能力

學(xué)生學(xué)習(xí)完每章內(nèi)容之后,通過相關(guān)的作業(yè)能鞏固本章所學(xué)知識(shí),學(xué)生也能感覺到相關(guān)知識(shí)已經(jīng)掌握。但當(dāng)本課程的所有內(nèi)容講解完之后,學(xué)生就會(huì)放松了,認(rèn)為所有知識(shí)都已經(jīng)學(xué)習(xí)并掌握了。其實(shí)不然,學(xué)生經(jīng)過每章學(xué)習(xí)掌握的是零散的知識(shí),如何將這些知識(shí)綜合起來使用,則是檢驗(yàn)所學(xué)知識(shí)能否靈活運(yùn)用所學(xué)知識(shí),這時(shí)就需要綜合作業(yè)來進(jìn)行檢驗(yàn),通過這樣的檢驗(yàn)?zāi)芎芎玫劐憻拰W(xué)生實(shí)際問題解決的能力及協(xié)作能力。

在根據(jù)教學(xué)大綱要求講解完所有章節(jié)內(nèi)容之后,分2至3人一組,布置一些綜合練習(xí)題,學(xué)生完成這些練習(xí)之后,既復(fù)習(xí)了舊知識(shí),又鞏固了本章的重點(diǎn)內(nèi)容,還鍛煉了學(xué)生解決實(shí)際的問題能力及小組協(xié)作能力。如布置學(xué)生完成并實(shí)現(xiàn)學(xué)生成績(jī)管理系統(tǒng),該系統(tǒng)要求能夠?qū)W(xué)生的成績(jī)信息錄入后保存在文件中,并能夠?qū)Τ煽?jī)實(shí)現(xiàn)增加、刪除、修改、按學(xué)號(hào)查詢以及按總分排序等功能。這樣一個(gè)簡(jiǎn)單功能的小項(xiàng)目,就能綜合檢驗(yàn)學(xué)生一學(xué)期所學(xué)的知識(shí),如在保存數(shù)據(jù)時(shí)能檢驗(yàn)結(jié)構(gòu)體和文件的使用,實(shí)現(xiàn)增加、刪除、修改等獨(dú)立功能時(shí)能檢驗(yàn)循環(huán)、分支以及函數(shù)的使用,在排序時(shí)能檢驗(yàn)排序算法的掌握能力,在錄入數(shù)據(jù)時(shí)能讓檢驗(yàn)格式化輸入輸出的使用等。

6 總結(jié)

提高學(xué)生的編程能力和解決實(shí)際問題的能力是每個(gè)C語言授課教師在授課時(shí)需要解決的實(shí)際問題,不同的教師有不同的解決方法。本文從上好第一次課、強(qiáng)化實(shí)踐、重視上機(jī)、布置綜合作業(yè)等方面來實(shí)現(xiàn)來解決上述問題。經(jīng)過實(shí)踐,證明這些方法是可行的,即筆者經(jīng)過認(rèn)真的備課及實(shí)例準(zhǔn)備后,在2014級(jí)、2015級(jí)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)實(shí)施上述教學(xué)方法,在期末考試時(shí),平均分能達(dá)到78分,考試試題中編程題占35分,80%的學(xué)生都能30分及以上,但選擇題考得較細(xì),學(xué)生的得分率不高;而2012、2013級(jí)的學(xué)生考試成績(jī)平均分僅有65分。上述提高學(xué)生編程能力的方法需要授課教師課前認(rèn)真準(zhǔn)備實(shí)例,這將花費(fèi)大量的時(shí)間和精力。在確保學(xué)生的編程能力和解決實(shí)際問題能力不降低的情況下,如何能夠提高教師的備課效率,并能兼顧學(xué)生細(xì)節(jié)方面知識(shí)的學(xué)習(xí),這將是以后教學(xué)改革的研究方向。

參考文獻(xiàn):

[1] 謝競(jìng)博.C 語言程序設(shè)計(jì)教學(xué)中的問題及改革建議[J].重慶郵電大學(xué)學(xué)報(bào):社會(huì)科學(xué)版,2008,20(2):137-140.

[2] 姚利民,段文彧.高校教學(xué)方法改革探討[J].中國(guó)大學(xué)教學(xué),2013(8):60-64.

[3] 高云.計(jì)算機(jī)編程思想的發(fā)展研究[J].軟件導(dǎo)刊,2012,11(11):5-6.

[4] 喬良. C語言教學(xué)中的常見問題和解決方案[J].華北科技學(xué)院學(xué)報(bào),2014,11(3):86-89.

[5] 吳元斌.提高C語言初學(xué)者編程能力的幾點(diǎn)措施[J].現(xiàn)代計(jì)算機(jī),2015(1):13-15.

猜你喜歡
策略
基于“選—練—評(píng)”一體化的二輪復(fù)習(xí)策略
幾何創(chuàng)新題的處理策略
求初相φ的常見策略
例談未知角三角函數(shù)值的求解策略
我說你做講策略
“我說你做”講策略
數(shù)據(jù)分析中的避錯(cuò)策略
高中數(shù)學(xué)復(fù)習(xí)的具體策略
“唱反調(diào)”的策略
幸福(2017年18期)2018-01-03 06:34:53
價(jià)格調(diào)整 講策略求互動(dòng)
抚宁县| 唐河县| 襄汾县| 宁阳县| 临泉县| 清新县| 铁力市| 沁源县| 吉水县| 普定县| 都兰县| 南靖县| 廊坊市| 万安县| 永州市| 大渡口区| 台南市| 五常市| 浙江省| 漯河市| 黄浦区| 左权县| 永嘉县| 乌审旗| 沙田区| 巴中市| 天长市| 靖远县| 临沂市| 林芝县| 开原市| 梓潼县| 图片| 溧阳市| 正宁县| 珲春市| 宜昌市| 保山市| 思南县| 湖北省| 平顶山市|