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

        ?

        基于編程思維培養(yǎng)的C語言教學(xué)改革

        2022-06-24 08:57:40邸未冬馮麗萍張靜
        高師理科學(xué)刊 2022年5期
        關(guān)鍵詞:程序思維教學(xué)

        邸未冬,馮麗萍,張靜

        基于編程思維培養(yǎng)的C語言教學(xué)改革

        邸未冬,馮麗萍,張靜

        (忻州師范學(xué)院 計(jì)算機(jī)系,山西 忻州 034000)

        C語言作為計(jì)算機(jī)專業(yè)編程語言的首門課程,對學(xué)生編程思維的培養(yǎng)尤為重要.目前C語言教學(xué)普遍存在的問題是學(xué)生程序設(shè)計(jì)能力弱,形不成編程思維.針對這一問題,從教學(xué)設(shè)計(jì)、教學(xué)手段、考核方式等方面,探討了面向編程思維能力培養(yǎng)的C語言教學(xué)改革模式.改革后的實(shí)踐表明,學(xué)生在期末考試、計(jì)算機(jī)等級考試等方面的成績都有所提升,程序設(shè)計(jì)能力明顯加強(qiáng).

        C語言;編程思維;算法設(shè)計(jì);教學(xué)研究

        1 編程思維的培養(yǎng)目標(biāo)

        在以往的教學(xué)中,忽視了程序的本質(zhì)是人思維的表達(dá)方式這一理念,導(dǎo)致學(xué)生只注重了語法的細(xì)節(jié)[1],結(jié)果就是學(xué)知識容易用知識難,形不成編程思維,編程毫無切入點(diǎn),自己寫不了程序,久而久之失去了對編程的興趣.結(jié)合C語言程序設(shè)計(jì)課程的特點(diǎn)和教學(xué)要求,教學(xué)中從3個(gè)方面培養(yǎng)學(xué)生的編程思維.

        1.1 編程基礎(chǔ)

        用計(jì)算機(jī)解決問題的最后手段是通過編程實(shí)現(xiàn),深刻理解C語言程序設(shè)計(jì)的相關(guān)概念及語法語義,能用C語言實(shí)現(xiàn)算法.

        1.2 模塊化思維

        主要是分析問題的能力,將程序的框架結(jié)構(gòu)分解成編程可實(shí)現(xiàn)的具體功能點(diǎn),即函數(shù)思維.

        1.3 算法設(shè)計(jì)能力的培養(yǎng)

        算法是編程實(shí)現(xiàn)的前提,把算法思維融入到編程中,能夠理解算法并構(gòu)建算法.

        2 基于編程思維培養(yǎng)的教學(xué)設(shè)計(jì)

        編程思維的重點(diǎn)是問題的解決過程,程序設(shè)計(jì)的重點(diǎn)在解題的思路上.在基于編程思維培養(yǎng)的C語言課程教學(xué)中,以程序設(shè)計(jì)為主線,把算法思維與語法緊密結(jié)合起來[2].基于培養(yǎng)目標(biāo),教學(xué)過程的實(shí)施環(huán)節(jié)見表1.

        表1 基于編程思維培養(yǎng)的教學(xué)實(shí)施環(huán)節(jié)

        2.1 采用啟發(fā)式案例引導(dǎo)教學(xué)

        教師在設(shè)計(jì)每一章節(jié)內(nèi)容的教學(xué)時(shí),應(yīng)避免直接枯燥地講解概念規(guī)則,孤立地講授基本語法,這樣學(xué)生打不好編程基礎(chǔ).通過創(chuàng)設(shè)情景案例,在案例中引出語法規(guī)則,把枯燥無味的語法規(guī)則變成生動活潑的編程應(yīng)用.如最開始講基礎(chǔ)知識時(shí),先創(chuàng)設(shè)情景案例,求圓的面積.然后設(shè)置一些問題:如何向計(jì)算機(jī)輸入半徑,如何計(jì)算出面積并輸出,是否需要一些東西把信息存儲在電腦中等.利用設(shè)置的問題引出講解的知識點(diǎn),如變量、常量及內(nèi)存中的存儲方式、變量的數(shù)據(jù)類型、輸入輸出等,最后通過完整的程序來展示給學(xué)生.再如講到數(shù)組概念時(shí),拋出求最值的問題:給定同一類型的10個(gè)數(shù),求出最大和最小的數(shù)并輸出.

        先讓學(xué)生思考,很顯然用之前的知識定義10個(gè)變量來解決這個(gè)問題是很困難的,此時(shí)引出數(shù)組的相關(guān)概念進(jìn)行講解,然后引導(dǎo)學(xué)生進(jìn)行案例設(shè)計(jì),這樣就把編程思維的訓(xùn)練與案例結(jié)合起來.通過學(xué)習(xí),使學(xué)生打好編程基礎(chǔ),具有簡單的編程能力.在創(chuàng)設(shè)情景案例時(shí),注意由簡單到復(fù)雜,循序漸進(jìn)地學(xué)習(xí)編寫程序.

        2.2 教學(xué)設(shè)計(jì)中融入算法思維的訓(xùn)練

        教師在講授過程中,要有意識地訓(xùn)練學(xué)生算法設(shè)計(jì)的能力.算法思維的形成,是個(gè)潛移默化的過程[3],需要從問題的不同角度多思考,多練習(xí).教師可根據(jù)不同章節(jié)內(nèi)容,采用一些不同的策略以培養(yǎng)學(xué)生的算法思維.

        2.2.1 強(qiáng)化算法描述過程 利用計(jì)算機(jī)程序解決問題,一般通過問題分析->算法描述->編寫代碼幾個(gè)步驟,其中算法描述是代碼實(shí)現(xiàn)的關(guān)鍵所在.在講解案例時(shí),充分利用偽代碼、流程圖等算法工具進(jìn)行算法描述,然后現(xiàn)場編程完成代碼編寫,以此貫穿于整個(gè)教學(xué)過程.如在講解選擇結(jié)構(gòu)時(shí),給定案例:輸入3個(gè)數(shù),找出其中的最大值并輸出.教學(xué)過程描述見表2.顯然通過算法描述,編寫代碼的思路更加清晰.

        表2 結(jié)合算法描述的編程教學(xué)示例

        2.2.2 以反向思維促進(jìn)算法的理解 C語言是結(jié)構(gòu)化語言,學(xué)生在學(xué)習(xí)了順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)這3種基本的算法結(jié)構(gòu)以后,就可以進(jìn)行一定的程序設(shè)計(jì).但在初期教學(xué)過程中發(fā)現(xiàn)算法設(shè)計(jì)這個(gè)過程仍然是難以逾越的,特別是一些抽象的算法.反向思維是先給定程序,通過在對程序的分析過程中培養(yǎng)思維的一種方法,可以作為培養(yǎng)算法思維的輔助手段.在具體實(shí)施中,針對每種數(shù)據(jù)結(jié)構(gòu),如基本變量、數(shù)組、指針、結(jié)構(gòu)體、鏈表、文件等,教師每次要精心準(zhǔn)備3~5個(gè)典型案例題目,先給出程序,讓學(xué)生分析題目中程序的功能,進(jìn)行逆向思維,最后根據(jù)程序畫出流程圖.讓學(xué)生從讀程序中理解算法,通過這種反向思維訓(xùn)練有助于形成初期的編程思維.

        2.2.3 靈活應(yīng)用算法 同一個(gè)問題,用不同的算法解決[4-5].例如:在講到函數(shù)遞歸問題時(shí),因?yàn)檫f歸有個(gè)重復(fù)執(zhí)行的過程,教師可提問學(xué)生解決重復(fù)執(zhí)行的操作還可以怎么實(shí)現(xiàn),學(xué)生會想到循環(huán)算法,這時(shí)讓學(xué)生思考,求1+2+3+…+50之和,之前使用循環(huán)實(shí)現(xiàn),用遞歸能否實(shí)現(xiàn),教師可以啟發(fā)學(xué)生將用循環(huán)語句執(zhí)行的操作變?yōu)楹瘮?shù)重復(fù)調(diào)用自己的操作,用簡易代碼描述:

        用for語句描述

        int i, sum=0;

        for(i=1;i<=50;i++)

        sum=sum+i; //反復(fù)執(zhí)行

        用遞歸描述

        int sum(n)

        { if(n==1) return n;

        else return sum(n-1)+n;//反復(fù)執(zhí)行

        通過這樣靈活應(yīng)用算法,對編程思維的養(yǎng)成會有一定的促進(jìn)作用.

        2.3 模塊化思維(函數(shù)思維)的訓(xùn)練

        模塊化思維的核心就是把一個(gè)復(fù)雜的問題,分解成多個(gè)子問題模塊來處理,在C語言中主要就是函數(shù)思維,也就是函數(shù)即功能.一個(gè)較大的程序都寫在main()函數(shù)中,不僅不易于程序的編寫,而且會導(dǎo)致編程思維混亂,所以模塊化的程序設(shè)計(jì)思維是非常重要的.首先,要進(jìn)行自定義函數(shù)能力的訓(xùn)練,如給出一個(gè)功能需求,要求學(xué)生編寫一個(gè)函數(shù)來實(shí)現(xiàn);其次,要掌握庫函數(shù)及其調(diào)用方法;最后,按照課程設(shè)計(jì)的要求,讓學(xué)生根據(jù)題目需求,自行設(shè)計(jì)功能模塊,然后編制函數(shù)完成程序的整體設(shè)計(jì).通過模塊化設(shè)計(jì)的訓(xùn)練,既可培養(yǎng)學(xué)生的邏輯思維,同時(shí)對編程思維的提升也有一定的作用.

        2.4 重視實(shí)踐環(huán)節(jié)

        對于編程思維培養(yǎng)的目的,就是能自己寫代碼解決問題,所以上機(jī)實(shí)踐是非常重要且不可缺少的環(huán)節(jié).上機(jī)實(shí)踐不能只是模仿練習(xí),自己編寫程序、調(diào)試代碼對培養(yǎng)編程思維有很大的作用.特別在調(diào)試程序時(shí)引導(dǎo)學(xué)生單步執(zhí)行程序,理解每條C語句對應(yīng)的匯編并觀察相應(yīng)的內(nèi)存和寄存器變化.這樣學(xué)生對寫程序會有一個(gè)感性的認(rèn)知,而這種認(rèn)知反過來會激發(fā)學(xué)生的編程思維.在教學(xué)中積累一定的知識后,精選題目讓學(xué)生上機(jī)自主實(shí)驗(yàn).實(shí)踐環(huán)節(jié)具體實(shí)施過程見表3.

        表3 實(shí)踐環(huán)節(jié)實(shí)施過程

        3 基于編程思維培養(yǎng)的教學(xué)手段改革

        3.1 結(jié)合思政培養(yǎng)科學(xué)素養(yǎng)

        C語言作為學(xué)生最初接觸的編程語言,在學(xué)習(xí)過程中會有一定的障礙,有些學(xué)生會因此產(chǎn)生厭學(xué)的情緒,學(xué)習(xí)敷衍了事.教師在備課時(shí)融入思政元素,培養(yǎng)學(xué)生科學(xué)素養(yǎng),激發(fā)學(xué)習(xí)熱情.例如:講C語言語法規(guī)則時(shí),強(qiáng)調(diào)做事要講規(guī)則、講原則;通過介紹C語言程序設(shè)計(jì)在嵌入式系統(tǒng)、人工智能等科技領(lǐng)域的應(yīng)用,結(jié)合國家對技術(shù)創(chuàng)新等方面的要求,激發(fā)學(xué)生的學(xué)習(xí)熱情;講算法設(shè)計(jì)時(shí)要有大局觀,培養(yǎng)框架思維能力.通過融入思政元素的教學(xué)手段,增強(qiáng)學(xué)生克服困難、學(xué)好知識的信心.

        3.2 借助移動端編譯器提升學(xué)習(xí)效率

        隨著軟件技術(shù)的發(fā)展,移動端如手機(jī)都可以安裝簡易的C語言編譯器[6],學(xué)生在日常學(xué)習(xí)中可以隨時(shí)在手機(jī)上編寫C程序代碼并調(diào)試,特別是對語法規(guī)則中難以理解的小問題.如自加運(yùn)算符++和自減運(yùn)算符--的理解,在學(xué)習(xí)指針時(shí)對*p++、*(++p)、*(p++)、++(*p)等表達(dá)式的理解,學(xué)生剛開始學(xué)習(xí)時(shí)在理解上是有困難的,可即時(shí)利用手機(jī)編寫代碼進(jìn)行測試,通過分析程序結(jié)果來幫助學(xué)生理解這些問題.利用手機(jī)編譯器的方便性,可以提高學(xué)生編程的學(xué)習(xí)頻率,對學(xué)生程序設(shè)計(jì)能力及思維能力的提升大有幫助.

        3.3 利用好網(wǎng)絡(luò)教學(xué)平臺實(shí)現(xiàn)線上線下教學(xué)相結(jié)合

        編程思維能力的提高要求有扎實(shí)的知識基礎(chǔ),對C語言教學(xué)來說,教師在課堂講授的知識學(xué)生難以全部掌握,同時(shí)因?qū)W生個(gè)體差異,對知識點(diǎn)掌握效果參差不齊.目前,線上+線下相結(jié)合的教學(xué)方式成為教學(xué)的主流方式[7],借助于網(wǎng)上教學(xué)平臺,為學(xué)生提供有效的課程學(xué)習(xí)資源,學(xué)生可以在課下進(jìn)行查缺補(bǔ)漏,進(jìn)一步強(qiáng)化學(xué)習(xí)過程,提高教學(xué)的效果.以超星學(xué)習(xí)通網(wǎng)絡(luò)教學(xué)平臺為例,教師可以上傳講課視頻、課件、案例等資源供學(xué)生使用,并可布置、批閱作業(yè)、討論答疑,方便學(xué)生交流學(xué)習(xí).在每章節(jié)內(nèi)容講解完以后,教師可以在平臺上出卷子進(jìn)行單元測試,以了解學(xué)生對知識的掌握情況,這對教學(xué)效果的保障是一個(gè)有效的手段.

        3.4 以小組為單位組織程序設(shè)計(jì)競賽

        編程思維的形成不可能在短期內(nèi)實(shí)現(xiàn),需要經(jīng)過長期的實(shí)踐.程序設(shè)計(jì)競賽從大二直到大三每學(xué)期末都要舉行一次,在學(xué)生具有一定編程能力的基礎(chǔ)上,以小組為單位實(shí)施編程競賽.教師要精心設(shè)計(jì)題目,創(chuàng)建算法模型庫,學(xué)生從模型庫中自行選擇題目,自主完成分析、設(shè)計(jì)、編程、測試的過程.競賽的打分不完全取決于結(jié)果是否正確,而要包含對題目的分析、設(shè)計(jì)過程的測評.通過競賽,學(xué)生對自己的編程水平會有一定的認(rèn)可度[8],不僅訓(xùn)練了編程思維,也提高了對編程的學(xué)習(xí)興趣.通過近3年的學(xué)生程序設(shè)計(jì)競賽實(shí)施來看,學(xué)生參與人數(shù)越來越多,競賽成績逐步提高.

        4 明確過程化考核目標(biāo)

        考核是促進(jìn)學(xué)生學(xué)習(xí)的動力之一[9].以往的考核以期末筆試為主,考試內(nèi)容重語法,不利于學(xué)生對實(shí)踐的重視,也不利于編程思維的培養(yǎng).考核方案要綜合評價(jià)基礎(chǔ)知識的掌握和編程實(shí)踐的能力,應(yīng)以多種形式的考核方式促使學(xué)生對編程思維能力培養(yǎng)的重視度.考核方案為:期末筆試(40%)+上機(jī)實(shí)踐(40%)+程序競賽(5%)+平時(shí)成績(15%).

        其中,期末筆試是對學(xué)生基礎(chǔ)知識的考核;上機(jī)實(shí)踐部分是對學(xué)生的編程能力的考核,機(jī)試題目為功能較小的綜合設(shè)計(jì),根據(jù)學(xué)生完成任務(wù)的比例打分;程序競賽以小組綜合評分,是對編程思維能力的考核;平時(shí)成績包括線上線下作業(yè)完成情況和課堂表現(xiàn),是對學(xué)生學(xué)習(xí)過程評價(jià)的依據(jù).

        綜上所述,C語言課程作為大學(xué)新生的編程入門語言,既要掌握語法結(jié)構(gòu),打好基礎(chǔ),又要掌握程序設(shè)計(jì)的思維方法.在基于編程思維能力培養(yǎng)的目標(biāo)下,對C語言的教學(xué)模式實(shí)施了一定的改革.通過改革前后多項(xiàng)考核數(shù)據(jù)對比發(fā)現(xiàn),期末考試成績良好以上占比由以往的40%左右提高到了65%以上;計(jì)算機(jī)二級C語言等級考試報(bào)名人數(shù)逐年增加,考試通過率增加近20個(gè)百分點(diǎn);參加大學(xué)生程序競賽的人數(shù)及獲獎(jiǎng)次數(shù)比以往都有提高.實(shí)踐表明,采用改革后的教學(xué)模式,學(xué)生的編程思維及程序設(shè)計(jì)能力普遍有所提升.

        [1] 尹波,孟愛國,朱前飛,等.面向編程思維能力培養(yǎng)的C語言教學(xué)改革研究[J].計(jì)算機(jī)時(shí)代,2016(11):67-69,72.

        [2] 譚浩強(qiáng).C程序設(shè)計(jì)[M].5版.北京:清華大學(xué)出版社,2017.

        [3] 鄭冰,寧鵬飛.基于JiTT模式的C語言教學(xué)中計(jì)算思維的培養(yǎng)[J].計(jì)算機(jī)教育,2018(10):101-104.

        [4] 王磊,葉軍,韓宇珍.以計(jì)算思維為導(dǎo)向的C語言教學(xué)方法的探索與實(shí)踐[J].計(jì)算機(jī)教育,2019(7):168-172.

        [5] 苑麗紅.在C語言教學(xué)中啟發(fā)和訓(xùn)練學(xué)生的編程思維[J].福建電腦,2006(12):207-208.

        [6] 唐彩紅.基于計(jì)算思維的計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)改革研究:以C語言為例[J].教育現(xiàn)代化,2019,6(29):100-101.

        [7] 柳原.基于網(wǎng)絡(luò)教學(xué)平臺的大學(xué)生探究式新型學(xué)習(xí)方法的探索與實(shí)踐:以《C語言程序設(shè)計(jì)》課程為例[J].電腦知識與技術(shù),2020,16(6):121-122.

        [8] 邸未冬,賀國平.基于目標(biāo)導(dǎo)向的Java程序設(shè)計(jì)課程的教學(xué)研究[J].高師理科學(xué)刊,2016,36(12):93-96.

        [9] 郭群.基于技術(shù)技能型人才培養(yǎng)的《C語言程序設(shè)計(jì)》課程教學(xué)改革與探索[J].辦公自動化(綜合版),2014(10):60-62.

        Teaching reform of C language course based on the cultivation of programming thinking

        DI Weidong,F(xiàn)ENG Liping,ZHANG Jing

        (Department of Computer,Xinzhou Teachers University,Xinzhou 034000,China)

        As the first course of programming language for computer majors,C language is particularly important for the cultivation of students′ programming thinking.At present,the common problem in C language teaching is that students have weak programming ability and cannot form programming thinking.Aiming at this problem,C language teaching mode for the cultivation of programming thinking ability is discussed from the aspects of teaching design, teaching means and examination methods.The reform practice shows that students′ scores in the final examination and computer grade examination have been improved,and programming ability has been significantly strengthened.

        C language;programming thinking;algorithm design;teaching research

        1007-9831(2022)05-0080-04

        TP312∶G642.0

        A

        10.3969/j.issn.1007-9831.2022.05.015

        2021-11-30

        忻州師范學(xué)院教學(xué)改革創(chuàng)新研究項(xiàng)目(JGYB202020)

        邸未冬(1972-),男,山西原平人,講師,碩士,從事軟件工程和圖像處理研究.E-mail:diwdong@126.com

        猜你喜歡
        程序思維教學(xué)
        思維跳跳糖
        思維跳跳糖
        思維跳跳糖
        思維跳跳糖
        微課讓高中數(shù)學(xué)教學(xué)更高效
        甘肅教育(2020年14期)2020-09-11 07:57:50
        試論我國未決羈押程序的立法完善
        “程序猿”的生活什么樣
        “自我診斷表”在高中數(shù)學(xué)教學(xué)中的應(yīng)用
        東方教育(2017年19期)2017-12-05 15:14:48
        英國與歐盟正式啟動“離婚”程序程序
        對外漢語教學(xué)中“想”和“要”的比較
        少妇spa推油被扣高潮| 日韩在线观看入口一二三四| 国产亚洲精品a片久久久| 国产在线精品欧美日韩电影| 午夜国产一区二区三区精品不卡| 亚洲av乱码国产精品观看麻豆| 日韩亚洲精品国产第二页| 亚洲色国产欧美日韩| 亚洲色成人网站www观看入口| 蜜桃视频中文字幕一区二区三区| 97超碰国产成人在线| 一本色道久久88综合日韩精品| xxxx国产视频| 日韩精品极品视频在线观看蜜桃| 91精品国产福利在线观看麻豆| 午夜福利啪啪片| 国产精品女视频一区二区| 国产一区二区三区乱码在线| 少妇性俱乐部纵欲狂欢少妇| 国产成年无码v片在线| 国产免费人成视频在线播放播| 99亚洲女人私处高清视频| 久久无码人妻丰满熟妇区毛片| 亚洲欧美日本| 韩国无码精品人妻一区二| 男女射精视频在线观看网站| 中文无码一区二区不卡av| 人妻少妇精品无码专区二| av在线网站一区二区| 性高朝久久久久久久3小时| 大香伊蕉国产av| 美女裸体无遮挡黄污网站| 日本免费看片一区二区三区| 亚欧免费无码aⅴ在线观看| 亚洲精品国产字幕久久vr| 亚洲第一页在线观看视频网站| 亚洲国产精品成人久久久| 国产精品成人免费视频网站京东| 亚洲图片第二页| 国产女同va一区二区三区| 男人靠女人免费视频网站|