亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        非計算機專業(yè)C語言教學研究

        2018-05-28 11:10:10李鳳強
        電腦知識與技術 2018年9期

        李鳳強

        摘要:C語言程序設計是一門實踐性、工程性很強的課程,旨在培養(yǎng)學生編寫程序解決實際問題的能力。在非計算機專業(yè)的C語言教學中,由于重理論,輕實踐,同時缺乏調(diào)試技能和編碼規(guī)范的培養(yǎng),導致教學效果不佳,不能達到人才培養(yǎng)的目的。該文分析了產(chǎn)生這些問題的原因,同時指出了對策,將有利于全面培養(yǎng)學生的編程能力。

        關鍵詞:C語言;任務驅(qū)動教學;程序調(diào)試;編碼規(guī)范;編程能力

        中圖分類號:G642 文獻標識碼:A 文章編號:1009-3044(2018)09-0127-03

        Abstract:The programming of C language is an application course with the focuses of practicality and engineering, which aims to develop students' programming skills to solve practical problems. Due to theory is valued and practice is despised in the C language teaching process for the students of non computer majors , at the same time, pay less attention on the teach of debugging skills and coding standards, all this caused that the teaching efficiency is not good enough to achieve the goal of talent training. This paper analyzes the reasons and presents the solutions for above problems, which will help develop students programming ability.

        Key words: C language; task-driven; debug; coding standards; programming

        1 引言

        C語言程序設計是一門實踐性、工程性很強的課程,旨在培養(yǎng)學生編寫程序解決實際問題的能力,很多非計算機專業(yè)中也開設了這門課程。傳統(tǒng)的C語言教學重理論輕實踐,同時不能根據(jù)非計算機專業(yè)學生的特點因材施教,或者在培養(yǎng)學生的編程能力時只傳授了編寫程序的方法,但沒有傳授調(diào)試的方法和編碼規(guī)范化的要求,導致學生的編程能力先天不足,無法達到較好的教學效果。

        2 教學現(xiàn)狀

        2.1 照搬教材,不做二次開發(fā)

        在C語言程序設計的教學中很多老師只是按照教材的內(nèi)容把對應的知識傳授給了學生,并沒有對教材內(nèi)容進行二次開發(fā)以適應學生的特點和教學過程。教材的編寫體例是為了系統(tǒng)的傳授知識,注重內(nèi)容之間的邏輯關系和系統(tǒng)性,但是并不完全適合學生的認知規(guī)律。這樣的教學,老師就變成了教材的復述器,無法提高學生的學習興趣,自然達不到良好的教學效果。

        2.2 調(diào)試技能培養(yǎng)缺失

        程序是由人編寫的,難免會出現(xiàn)各種問題。程序出現(xiàn)問題后,這就需要用到調(diào)試技能,調(diào)試程序的能力是編程能力中非常重要的一個方面。現(xiàn)實是C語言課程教學中,調(diào)試技能的培養(yǎng)很多時候都是缺失的。這其中一個很重要的原因就是我們很多老師都是學校畢業(yè)后就進入了大學從教,自身寫程序比較少,大型的程序就更少了,對于調(diào)試的重要性體會不是很深,調(diào)試的技能也有所缺失,導致教學中弱化了對學生調(diào)試技能的培養(yǎng)。

        2.3 編碼規(guī)范化培養(yǎng)缺失

        作為專業(yè)的程序開發(fā)人員不僅要能夠根據(jù)問題編寫程序,而且要能夠編寫符合編碼規(guī)范的程序,程序要寫的簡潔,清楚,美觀,邏輯清晰,層次分明。C語言程序設計課程中,教師對學生的要求偏重于能否實現(xiàn)功能,對于編碼規(guī)范的要求幾乎沒有,導致學生編碼規(guī)范素養(yǎng)的缺失。

        3 教學改進措施

        3.1 重視任務驅(qū)動教學

        通過實踐證明對于學生來說按照教材的體例按部就班地進行理論傳授會有很多弊端:

        1)學生沒有興趣。C語言中有很多的理論知識,如果就理論講理論,學生會陷入學了很多東西但是不知道如何使用的困境,時間一長就失去了學習的興趣,效果自然就打了折扣。

        2)學生不知道所學知識有何用途。C語言教材開始部分有很多理論比如數(shù)據(jù)類型、操作符等,如果我們按部就班進行理論傳授,就會造成學生學了好幾周,也不知道如何寫程序,心中會有很多迷惑和不解,影響教學效果。

        任務驅(qū)動教學法是一種建立在建構主義學習理論基礎上的教學法,它將以往以傳授知識為主的傳統(tǒng)教學理念,轉變?yōu)橐越鉀Q問題、完成任務為主的多維互動式的教學理念,將再現(xiàn)式教學轉變?yōu)樘骄渴綄W習,使學生處于積極的學習狀態(tài),每一位學生都能根據(jù)自己對當前問題的理解,運用共有的知識和自己特有的經(jīng)驗提出方案、解決問題。

        在使用任務驅(qū)動教學法的時要注意兩個問題:

        1)所構造的任務和情景要和學生將來從事的工作盡量切合。C語言是一門高級編程語言,從理論上來說可以解決任何問題,所以我們在構造教學任務的時候可以有很多種選擇。選擇符合學生所學職業(yè)的工作任務,能夠調(diào)動學生學習的積極性,起到事半功倍的效果;

        2)任務的難度要適中。對于非計算機的學生來說,邏輯思維,程序思維都有待進一步培養(yǎng),所以任務不能過于數(shù)學化,最好是邏輯思維很直觀,但是手工操作很麻煩最好借助計算機來實現(xiàn)的的任務。

        3.2 重視調(diào)試技能培養(yǎng)

        C語言是一門實踐性很強的課程,目的就是培養(yǎng)學生編寫程序解決實際問題的能力,這個能力中不可缺少的就是調(diào)試技能。程序是由人編寫的,由于各種原因編寫的程序難免存在各種BUG,如果沒有調(diào)試技能,當我們面對各種BUG時將費時費力甚至束手無策。掌握調(diào)試技能可以使我們快速地修改編譯錯誤,高效的定位邏輯錯誤,提高開發(fā)的效率。

        3.2.1 編譯錯誤

        編譯錯誤是在編譯程序時報的錯誤,大多數(shù)都是語法錯誤,編譯器也會提供比較詳細的說明告訴你錯誤是什么,這些錯誤是比較好改的。常見的編譯錯誤有:缺少分號、括號不匹配、未定義的標識符、變量在使用前未初始化等等。編譯錯誤只要看懂編譯信息就可以快速地修改。這里面要注意一個問題,有時候編譯器會報很多錯誤,但是其實只是一處有問題,然后導致后面都錯了,這時候最關鍵的就是要找到這一處錯誤然后修改掉,重新編譯之后由它引起的編譯錯誤也就自然消失了。

        3.2.2 邏輯錯誤

        邏輯錯誤是指程序通過編譯可以正常運行,但是運行結果不符合預期或者出現(xiàn)程序奔潰或停止運行等問題。解決邏輯錯誤一般有兩種方法一種是源代碼審核,一種是運行調(diào)試。

        源代碼審核就是通過閱讀源代碼發(fā)現(xiàn)其中存在的問題,這是非常重要的一步,在專業(yè)的軟件公司開發(fā)流程中都有源代碼審核的步驟和要求。在C語言學習開始,所寫程序都是非常簡單的,這時候主要培養(yǎng)學生反復閱讀代碼的習慣,就是通過反復的閱讀代碼發(fā)現(xiàn)自己程序的語法問題、邏輯問題。

        運行調(diào)試中需要學生掌握最基本的調(diào)試方法。1)會設置斷點;2)會在VC開發(fā)環(huán)境中啟動調(diào)試模式;3)會單步跟蹤4)會在VC開發(fā)環(huán)境的watch窗口中查看變量的值;5)會在VC開發(fā)環(huán)境的memory窗口中查看指定內(nèi)存的值。6)會查看VC開發(fā)環(huán)境的Output窗口輸出的信息。上面的這些基本方法掌握之后就可以進行最基本的調(diào)試,教學中要求的調(diào)試技能已經(jīng)基本達到。

        在實際工作中,軟件的規(guī)模會增大很多,邏輯也會復雜很多,調(diào)試有時候就成了創(chuàng)造性的工作,因此也需要給學生傳授一些調(diào)試技巧。

        1)分析問題的現(xiàn)象和代碼,大膽猜測問題產(chǎn)生的位置。比如程序報內(nèi)存錯誤,需要重點關注有內(nèi)存申請和使用的代碼,然后根據(jù)產(chǎn)生這個問題的操作,大膽猜測是哪一處代碼的問題。

        2)運用一切能夠運用的方法來進行調(diào)試。比如程序生成一個xml文件,生成的xml文件在某一個地方有問題,導致無法正常解析。這時候我們可以采用二分法來定位問題產(chǎn)生的位置,具體就是先完整生成一半內(nèi)容,如果有問題,再生成這一半中的一半,如果沒有問題,生成剩余部分的一半,通過這種折半查找的方法來鎖定問題出現(xiàn)的位置,然后再用基本的調(diào)試方法跟蹤為何會產(chǎn)生這樣的問題,最后解決問題。二分查找不屬于任何的調(diào)試方法,但是他可以幫助我們定位問題出現(xiàn)的位置,所以我們在調(diào)試的時候要放開自己的思維,不能死板,多動腦子,多思考,這樣才能提高解決問題的能力。

        培養(yǎng)調(diào)試能力的方法:

        1)教師演示調(diào)試的方法;

        2)學生通過調(diào)試自己的程序鞏固調(diào)試的基本技能;

        3)教師在上機輔導時要有意識的培養(yǎng)學生自己通過調(diào)試程序解決問題的能力;

        4)設計一些具有典型問題的程序,讓學生做調(diào)試練習,提高學生調(diào)試的技能。

        3.3 重視編碼規(guī)范化培養(yǎng)

        3.3.1 重視編碼規(guī)范化的理由

        良好的編碼風格是編程能力中非常重要的能力,良好的編碼風格可以保證程序的正確性、穩(wěn)定性、易讀性。重視編碼規(guī)范化培養(yǎng)基于以下兩個方面的考慮:

        1)對于計算機專業(yè)的學生來說即使沒有在C語言的課程中介紹或要求編碼規(guī)范,也會在后續(xù)的軟件工程課程中學到編碼規(guī)范的要求和思想,而對于非計算機專業(yè)的學生來說,后續(xù)是沒有軟件工程課程的,如果沒有在C語言程序設計中介紹編碼規(guī)范的要求,養(yǎng)成基本的編碼規(guī)范的能力、學生們將無法培養(yǎng)這方面的能力。

        2)編碼規(guī)范化非常重要。首先規(guī)范的編碼會顯得更加專業(yè)。一個程序是否是專業(yè)人員編寫,從編碼是否規(guī)范上基本就可以判斷出來。符合編碼規(guī)范的程序會給人一種簡潔、清晰,賞心悅目的感覺,不符合編碼規(guī)范的程序會給人一種亂糟糟的感覺。其次規(guī)范的編碼會降低程序出錯的可能性。比如我們常用的==符號,一般程序員會寫成if(i==1),如果誤寫成了if(i=1),程序就不是我們需要的邏輯了。專業(yè)的程序員會寫成if(1==i),如果我們誤寫成了if(1=i),這時候編譯的時候會報錯,讓我們可以提前發(fā)現(xiàn)錯誤,提高程序的正確性。再比如內(nèi)存操作函數(shù)malloc()和free(),這兩個函數(shù)是成對出現(xiàn)的,所以我們在書寫的時候一定要成對的寫,寫完malloc()函數(shù)之后就直接寫上free()函數(shù),然后在它們中間寫我們需要的程序,這樣就可以保證所有申請的函數(shù)都得到了釋放,不會造成內(nèi)存泄露。如果不這樣做,就有可能造成內(nèi)存泄露,然后內(nèi)存被消耗殆盡導致宕機事件。

        3.3.2 培養(yǎng)編碼規(guī)范的方法

        1)老師在演示程序編寫時有意識的貫穿編碼規(guī)范化的要求。

        2)在評判學生的作業(yè)時,除過對程序的功能性要求外,加入對編碼規(guī)范化的要求。

        3)通過比較符合編碼規(guī)范的程序和不符合編碼規(guī)范的程序,讓學生直觀的感受編碼規(guī)范的重要性。

        4)提供一些不符合編碼規(guī)范的程序,讓學生修改使其符合編碼規(guī)范,通過這樣的練習,培養(yǎng)學生的編碼規(guī)范能力。

        4 總結

        C語言程序設計是一門實踐性很強的課程,教師要根據(jù)非計算機專業(yè)學生的特點,通過任務驅(qū)動教學法使學生輕松掌握c語言程序設計的能力。通過提高學生的調(diào)試能力,可以使學生在開發(fā)程序的時候可以獨立自主的解決程序中出現(xiàn)的問題,減少對老師的依賴,提高學習的成就感。通過編碼規(guī)范化的培養(yǎng),使學生認識編碼規(guī)范的重要性和掌握編碼規(guī)范的一些基本要求,使學生不僅能夠開發(fā)程序,而且能夠?qū)懗銎恋馁|(zhì)量高的程序,進一步提高開發(fā)的能力。

        參考文獻:

        [1] 趙麗娜.高職非計算機專業(yè)”c程序設計”課程改革[J].中國市場,2017(18):283-284.

        [2] 張鑫.高校非計算機專業(yè)《C語言程序設計》課程建設的創(chuàng)新研究[J].電子世界,2017(3):77-79

        [3] 楊曉諳.高校非計算機專業(yè)C語言課程教學改革探討[J].電腦知識與技術,2017,27(9):138-139.

        [4] 夏蕓.非計算機專業(yè)《C語言程序設計》循環(huán)結構教學用例探討[J].電腦知識與技術,2017,35(12):163-165.

        [5] 劉磊.基于應用型人才培養(yǎng)的“C語言程序”課程教學改革的探討與實踐[J].當代教研論叢,2017(17):25+27.

        [6] 姚衡.計算機C語言編程過程中的常見問題[J].電子技術與軟件工程,2018(1):246.

        [7] 鄒靜. 淺談大學C語言教學方法[J].現(xiàn)代職業(yè)教育,2017(1):126.

        [8] 龐曉鳳.淺析非計算機專業(yè)《C語言》課程教學改革[J].高教學刊,2017(7):118-119.

        aaaaa级少妇高潮大片免费看| 国产午夜视频在线观看.| 中文精品久久久久人妻不卡| 日韩人妻中文字幕高清在线| 日本孕妇潮喷高潮视频| 国产性生大片免费观看性| 欧美日本国产va高清cabal| 一本大道久久a久久综合| 综合中文字幕亚洲一区二区三区| 一区二区精品国产亚洲| 性刺激的大陆三级视频| 欧美成人精品三级网站| 一区二区三区日韩亚洲中文视频| 中国少妇和黑人做爰视频| 国产视频免费一区二区| 亚洲中文字幕国产视频| 国内精品久久久久影院蜜芽| 极品人妻少妇一区二区| 国产三级精品三级在线专区 | 国产最新一区二区三区| 国产一区二区三区不卡在线播放| 最新国产激情视频在线观看| 中国老熟妇506070| japanesehd中国产在线看| 亚洲国产精品自产拍久久蜜AV| 久久精品国语对白黄色| 99国产精品久久久久久久成人热| 欧美性开放bbw| 美女裸体无遮挡免费视频的网站| 久草视频在线视频手机在线观看| 国产福利一区二区三区在线视频| 亚洲男人的天堂网站| a午夜国产一级黄片| 日本一区二区三区不卡在线| 亚洲一区二区三区av无码| 91视频免费国产成人| 一区=区三区国产视频| 女人18毛片a级毛片| 亚洲成人小说| 国产一级一片内射在线| 无码人妻久久久一区二区三区|