前言:我們精心挑選了數(shù)篇優(yōu)質(zhì)程序設(shè)計教學(xué)論文文章,供您閱讀參考。期待這些文章能為您帶來啟發(fā),助您在寫作的道路上更上一層樓。
1.1理論教學(xué)
對于大多數(shù)課程而言,從宏觀上將課程知識點及其關(guān)聯(lián)講授給學(xué)生非常必要,這便于學(xué)生更加系統(tǒng)深刻地理解所學(xué)內(nèi)容。作為教材講解C語言程序設(shè)計的知識點結(jié)構(gòu)。知識點之間的關(guān)聯(lián)可以層層細化,教師首先從宏觀上給學(xué)生介紹C語言程序的整體組成結(jié)構(gòu)。教師對涉及的知識點進行歸類,共包含預(yù)處理命令、數(shù)據(jù)類型、運算符、語句和函數(shù)等5部分,從宏觀上梳理C語言與程序設(shè)計課程的知識點是非常必要和重要的,這樣可以避免學(xué)生“只見樹木,不見森林”,最后只學(xué)到一堆零散的知識點,只有從宏觀上把握各個知識點在知識體系中的位置和作用,才能學(xué)得深、記得牢。對于程序語言課程,如果僅僅介紹語法的運用,學(xué)生往往對知識點理解不深刻。我們在教學(xué)實踐中的體會是:在講解C語言語法的基礎(chǔ)上,適當(dāng)?shù)仄饰鼍幊陶Z言在計算機中的運行機制,會讓學(xué)生的理解更加透徹。因此,我們的課堂教學(xué)方法分為如下兩部分。
1)課件講解。課件講解包括兩部分,即知識點要點總結(jié)和知識點運行機制剖析。知識點要點總結(jié)就是告訴學(xué)生該知識點如何使用;而知識點運行機制剖析則告訴學(xué)生該程序在計算機內(nèi)存中的執(zhí)行過程。由于絕大部分高校在開設(shè)C語言程序設(shè)計之前都會開設(shè)計算機文化基礎(chǔ)等課程,因此學(xué)生有足夠的計算機基礎(chǔ)知識來理解C語言程序的運行機制。
2)實例演示。作為一門編程語言,C語言需要在實踐中理解和掌握,因此,課堂教學(xué)中,在具體的編程環(huán)境(如VC++6.0)下演示十分必要。通過在具體的軟件環(huán)境下編程,告訴學(xué)生應(yīng)該做什么和不應(yīng)該做什么,并總結(jié)該知識點的注意事項。相比傳統(tǒng)的脫離編程環(huán)境,只在PPT或黑板上進行板書的教學(xué)模式,該方法的教學(xué)效果要好得多。在課堂教學(xué)中,具體的教學(xué)步驟如下:①使用PPT或者板書列出該知識點的注意要點;②在編程環(huán)境(如VC++6.0)下演示該知識點的用法,給出正確的和錯誤的使用方法,并進行對比;③通過幻燈片動畫或Flas等形式演示程序在計算機內(nèi)存中的執(zhí)行過程,讓學(xué)生更加深刻地理解程序的運行機制。
3)教學(xué)難點與重點——“復(fù)合知識點”。從C語言的教學(xué)內(nèi)容來講,數(shù)組、函數(shù)和指針是教學(xué)的重點章節(jié),這些章節(jié)之間相互關(guān)聯(lián)的部分又是重點中的難點,如數(shù)組和函數(shù)結(jié)合,數(shù)組名做函數(shù)參數(shù),數(shù)組和指針結(jié)合,指向數(shù)組的指針變量,函數(shù)和指針結(jié)合,指向函數(shù)的指針變量等。在教學(xué)過程中要反復(fù)強調(diào)各個知識點的注意事項,如果基本知識點能夠理解透徹,上述難點內(nèi)容也就迎刃而解了。
1.2上機實踐教學(xué)
在實踐教學(xué)中,教師可以通過實際教學(xué)案例循序漸進地強化學(xué)生對C語言知識點的理解。上機實踐的教學(xué)內(nèi)容通常分為兩部分:基本知識點練習(xí)和綜合訓(xùn)練。首先通過基本知識點的練習(xí),讓學(xué)生掌握該知識點的使用,即鞏固課堂所學(xué)內(nèi)容;然后通過一個綜合性的大作業(yè),訓(xùn)練學(xué)生綜合應(yīng)用C語言知識點的能力,例如,通過編寫“學(xué)生課程成績統(tǒng)計系統(tǒng)”考查學(xué)生對數(shù)組、結(jié)構(gòu)體、指針、函數(shù)、文件等知識的綜合掌握情況。對于初學(xué)編程語言的學(xué)生,往往沒有養(yǎng)成良好的編程習(xí)慣,出錯的可能性較大,而出錯之后進行調(diào)試又將耗費較長的時間,這勢必對學(xué)生的學(xué)習(xí)熱情產(chǎn)生負面影響。因此,一開始就給學(xué)生制定科學(xué)的編程步驟和規(guī)范,使學(xué)生養(yǎng)成良好的編程習(xí)慣,將大大減少程序出錯的可能。下面是按照上述五步編寫的一個完整的C語言程序,用來比較兩個整數(shù)的大小。按照上述五步進行編程,經(jīng)過一段時間的訓(xùn)練之后,學(xué)生出現(xiàn)語法錯誤的可能性大大降低,此時學(xué)生更多的精力將集中在程序算法的設(shè)計和實現(xiàn)上。
1.3考試形式
對于C語言程序設(shè)計的考核方式,我們采用知識點考核和編程實踐相結(jié)合的方式。知識點考核偏重于C語言基本語法,用于檢驗學(xué)生對知識點的掌握是否全面,此項考核約占總成績的40%;編程實踐考核用于檢驗學(xué)生的實際動手能力,學(xué)生將在規(guī)定的時間內(nèi)根據(jù)題目在機器上編程,此項考核約占總成績的60%。為了實現(xiàn)知識點的考核,我們將考試與計算機二級C語言上機考試緊密結(jié)合,采用題庫平臺進行上機考試,學(xué)生直接在機器上答題并提交,知識點考核多采取客觀題,如填空題、程序修改題以及讀程序題等,編程題在實戰(zhàn)編程中考核。C語言程序設(shè)計課程的重要特點就是實踐性強,學(xué)習(xí)該課程的目的就是為了編寫程序。因此從考試的角度講,進行編程實踐是最合適的方式,通過上機編程來考核學(xué)生的學(xué)習(xí)情況也是最公正和客觀的方式。
2C語言程序設(shè)計教學(xué)實踐結(jié)果分析
中國礦業(yè)大學(xué)(北京)每年都有40多個班級同時開設(shè)C語言程序設(shè)計課程,因此該課程教學(xué)質(zhì)量的高低將直接影響全校理工科學(xué)生對C語言的理解和掌握。中國礦業(yè)大學(xué)(北京)C語言程序設(shè)計教學(xué)團隊經(jīng)過長期的探索總結(jié)出一套行之有效的C語言教學(xué)方法,我們將上述方法在學(xué)校越崎實驗班中進行了試點。如圖2所示,采用上述教學(xué)法的越崎實驗班的C語言程序設(shè)計課程考試成績要明顯好于其他班級,其中90分以上的學(xué)生占10.7%,80分以上的學(xué)生占總?cè)藬?shù)的53.6%。另外,學(xué)生的學(xué)習(xí)積極性比采用上述方法前得到明顯提高,很多學(xué)生都對計算機編程產(chǎn)生了濃厚興趣,實踐證明我們提出的上述方法是行之有效的。
3結(jié)語
關(guān)鍵詞:VB實例教學(xué)激發(fā)性主動性
作為語言程序設(shè)計領(lǐng)域的前沿軟件,VB的發(fā)展歷史已經(jīng)很久,相關(guān)的技術(shù)也比較成熟,由于其簡單易學(xué)、功能強大、應(yīng)用廣泛,因此在很多職業(yè)院校都開設(shè)了這門課程,我校也在計算機信息與管理、計算機網(wǎng)絡(luò)技術(shù)以及電子商務(wù)等相關(guān)專業(yè)開設(shè)了這門課程。正是由于社會辦學(xué)力量的推動和“程序設(shè)計”職業(yè)的熱衷,現(xiàn)在會VB的人越來越多了,但是我們也應(yīng)該看到,很多人都局限在“會VB”,而不能靈活的運用,不能用VB完成相應(yīng)的程序設(shè)計,更談不上從事專業(yè)編程工作了。在這樣的情況下,作為高職教師的我們,在教學(xué)中怎樣才能夠吸引同學(xué)們努力主動的學(xué)習(xí)好VB,這是我們值得探討的問題。雖然我們學(xué)生的起點相對來說較低,但以后所從事的工作大多數(shù)也是以程序設(shè)計操作員為主的,因此筆者認為我們的主要教學(xué)目標,不僅是使學(xué)生熟悉VB的基本概念,而且還要能夠熟練的掌握一些程序設(shè)計的相關(guān)技巧和方法,有一定的程序編寫思維能力,并且在今后的教學(xué)中同學(xué)們能夠積極主動的探索和學(xué)習(xí)。為了達到這個目的,筆者認為以下幾個方面是我們在教學(xué)中值得開展的:
一、注重實例教學(xué)
對于一項操作性很強的工作,我們是不可以只講理論的,正如當(dāng)我們學(xué)習(xí)游泳的時候,如果教練只是告訴我們每個動作的名稱但不告訴我們這些動作怎么完成,我們是不可能學(xué)會游泳的。那么我們在學(xué)習(xí)VB的過程中也必須結(jié)合大量的實例演示,讓同學(xué)們真正體會到VB的可視化設(shè)計和它的實用性。
在最初接觸這門課程的時候,我們必須先要詳細的介紹各個控件,只有知道每個控件各自的作用以及使用方法以后我們才可以在VB中創(chuàng)造我們自己的程序。在控件介紹和程序設(shè)計中我們必須通過實例的演示來讓學(xué)生在模仿中學(xué)會各個控件的使用和程序的編寫。特別是在程序的編寫方面,我們一定要有相關(guān)的實例來讓學(xué)生在感性上得到認識。比如在介紹IF……ELSE選擇控制語句的時候,如果我們只是講解單純的語句,學(xué)生聽起來覺得比較枯燥,但筆者首先給同學(xué)們演示一個通過用戶名和密碼的登錄界面,通過選擇控制語句來確定我們在文本框中輸入的條件是否為真做出判斷,如果為真就登錄到我們所需要的另一個界面,否則彈出一個提示信息框。在演示的過程中,同學(xué)們都表現(xiàn)出強烈的好奇心和學(xué)習(xí)的欲望,思維表現(xiàn)得非常活躍,因為他們覺得這些知識非常有用。在這個時候我們抓住這一特點,首先,講解實現(xiàn)這一程序的基本思路,提出實現(xiàn)思路所需要解決的問題。其次,在程序中講解新語句的使用方法,總結(jié)新語句的使用方法和注意事項。這樣的教學(xué)使學(xué)生很快了解了程序設(shè)計的整個過程,并有豁然開朗的感覺,從而產(chǎn)生濃厚的學(xué)習(xí)興趣。雖然這是一個簡單的編程應(yīng)用,整個創(chuàng)作過程只用到了簡單的選擇控制語句,但通過此例的學(xué)習(xí)學(xué)生學(xué)會了選擇控制語句的使用以及如何設(shè)置選擇控制語句,同時也激發(fā)了同學(xué)們學(xué)習(xí)程序設(shè)計的興趣,從而創(chuàng)作出自己的程序。
目前市面上有很多關(guān)于VB的實例教材及各種參考書,但是都比較散而且內(nèi)容也不是很詳細,所以在講解的時候筆者認為必須對實例進行慎重的選取和必要的修改,力求做到以下幾點:
1、程序結(jié)構(gòu)嚴謹化
筆者所收集的程序除了強調(diào)程序的可靠性以外,還要特別強調(diào)程序的結(jié)構(gòu)性,即使是一個簡單的實例,也需要做到程序結(jié)構(gòu)的嚴謹化,使之符合大眾的思維,但也要突出自己的特點。比如在講FOR……NEXT等循環(huán)語句的時候,一般的都是利用從1累加到另一個固定的數(shù)值,來完成我們的循環(huán)講解,這樣的語句由于方法是完全一樣的,所以最后的效果也沒有什么吸引力可說。因此,筆者采用了另外一種方式,結(jié)合利用文本框輸入的方式,即在兩個文本框中可以輸入任何兩個數(shù),使之從小的數(shù)值累加到另一個較大的數(shù)值,這樣程序的效果也就更具結(jié)構(gòu)嚴謹?shù)镊攘Γ瑢W(xué)們的感受也就會完全不同。
2、步驟詳細化
因為同學(xué)們對新知識的接受,特別象程序設(shè)計這樣的知識結(jié)構(gòu),還是需要一定的過程,因此為了讓學(xué)生能夠順利的完成實例,從而在實踐中提高自己的能力,筆者認為對每一個實例的操作步驟都要詳細的板書出來,上機課或是在課余時間學(xué)生只要按照程序的操作步驟去做,就可以得到最終的效果,只有這樣同學(xué)們才能掌握程序設(shè)計的基本思想和相關(guān)步驟。
3、方法常規(guī)化
在講解的過程中,力求采用最簡單、最容易的方法完成每一個實例,盡量采用常規(guī)化的語句,避開一些不容易理解的概念、方法。比如,在利用文件操作對數(shù)據(jù)錄入以及把錄入的所有數(shù)據(jù)輸出時,我們可以避開利用Type語句定義自己的數(shù)據(jù)類型的使用,因為采用Type語句定義,有多少個字段,就會產(chǎn)生多少個相關(guān)的成員,在這種情況下同學(xué)們就很難想得到這個成員代表的是什么,它的作用是什么,這樣就把程序復(fù)雜化了,其實我們完全可以采用簡單的文本框來進行輸入,然后用Input函數(shù)輸出就輕松完成了。
二、注重培養(yǎng)學(xué)生的實際操作能力
還是以游泳為例,不管我們怎么看別人游泳,但自己卻不下水實踐,我們是永遠都學(xué)不會游泳的,那么我們在學(xué)習(xí)VB語言程序設(shè)計的過程中也必須不斷的練習(xí)、實踐。
筆者曾擔(dān)任了計算機網(wǎng)絡(luò)技術(shù)兩個班的該門課程的教學(xué),為每周四學(xué)時,其中兩學(xué)時是筆者的理論講解課,兩學(xué)時是上機實踐操作課。由于學(xué)生的思想還不夠成熟,自我控制能力相對來說還是比較差,因此自覺性還不夠好,為了監(jiān)督他們很好的學(xué)習(xí)、認真的實踐,筆者每次課都留一次作業(yè),第一次就是完全按照筆者的課堂實例上機操作,以加強對本節(jié)課課程內(nèi)容的理解并熟練這些操作技巧,這項作業(yè)是必須要上交的,并作為平時成績登記。因為這是這門課程中最基本的知識要點和教學(xué)要求,雖然學(xué)生不可能每個人都對這門課程有濃厚的興趣,不可能以后都有可能去從事專業(yè)的程序設(shè)計工作,但是作為計算機專業(yè)畢業(yè)的學(xué)生,筆者希望他們不管以后從事什么樣的職業(yè),對于一些基本的程序設(shè)計思想以及常用的計算機軟件操作,至少都能夠體現(xiàn)出來。
在最后的綜合實訓(xùn)、實踐中,筆者結(jié)合同學(xué)們所學(xué)的知識并引進一些課外的知識實例來彌補課本上沒有的相關(guān)內(nèi)容。比如,我們利用VB做前臺界面的設(shè)計,盡量用到所學(xué)過的所有控件進行布局、設(shè)置,把它們結(jié)合起來使用,而用小型的Access數(shù)據(jù)庫做后臺數(shù)據(jù)管理來做一個學(xué)生成績管理系統(tǒng),它具備一般的常用功能,即成績的添加、查詢、修改、刪除,用戶的管理等,雖然這個管理系統(tǒng)程序的設(shè)計比較簡單,但通過這樣一個小型的綜合實例,就更加讓同學(xué)們了解了VB語言程序設(shè)計的功能及特點。這是我們VB程序設(shè)計教學(xué)課程中不可缺少的一個重要環(huán)節(jié),只有通過這樣的一個綜合實例,才能把同學(xué)們零散學(xué)到的知識全部的串聯(lián)起來,讓他們感覺到自己所學(xué)的知識終于有了一定的成果,他們自己也會感覺很有成就感,也會產(chǎn)生一種利用計算機解決實際問題的強烈愿望,在今后的學(xué)習(xí)中才能更加有信心和目標。
以上的兩個方面是筆者認為的主要教學(xué)方法。采用實例教學(xué)的一個重要目的實際上就是為了使課堂生動,提高學(xué)生的積極性、主動性。雖
然是實例教學(xué),有很多有趣的程序及相關(guān)的小動畫,但是這樣的有趣如果久了,也并不能完全抓住學(xué)生的心,因為這些過程進行的場所都是在課堂,課堂生活不可避免的具有一定的單調(diào)性,這只是一個方面。另一方面是,筆者要求學(xué)生在完成自由獨立創(chuàng)作這一作業(yè)以后要相互交流經(jīng)驗,這種交流我們一般都是在自己班內(nèi)部進行的,次數(shù)多了大家就會覺得似乎還需要加入一些更新的內(nèi)容,希望與其他班的同學(xué)一起探討學(xué)習(xí)。為了彌補課堂學(xué)習(xí)和班內(nèi)交流的不足,筆者有時間就會將兩個班的學(xué)生聚集在一起,首先每個班選幾個優(yōu)秀的作品演示給大家看,并向大家介紹創(chuàng)作的技巧和存在的問題,然后大家一起討論。最后筆者會結(jié)合最近的學(xué)習(xí)內(nèi)容對設(shè)計進行一個總的評說。通過這些活動既可以提高學(xué)生的學(xué)習(xí)興趣,提高他們的專業(yè)技能。我們在教學(xué)中,實例的運用是提高教學(xué)效果的保障,在教學(xué)中,我們不防在講解本次課的內(nèi)容之前,先演示本次課需要用到的實例,這樣既可以調(diào)動學(xué)生學(xué)習(xí)的積極性和主動性,也激發(fā)了他們的好奇性,這樣也就抓住了同學(xué)們“人在教室,心也在教室”。
總之,教學(xué)有法,教無定法,只要教學(xué)得法。程序設(shè)計教學(xué)的主要目標是為了使同學(xué)們了解編程的基本思想,培養(yǎng)分析問題、解決問題的基本能力。圍繞著這個目標,在保證同學(xué)們學(xué)習(xí)積極性的前提下,按照他們的認知規(guī)律組織教學(xué),一切有效的教學(xué)方法都可以在我們的教學(xué)過程中加以運用,進而使綜合素質(zhì)得到整體提高,這是VB程序設(shè)計課程教學(xué)的最終目標。
參考文獻
[1]劉炳文、楊明福、陳定中.全國計算機二級教程VB語言程序設(shè)計[M]高等教育出版社.20__.4
1.算法思想。數(shù)學(xué)里的算法是極其重要的內(nèi)容,是數(shù)學(xué)的組成部分,同時是計算機理論的核心,也是技術(shù)的核心。在社會發(fā)展過程中,人們的日常生活已經(jīng)離不開計算機,它成為生活中的重要工具,如看電影、繪畫、處理數(shù)據(jù)等,它所涉及的面非常廣,和生活息息相關(guān)。計算機雖是生活過程中必不可少的工具,但它的工作情況是什么樣呢?想要了解這個問題,就要先從算法來開始學(xué)習(xí)。算法能使邏輯思維能力提高,對有條理思考和表達的發(fā)展非常有利。在過去時間里,算法這個名詞雖然沒有出現(xiàn),但這種算法思維已經(jīng)滲透到數(shù)學(xué)教學(xué)過程中,例如,運算過程中的四則運算、求解方程等,這些步驟的完成都需要程序化的表達,這個過程也是算法思想的形成。
2.算法的構(gòu)建。在處理一些問題時,一系列可操作的步驟需要設(shè)計,或者設(shè)計它的可算操作,來通過這些步驟進行解決問題,這種解決問題的方法就是通常指的算法。廣義的算法:就是一種工作的方法和步驟,例如,歌曲的歌譜、洗衣機說明書等都是它們使用的算法。數(shù)學(xué)教學(xué)中的算法:數(shù)學(xué)中,把計算機解決問題過程中的程序認為是現(xiàn)代意義的“算法”。這種算法可以用計算機實現(xiàn),對求解的方法也是統(tǒng)一、機械的,例如:解方程、作圖問題、函數(shù)求值等的算法。
二、ARCS動機設(shè)計模式在高中數(shù)學(xué)程序設(shè)計教學(xué)中的應(yīng)用
1.注意策略。在學(xué)生考慮到需要輸入輸出時,實際上他們就已經(jīng)開始有了算法思維,只是很多學(xué)生在開始時不確定如何準確劃分步驟。通過上述例證使學(xué)生了解算法解決問題的思路和步驟。
2.相關(guān)性策略。《孫子算經(jīng)》中原文是:“今有物,不知其數(shù),三三數(shù)之,剩二,五五數(shù)之,剩三,七七數(shù)之,剩二,問物幾何?答曰:二十三。”對高中生來說,在問題提出后,即使有些同學(xué)的思路一開始出現(xiàn)了偏差,但是和實際情況對比之后基本都能猜出正確答案。因此,對自己判斷與實際情況不一致的同學(xué)來說,他們就會更深一步地問自己:為什么不一樣?哪里出現(xiàn)了問題?這有助于學(xué)生獨立思考能力的培養(yǎng)。只有讓學(xué)生自己發(fā)現(xiàn)錯誤、判斷錯誤、解決錯誤,才能讓學(xué)生真正地掌握相關(guān)知識,這也有助于提高學(xué)生的高階思維能力。
3.信心策略。算法實例基本是必考題,每次的考試中都有或多或少地涉及一些。算法題出題方式靈活,可考查內(nèi)容較多,是一個全面評估學(xué)生知識掌握程度的考題。教師在對學(xué)生進行考核時,要考慮到學(xué)生自身知識的掌握水平,從學(xué)生角度出發(fā),循序漸進地增加難度,切忌一次考核過難,打擊學(xué)生的自信心,降低學(xué)生的學(xué)習(xí)興趣。案例:例1.通過求1+2+3+4+5中的一個算法。解:算法1用逐一相加的方法來進行。第一步:計算1+2,得數(shù)3;第二步:把第一步中所得結(jié)果3與3相加,計算得到6;第三步:將第二步中所得的運算結(jié)果6與4相加,計算得到10;第四步:將第三步中所得的結(jié)果10與5相加,計算得得到15.說明:①一個問題的算法肯定不是唯一。②若將本例題改為“求1+2+3+…+100的結(jié)果,給一個算法”,則以上第二算法和第三算法表達較為方便。對剛開始接觸程序設(shè)計的學(xué)生來說,這類題型可以提高學(xué)生的自信心,使學(xué)生產(chǎn)生強烈的榮譽感。題目的難度是明確的,但實際解題思路并不復(fù)雜,卻有多種解題方法,對解題思路明確后,其流程圖繪制也就輕而易舉了。給學(xué)生自信心,讓學(xué)生感受自身的能力有助于提升學(xué)生的學(xué)習(xí)動力。
4.滿意策略。以滿意度策略為基礎(chǔ)的數(shù)學(xué)課堂教學(xué)方式有很多,如多媒體教學(xué)、學(xué)生學(xué)習(xí)目標設(shè)定、多元化教學(xué)方式等。在教學(xué)中,本人根據(jù)學(xué)生各自情況,與學(xué)生進行溝通后為每人設(shè)定了相應(yīng)的學(xué)習(xí)目標。每次測評之后并不以全班同學(xué)的成績來評論學(xué)生的好壞,而是通過橫向與縱向兩方面相比,讓學(xué)生全面了解自身當(dāng)前學(xué)習(xí)狀況。另外,數(shù)學(xué)課堂教學(xué)中,要重視學(xué)生的能動性,通過參與問題、解決問題的方式讓學(xué)生充分表現(xiàn)自己。通過滿意策略提高學(xué)生的學(xué)習(xí)動機。
三、總結(jié)