• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    C語言程序設(shè)計(jì)教學(xué)方法探討

    2006-08-01 06:59:48雷學(xué)生
    計(jì)算機(jī)教育 2006年6期
    關(guān)鍵詞:程序段程序設(shè)計(jì)語句

    雷學(xué)生 胡 多

    摘要C語言程序設(shè)計(jì)目前已經(jīng)成為高等學(xué)校工科各個專業(yè)學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)的首選課程,其目的是培養(yǎng)學(xué)生學(xué)會使用計(jì)算機(jī)語言編寫適合自己專業(yè)特色的應(yīng)用程序。然而,由于教學(xué)時數(shù)的限制和教師教學(xué)方法的不恰當(dāng),使大多數(shù)學(xué)生在學(xué)完該課程后,仍然感覺編程很難,或者一點(diǎn)也不會編程,更不用說在自己的專業(yè)中應(yīng)用了。本文就是為了解決這個問題而提出了教師在教學(xué)C語言程序設(shè)計(jì)課程時可以采用的一種行之有效的教學(xué)方法。

    關(guān)鍵詞:C語言教學(xué)內(nèi)容教學(xué)手段教學(xué)方法

    目前,C語言程序設(shè)計(jì)已經(jīng)越來越多地成為高等學(xué)校工科各個專業(yè)學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)的首選課程了,這與C語言的特點(diǎn)是分不開的。C語言不但可以編寫系統(tǒng)軟件,而且也可以根據(jù)用戶的需要編寫出滿足用戶要求的應(yīng)用軟件,尤其是C語言具有很好的對計(jì)算機(jī)的硬件編程的能力,使其在工科教學(xué)中的生命力也越來越強(qiáng)。然而,在信息化高速發(fā)展的今天,要求我們在教學(xué)中加大信息量,這與高校教學(xué)中總學(xué)時數(shù)的限制顯然是矛盾的。教師如何在有限的學(xué)時中完成自己的教學(xué)任務(wù),并取得滿意的效果?學(xué)生學(xué)習(xí)完C語言程序設(shè)計(jì)課程后能夠獨(dú)立編寫出適合自己要求的程序嗎?現(xiàn)將本人多年在C語言程序設(shè)計(jì)課程教學(xué)中采用的方法,介紹給大家,僅供參考。

    1根據(jù)專業(yè)的不同調(diào)整教學(xué)內(nèi)容的側(cè)重點(diǎn)

    C語言作為一門語言課來說,雖然其系統(tǒng)結(jié)構(gòu)是不變的,但是,不同的專業(yè)要求并不一樣,這就要求教師不能千篇一律地按照書本內(nèi)容去講授,而應(yīng)根據(jù)不同的專業(yè)要求調(diào)整課程內(nèi)容的側(cè)重點(diǎn)。比如,對計(jì)算機(jī)專業(yè)學(xué)生來說,后續(xù)課“數(shù)據(jù)結(jié)構(gòu)”中需要學(xué)生掌握結(jié)構(gòu)體、指針等知識,而電氣化專業(yè)學(xué)生,在工作時主要是進(jìn)行硬件編程,就要求學(xué)生加強(qiáng)位運(yùn)算知識的學(xué)習(xí),教師在位運(yùn)算講授時就要加強(qiáng)對位運(yùn)算的應(yīng)用的介紹,多舉一些實(shí)際例子。

    可見,在教學(xué)時教師必須根據(jù)不同專業(yè)特點(diǎn)調(diào)整課程內(nèi)容的側(cè)重點(diǎn),以滿足不同專業(yè)學(xué)生的工作需要與要求。

    2改革教學(xué)手段,培養(yǎng)學(xué)生的學(xué)習(xí)興趣

    從傳統(tǒng)的板書教學(xué)變?yōu)榘鍟虒W(xué)+多媒體教學(xué)+上機(jī)實(shí)踐。板書與教學(xué)目標(biāo)、教學(xué)計(jì)劃、教學(xué)進(jìn)度能緊密結(jié)合,能充分體現(xiàn)教育思想,能使師生相互交流,相互影響,達(dá)到互動學(xué)習(xí)的目的。然而,在C語言教學(xué)活動中,主要介紹語句的語法規(guī)則,而這些規(guī)則基本上又都是約定的,不允許變化的,因而很死板、枯燥,學(xué)生學(xué)習(xí)起來興趣不大,調(diào)動不起積極性,但如果加上多媒體的聲、動和計(jì)算機(jī)的演示功能,就可以提高學(xué)生的學(xué)習(xí)積極性,培養(yǎng)學(xué)生學(xué)習(xí)的興趣,加深理解與記憶。

    總之,板書教學(xué)+多媒體教學(xué)+上機(jī)實(shí)踐可以使課堂教學(xué)靈活多變,培養(yǎng)學(xué)生的學(xué)習(xí)興趣,鍛煉學(xué)生獨(dú)立思考,獨(dú)立分析問題的能力。

    3改革教學(xué)方法,培養(yǎng)學(xué)生獨(dú)立設(shè)計(jì)程序的能力

    學(xué)生學(xué)習(xí)C語言程序設(shè)計(jì)時,不應(yīng)以考試為目的,也不應(yīng)以調(diào)試通過書本上例題為目的,而應(yīng)以掌握C語言的語法、功能和解決實(shí)際問題為目的。為此,教師在教學(xué)時應(yīng)從以下幾個方面進(jìn)行。

    3.1明確C語言特點(diǎn)、C語言功能和C語言的程序結(jié)構(gòu)

    教師在上第一堂課時,就應(yīng)告訴學(xué)生C語言的特點(diǎn)是什么?有什么功能?在哪些領(lǐng)域應(yīng)用?尤其是對該專業(yè)的作用是什么?這樣就可以提高學(xué)生對C語言的學(xué)習(xí)興趣。最后,詳細(xì)介紹C語言的程序結(jié)構(gòu)以及每一部分的功能,針對不同問題哪些部分是不變的,哪些部分是變化的,該如何改變。例如,可以先告訴學(xué)生下面這個簡單的C語言程序結(jié)構(gòu):

    預(yù)定義

    main()

    {

    說明部分;

    賦值部分;

    功能實(shí)現(xiàn);

    結(jié)果輸出;

    }

    其中,程序結(jié)構(gòu)是不變的,各部分隨著具體功能的不同而有差異。“預(yù)定義”是該程序所進(jìn)行具體功能時需要的預(yù)定義部分,如常量的定義、文件的包含等;“說明部分”是對程序中相關(guān)量的定義,如變量的定義、函數(shù)的說明等;“賦值部分”是對程序中所用到的變量進(jìn)行賦值的處理;“功能實(shí)現(xiàn)”是該程序要完成的具體功能的語句羅列,根據(jù)不同問題其語句不同;“結(jié)果輸出”是對程序運(yùn)行結(jié)果的顯示。同時應(yīng)該讓學(xué)生注意,在上述結(jié)構(gòu)中“;”的作用、大小寫的區(qū)別,即C語言程序中,每個語句是以“;”作為結(jié)束標(biāo)志,“預(yù)定義”后沒有任何符號,關(guān)鍵字區(qū)分大小寫,除“FILE”關(guān)鍵字外其余都是小寫的等。

    3.2詳細(xì)介紹各語句的格式、功能

    程序是語句的羅列,因此,要想學(xué)會程序設(shè)計(jì),必須學(xué)好每一條語句。對語句教學(xué)時,應(yīng)主要介紹語句的格式、功能及該語句在使用時應(yīng)注意哪些事項(xiàng),并選擇具有代表性且能夠幫助學(xué)生理解該語句的程序或程序段為例作一詳細(xì)講解。

    3.3具體問題的解決方法

    以一個比較簡單的例子介紹具體問題的解決辦法。比如要求學(xué)生用C語言編寫一個求三條邊為a,b,c的三角形的面積S的程序(假設(shè)三條邊一定能構(gòu)成三角形)。

    拿到該問題后,先介紹在數(shù)學(xué)上解決該問題的步驟,即:

    第一步:給出已知三角形三條邊求三角形面積的公式S=

    第二步:給出根號下s=(a+b+c)/2。

    第三步:給出三條邊a,b,c的值。

    第四步:代入a,b,c于上述第一步和第二步的公式中得面積S。

    如果按照上述步驟編寫C語言程序,則程序段如下:

    #include ″math.h″/*預(yù)定義*/

    Main()

    {

    floata,b,c,s;/*定義變量a,b,c,s,用以分別存儲三角形的三條邊和面積*/

    S=sqrt(s*(s-a)*(s-b)*(s-c)) ;/*給出已知三角形的三條邊求三角形的面積公式,語句1*/

    s=(a+b+c)/2; /*求根號下s,語句2*/

    scanf("%f%f%f",&a,&b,&c);/*輸入三角形的三條邊a,b,c,語句3*/

    printf("area=%f ",s);/*輸出三角形的面積,語句4*/

    }

    該程序無論用戶從鍵盤輸入的是什么數(shù),其輸出值均為:area= 0.000000。顯然結(jié)果不正確。經(jīng)對C語言程序的運(yùn)行機(jī)制分析后可知,C語言程序執(zhí)行時,均是自上而下逐行執(zhí)行,這樣就不難看出,上述程序段是不能達(dá)到用戶要求的。因?yàn)椋?dāng)語句1執(zhí)行后,三角形的面積值S已經(jīng)計(jì)算出來了為0.000000(在C語言中,變量a,b,c無值時,系統(tǒng)默認(rèn)值為0),語句2執(zhí)行后,s值仍然為0.000000,語句3執(zhí)行時不論用戶輸入三角形的三條邊a,b,c是什么值,語句4輸出的均為語句2執(zhí)行后的結(jié)果(語句2和語句1執(zhí)行的結(jié)果均存在變量s中,而語句1先執(zhí)行,語句2后執(zhí)行,當(dāng)語句2執(zhí)行后,語句1中s的值就被語句2中的值覆蓋了),因此,程序輸出值均為:area=0.000000。解決辦法是把語句1、語句2和語句3的順序按從上到下改為語句3、語句2和語句1。因?yàn)檎Z句1在執(zhí)行時需要語句2和語句3先執(zhí)行,而語句2在執(zhí)行時需要語句3先執(zhí)行,所以順序應(yīng)為語句3、語句2和語句1。

    通過這個例子,可以使學(xué)生一目了然的知道計(jì)算機(jī)處理問題時嚴(yán)格遵守自上而下執(zhí)行順序,從而培養(yǎng)了學(xué)生分析問題和解決問題的能力。當(dāng)然,在講授這個程序時,也必須告訴學(xué)生,程序中所用到的數(shù)學(xué)式子和標(biāo)識符必須是C語言所允許的,也就是說必須把數(shù)學(xué)表達(dá)式轉(zhuǎn)換成C語言表達(dá)式,把標(biāo)識符轉(zhuǎn)換為C語言的標(biāo)識符,如上述例子中的

    和“(a+b+c)/2”必須寫成C語言能識別的表達(dá)式和標(biāo)識符。當(dāng)學(xué)生對該例子中的程序明白后,就可以進(jìn)一步引導(dǎo)學(xué)生分析:如果用戶給定的三條邊a,b,c構(gòu)不成三角形該如何處理?如果三角形的三條邊不是未知的,而是已知的,如何編寫程序等。

    3.4熟記程序段和技巧,靈活運(yùn)用其編程

    知道C語言程序的執(zhí)行過程和學(xué)會C語言語句的應(yīng)用后,就應(yīng)該學(xué)會編程了。在編程時應(yīng)該熟記程序段和技巧,并且將這些程序段和技巧靈活應(yīng)用在程序設(shè)計(jì)之中,同時要舉一反三,例如兩個數(shù)的交換、從一組數(shù)中找最大數(shù)、判斷給定數(shù)是否為偶數(shù)、數(shù)組的處理等。會找最大數(shù),就應(yīng)該知道最小數(shù)該如何查找;會判斷給定數(shù)是否為偶數(shù),就應(yīng)該會判斷給定數(shù)是否為奇數(shù)等。

    3.5“精選”與“精講”、“勤練”有機(jī)結(jié)合,提高單位學(xué)時內(nèi)的授課質(zhì)量

    經(jīng)過上面的介紹,學(xué)生一定會對C語言程序設(shè)計(jì)的方法有一個初步的認(rèn)識,并對學(xué)習(xí)程序設(shè)計(jì)語言具有了一定的興趣。然而,受教學(xué)時數(shù)的限制,要使學(xué)生在有限學(xué)時內(nèi)學(xué)會獨(dú)立設(shè)計(jì)程序的能力,教師在授課時就應(yīng)堅(jiān)持“精選”與“精講”、“勤練”的有機(jī)結(jié)合。

    “精選”是指在備課中,貫徹精選教學(xué)內(nèi)容、精心組織教材的“少而精”教學(xué)原則。備課中,教師應(yīng)該博覽群書,博采眾長,結(jié)合自己的教學(xué)經(jīng)驗(yàn)、授課專業(yè)與學(xué)生實(shí)際,寫好講稿,把握不同的側(cè)重點(diǎn)。如在C語言程序設(shè)計(jì)中,講解給變量賦值時可以將“scanf”和“=”一起介紹,介紹它們的格式、區(qū)別、使用場合等,這樣就可以在有限的學(xué)時內(nèi)講授更多的內(nèi)容。

    “精講”是指在課堂上精練講授,是充分發(fā)揮教師的主導(dǎo)作用的一種啟發(fā)式的教學(xué)方法。例如,在給學(xué)生講授C語言程序設(shè)計(jì)題目時,應(yīng)精講程序中的“功能實(shí)現(xiàn)”部分,然后,再以該部分為中心向上——“賦值部分、說明部分”和向下——“結(jié)果輸出”擴(kuò)展,最后根據(jù)程序的結(jié)構(gòu)將其補(bǔ)充完整。從而可以培養(yǎng)學(xué)生一種靈活而自然的編程思路。對于“功能實(shí)現(xiàn)”部分“精講”時,可以用恰當(dāng)?shù)睦樱蛊涓颖阌诶斫?。例如,在講解交換數(shù)a和數(shù)b時,可以假設(shè)數(shù)a和數(shù)b分別為兩杯水,讓學(xué)生來思考,如果要交換該兩杯水,應(yīng)如何處理呢?學(xué)生就會不假思索的告訴你,取一個空杯子,這樣該問題就迎刃而解了,同時也加深了學(xué)生的記憶。

    “勤練”是指學(xué)生在學(xué)習(xí)時勤思考、勤閱讀、勤記憶、勤作業(yè)。這是發(fā)揮學(xué)生主體作用的重要表現(xiàn)形式。學(xué)生在遇見程序設(shè)計(jì)題目時,應(yīng)根據(jù)題目的要求思考出功能實(shí)現(xiàn)的數(shù)學(xué)模型——數(shù)學(xué)實(shí)現(xiàn)方式,然后根據(jù)C語言的特點(diǎn)將其轉(zhuǎn)換成相應(yīng)的C語言的程序。在編程過程中,如果學(xué)生感到自己編寫程序很困難,而閱讀別人編好的程序時又覺得很簡單,那么,就應(yīng)該告訴學(xué)生,多閱讀一些別人編寫的程序,并多記憶一些“功能實(shí)現(xiàn)”的程序段,再經(jīng)過多練習(xí)學(xué)會靈活運(yùn)用這些“功能實(shí)現(xiàn)”的程序段。課后一般布置2~3道作業(yè)題,供學(xué)生“勤練”之用,并要求學(xué)生自己驗(yàn)證所做作業(yè)結(jié)果的正確性。

    這些年來,我在教學(xué)中把主要精力用于“精選”內(nèi)容的備課上,兩節(jié)課堂講課內(nèi)容一般最少用一天即八節(jié)課的時間籌劃講稿。課堂講授始終貫徹“精講多練”的原則,兩節(jié)課中理論講授、例題精講和課堂練習(xí)時間各占三分之一。課堂訓(xùn)練時,從易到難,循序漸進(jìn),以提問法為主。即開始時,可以先告訴學(xué)生解決問題的思想,然后讓學(xué)生自己獨(dú)立或以討論的方式編寫程序,最后隨機(jī)提問學(xué)生,分析所提問學(xué)生編寫的程序,從中將不足的地方予以詳細(xì)講解,引申出共性錯誤。經(jīng)過一段時間的訓(xùn)練后,再給題目時,除非是很難的題目,否則,就讓學(xué)生自己獨(dú)立或以討論的方式編寫程序,然后再以隨機(jī)提問的方式提問學(xué)生,并分析提問學(xué)生所編寫的程序,從中將不足的地方予以詳細(xì)講解。這樣,不但可以使課堂氣氛活躍起來,而且可以培養(yǎng)學(xué)生獨(dú)立分析問題和獨(dú)立解決問題的能力。

    參考文獻(xiàn)

    [1]雷學(xué)生.計(jì)算機(jī)語言課教學(xué)之我見[J].北華大學(xué)學(xué)報(bào),2004,4.

    [2]梁錦唐.課堂教學(xué)方法探略[J].有色金屬高教研究,1995,2.

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

    猜你喜歡
    程序段程序設(shè)計(jì)語句
    基于WinCC的物料小車控制系統(tǒng)設(shè)計(jì)與仿真
    電動工具(2022年2期)2022-05-18 08:40:38
    重點(diǎn):語句銜接
    基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
    數(shù)控系統(tǒng)手輪回退功能的研究與實(shí)現(xiàn)*
    從細(xì)節(jié)入手,談PLC程序設(shè)計(jì)技巧
    電子制作(2019年9期)2019-05-30 09:42:04
    基于NC程序段的提高數(shù)控加工監(jiān)控閾值與信號同步的方法*
    精彩語句
    高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
    PLC梯形圖程序設(shè)計(jì)技巧及應(yīng)用
    如何搞定語句銜接題
    語文知識(2014年4期)2014-02-28 21:59:52
    福建省| 建宁县| 延寿县| 信阳市| 绥阳县| 孝感市| 尚志市| 安陆市| 延庆县| 红河县| 葵青区| 云林县| 南漳县| 定边县| 周口市| 新郑市| 民县| 自贡市| 西藏| 泾川县| 江阴市| 鄂托克前旗| 偏关县| 通许县| 务川| 左贡县| 海晏县| 崇仁县| 南部县| 临澧县| 定南县| 江陵县| 来凤县| 洪泽县| 桃江县| 南郑县| 游戏| 光泽县| 右玉县| 博野县| 叙永县|