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

?

基于動態(tài)可視化分析的冒泡排序程序設計的探究式教學方法

2016-05-14 13:32王洋
教育教學論壇 2016年41期
關(guān)鍵詞:C語言程序設計教學方法

王洋

摘要:冒泡排序是高?!禖語言程序設計》教學中的重要難點,而傳統(tǒng)的教學方法并不理想。學生易將課堂PPT演示的內(nèi)容與程序語言代碼割裂開來,無法建立其直接的聯(lián)系。探討使用一種基于調(diào)試工具的方法,觀察程序中變量值動態(tài)變化,從而建立算法自然語言描述與代碼描述的直接聯(lián)系,使學生能夠更好地掌握冒泡排序算法的原理,培養(yǎng)學生的獨立思考能力和發(fā)散思維能力,取得了良好的教學效果。

關(guān)鍵詞:C語言程序設計;冒泡排序;教學方法

中圖分類號:G642.0 ? ? 文獻標志碼:A ? ? 文章編號:1674-9324(2016)41-0257-02

一、引言

在《C語言程序設計》[1,2]教學過程中,常以冒泡排序來講解排序的原理。冒泡排序原理簡單,但過程相對繁瑣。在傳統(tǒng)教學中,通常是教師先把冒泡排序思想講述一遍,然后列出程序,解釋程序執(zhí)行過程,這種方式很難激發(fā)學生的學習興趣。同時,由于學生沒有很好地掌握冒泡排序的原理,自己很難獨立編寫出冒泡排序的程序。因此,合理設計教學過程,讓學生掌握冒泡排序的思想和編程方法,激發(fā)學生對編程課程的興趣是一個關(guān)鍵問題。

在計算機語言程序設計教學中根據(jù)需要正確運用直觀性教學方法,將有助于學生去消化、理解抽象的算法和程序執(zhí)行流程,進一步提高學生的學習興趣和學習積極性。程序設計的直觀性教學可以從基于動態(tài)可視化的方法來實現(xiàn)。

二、基于動態(tài)可視化的教學方法

(一)使用教學課件幫助學生理解程序的執(zhí)行過程

計算機程序的運行是在計算機內(nèi)部進行的,是看不到、摸不著的。各種控制語句的執(zhí)行流程、函數(shù)與子程序的調(diào)用和返回過程及參數(shù)間的傳遞,學生是無法直接感知的。即使實驗課調(diào)試程序的過程中,學生也只能看到中間或最終的結(jié)果,是對程序正確性的驗證,看不到程序的執(zhí)行過程。多媒體教學課件能夠模擬不可能或很難看到的現(xiàn)象,能使抽象的理論形象化。在程序設計教學中借助于課件,可以模擬程序的執(zhí)行過程和各參數(shù)的變化,讓學生理解控制語句的執(zhí)行流程以及函數(shù)、子程序調(diào)用過程中各參數(shù)的變化情況,一些算法的基本原理。因此,在教學中設計必要的課件,課堂教學效果遠遠超過詳細的語言講解。

針對冒泡排序算法的講解,我們在PPT中內(nèi)嵌了動畫,動態(tài)演示對數(shù)字冒泡排序的過程。在這一階段,不涉及程序代碼的編寫和講解,著重講解原理。具體演示內(nèi)容如圖所示:

(二)使用調(diào)試工具幫助學生理解程序的執(zhí)行過程

借助調(diào)試工具,我們可以深入地觀察變量的存儲、程序的流程控制、數(shù)組及函數(shù)的調(diào)用。并且當學生掌握常用的調(diào)試技術(shù)后,學生可以自己獨立解決編程問題,也增強了編寫程序的信心,提高了編寫程序的興趣。并且,老師也不需要在實驗課上疲于奔命地為學生排查錯誤了。因此掌握程序調(diào)試技術(shù)對教學雙方都能起到事半功倍的效果。對于冒泡排序程序段:

總之,直觀性教學方法是激發(fā)學生學習興趣的有效方法,是促進學生思維發(fā)展,幫助學生內(nèi)化知識的重要途徑。在計算機程序教學中正確使用直觀性教學方法,可以進一步提高課堂教學效益,幫助學生掌握難以理解的抽象知識,使抽象的知識形象化。對于冒泡排序程序代碼段如圖2所示:

我們可以使用調(diào)試工具逐行運行。通過觀察Watch中變量i,j,a[i],a[j],a[j+1],t的變化,可以動態(tài)地觀察排序算法的執(zhí)行過程。如圖3所示,對應PPT中的冒泡排序算法的第二遍,42與16交換位置的過程。這樣就可以將PPT中的算法自然語言描述如第二遍與C語言程序代碼中的外層循環(huán)建立起直接的聯(lián)系。教師可以通過PPT與程序代碼的互動,逐步地將冒泡排序算法程序每一步的操作,形象直觀地演示給學生。

三、結(jié)語

本文以冒泡排序設計教學為例,利用PPT與程序調(diào)試技術(shù)為教學手段,引入了一種動態(tài)可視化的教學方法,著重建立了冒泡排序算法自然語言與程序設計語言的聯(lián)系,形象生動地向?qū)W生展示了冒泡排序的基本思想和變換過程。因此,這種合理的教學設計有效地提高了教學效果,對程序設計類課程的教學有一定的借鑒意義。

參考文獻:

[1]張玉春,孫大元.C語言程序設計教程[M].北京:清華大學出版社,2013.

[2]孫大元,張玉春.C語言程序設計實驗指導與習題解析[M].北京:清華大學出版社,2013.

An Inquiry Teaching Method Based on Dynamic Visualization Analysis for Bubble Sorting

WANG Yang

(Jilin University Public Computer Teaching and Research Center,Changchun,Jilin 130012,China)

Abstract:Bubble sorting is important issue of the "C programming language" teaching in universities,but the traditional teaching method is not ideal. Student often separate the connection between PPT demo content and program code,and can not establish their direct contact. This paper explore a debugging based technique,observe dynamic change of the variable values,to establish the direct link between natural language description of the algorithm and code description,to make students better grasp the principle of bubble sort algorithm,develop students' independent thinking ability and divergent thinking ability,and good teaching effect has been obtained.

Key words:C programming language;bubble sorting;teaching method

猜你喜歡
C語言程序設計教學方法
教學方法與知識類型的適宜
基于能力培養(yǎng)的“C語言程序設計”教學改革研究
大專院?!癈語言程序設計”課程建設改革
以“學生為中心”的《C語言程序設計》教學設計探究
淺談《C語言程序設計》課程的教學改革
《C語言程序設計》課程的教學改革與實踐
實用型中醫(yī)人才培養(yǎng)中慕課教學方法的探討
文言文教學方法實踐初探
我的教學方法
襄垣县| 灯塔市| 金沙县| 乌审旗| 江陵县| 庄河市| 泸定县| 北辰区| 古丈县| 佛坪县| 怀安县| 全椒县| 湖北省| 察隅县| 永昌县| 安国市| 佳木斯市| 临颍县| 台州市| 正镶白旗| 南安市| 靖江市| 定州市| 巧家县| 石城县| 海兴县| 绵阳市| 嘉善县| 泾阳县| 邳州市| 和顺县| 饶平县| 车险| 顺昌县| 大方县| 友谊县| 中方县| 宜宾市| 遵义市| 宜黄县| 永新县|