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

?

“程序設(shè)計(jì)基礎(chǔ)”課程函數(shù)設(shè)計(jì)教學(xué)方法探討

2009-06-20 08:45王桂平
計(jì)算機(jī)教育 2009年10期
關(guān)鍵詞:教學(xué)

文章編號(hào):1672-5913(2009)10-0116-04

摘要:本文針對(duì)“程序設(shè)計(jì)基礎(chǔ)”課程介紹了以在線實(shí)踐為導(dǎo)向的教學(xué)思路,并對(duì)其中的函數(shù)設(shè)計(jì)教學(xué),提出了新穎的教學(xué)過程:承上啟下、因勢(shì)利導(dǎo)地引入函數(shù)的概念和作用;循序漸進(jìn)地講解函數(shù)的設(shè)計(jì)方法;以及通過遞歸函數(shù)設(shè)計(jì)來提高學(xué)生對(duì)函數(shù)功能的理解和對(duì)函數(shù)設(shè)計(jì)技巧的掌握。

關(guān)鍵詞:程序設(shè)計(jì)基礎(chǔ);在線實(shí)踐導(dǎo)向;函數(shù)設(shè)計(jì);遞歸函數(shù);教學(xué)

中圖分類號(hào):G642

文獻(xiàn)標(biāo)識(shí)碼:B

1引言

在文獻(xiàn)[1]中,作者針對(duì)“程序設(shè)計(jì)基礎(chǔ)”課程提出了以在線實(shí)踐為導(dǎo)向的教學(xué)思路,其主要思想為:以學(xué)科競(jìng)賽為驅(qū)動(dòng)、以在線實(shí)踐為導(dǎo)向、以課程設(shè)計(jì)進(jìn)行強(qiáng)化。這種教學(xué)思路以程序設(shè)計(jì)思想和方法的培養(yǎng)為主,以程序設(shè)計(jì)語言教學(xué)為輔。

我們?cè)诮虒W(xué)中以ACM/ICPC程序設(shè)計(jì)競(jìng)賽為驅(qū)動(dòng),激發(fā)學(xué)生的學(xué)習(xí)興趣和競(jìng)爭(zhēng)意識(shí),培養(yǎng)學(xué)生的主動(dòng)思維能力。另外,我們?cè)谡n程的教學(xué)中根據(jù)教學(xué)的需要選取國內(nèi)外著名OJ(Online Judge,在線評(píng)判)網(wǎng)站上的試題作為例題和練習(xí)題,以培養(yǎng)學(xué)生獨(dú)立分析問題、解決問題的能力,以及分組討論、團(tuán)隊(duì)協(xié)作、文檔組織等能力。在課程的最后階段,我們通過課程設(shè)計(jì)強(qiáng)化學(xué)生的學(xué)習(xí)效果。

為了適應(yīng)以在線實(shí)踐為導(dǎo)向的教學(xué)思路,在文獻(xiàn)[1]中,我們重新設(shè)計(jì)了“程序設(shè)計(jì)基礎(chǔ)”課程的理論教學(xué)內(nèi)容和實(shí)踐教學(xué)內(nèi)容。其中理論教學(xué)內(nèi)容的設(shè)置和課時(shí)安排如表1所示。

從表1可以看出,理論教學(xué)內(nèi)容安排的思路是:先用盡可能少的時(shí)間講解編寫一個(gè)C/C++程序所需的最小語法知識(shí)集,然后講解常用的程序設(shè)計(jì)思想和方法;最后是課程設(shè)計(jì)。

函數(shù)設(shè)計(jì)的教學(xué)是“程序設(shè)計(jì)基礎(chǔ)”課程的一個(gè)重點(diǎn)內(nèi)容。本文針對(duì)這部分內(nèi)容的教學(xué),提出了新穎的教學(xué)過程。在以往的教學(xué)中,函數(shù)設(shè)計(jì)一般是放在程序控制結(jié)構(gòu)、數(shù)組等內(nèi)容之后,前后教學(xué)內(nèi)容的設(shè)置并沒有直接聯(lián)系,使得學(xué)生難以理解函數(shù)的概念、功能和設(shè)計(jì)方法。

我們?cè)诮虒W(xué)中采取新穎的方法和過程自然地引入數(shù)

學(xué)函數(shù)的使用、循序漸進(jìn)地介紹函數(shù)的設(shè)計(jì)方法、以及通過遞歸函數(shù)設(shè)計(jì)來提高學(xué)生對(duì)函數(shù)功能的理解和對(duì)函數(shù)設(shè)計(jì)技巧的掌握。

教改課題項(xiàng)目:浙江財(cái)經(jīng)學(xué)院2008年教學(xué)科研重大課題《以學(xué)科競(jìng)賽為驅(qū)動(dòng)和以在線實(shí)踐為導(dǎo)向的程序設(shè)計(jì)課程教學(xué)改革》(課題編號(hào):JK200812)。

作者簡(jiǎn)介:王桂平(1979-),男,江西省安??h人,講師,在讀博士,浙江財(cái)經(jīng)學(xué)院信息學(xué)院教師。主要研究方向:算法分析與設(shè)計(jì),圖像處理與模式識(shí)別。

2承上啟下、因勢(shì)利導(dǎo)地引入函數(shù)

學(xué)生對(duì)知識(shí)點(diǎn)的理解需要一個(gè)過程,而且這個(gè)過程越自然越利于學(xué)生接受知識(shí)點(diǎn)。所以我們?cè)诮虒W(xué)過程中盡早地引入函數(shù)的概念,自然地過渡到函數(shù)設(shè)計(jì)。

2.1從數(shù)學(xué)函數(shù)的使用入手

我們所設(shè)計(jì)的第1部分教學(xué)內(nèi)容是以數(shù)值型數(shù)據(jù)的處理為線索,以簡(jiǎn)單數(shù)學(xué)計(jì)算或數(shù)學(xué)應(yīng)用題目為例子來講解C/C++語言語法知識(shí),如報(bào)數(shù)游戲、閏年的判斷、求三角形面積、素?cái)?shù)和完數(shù)的判斷、Fibonacci數(shù)列各項(xiàng)遞推、迭代法求平方根等等。以這些數(shù)學(xué)應(yīng)用為例講解語言語法,學(xué)生更容易接受,因?yàn)檫@些數(shù)學(xué)應(yīng)用問題學(xué)生已經(jīng)在高等數(shù)學(xué)甚至初等數(shù)學(xué)中就已經(jīng)學(xué)過了,現(xiàn)在只是用編寫程序的方法去求解。

在進(jìn)行數(shù)據(jù)處理時(shí),經(jīng)常要進(jìn)行一定的運(yùn)算,才能得到結(jié)果,運(yùn)算是通過運(yùn)算符和表達(dá)式來實(shí)現(xiàn)的。所以我們?cè)诮榻B完C/C++語言中的數(shù)據(jù)(變量和常量)后,就自然地過渡到運(yùn)算符和表達(dá)式了。

在進(jìn)行數(shù)據(jù)處理時(shí),僅有運(yùn)算符和表達(dá)式往往是不夠的,經(jīng)常還需要使用到數(shù)學(xué)函數(shù)。因此,我們?cè)诮榻B完運(yùn)算符和表達(dá)式后,緊接著就向?qū)W生介紹數(shù)學(xué)函數(shù)的使用。

盡管這時(shí)學(xué)生對(duì)函數(shù)的概念和功能還一知半解,一開始也不能正確地使用數(shù)學(xué)函數(shù),但我們認(rèn)為從數(shù)學(xué)函數(shù)的使用入手,能較早地讓學(xué)生接觸到函數(shù)的使用,也能讓學(xué)生更自然地接受函數(shù)的概念。特別是學(xué)生在學(xué)初等數(shù)學(xué)時(shí),已經(jīng)具備了數(shù)學(xué)上函數(shù)、函數(shù)的自變量、函數(shù)值等概念,這些概念有助于學(xué)生初步理解程序設(shè)計(jì)語言中的函數(shù)、函數(shù)參數(shù)、函數(shù)返回值等概念。

例如,要對(duì)2.5開3次方根,即要求2.51/3。老師向?qū)W生介紹了數(shù)學(xué)函數(shù)pow的原型后,學(xué)生一開始可能將pow函數(shù)的調(diào)用錯(cuò)誤地寫成如下的形式:

double x = 2.5, y = 1.0/3, z;

z = double pow( x, y );

z = double pow( double x, double y );

等等。導(dǎo)致這些錯(cuò)誤的原因是學(xué)生還沒有函數(shù)原型的概念,老師只要將這些錯(cuò)誤的調(diào)用形式糾正過一兩次,學(xué)生就能舉一反三,正確地使用數(shù)學(xué)函數(shù)。

2.2從二重循環(huán)過渡到函數(shù)設(shè)計(jì)

我們?cè)凇八惴翱刂平Y(jié)構(gòu)”這一節(jié)內(nèi)容的教學(xué)中,是以二重循環(huán)的使用作為結(jié)尾的,如輸出100~200之內(nèi)的所有素?cái)?shù)、輸出6~10000之間的完數(shù)等等。這些程序的main函數(shù)代碼比較長(zhǎng),這樣,當(dāng)我們?cè)谥v解函數(shù)時(shí),就很自然地引入函數(shù)對(duì)main函數(shù)的功能進(jìn)行分解。

例如,要輸出100~200之內(nèi)的素?cái)?shù),可以用一個(gè)2重循環(huán)實(shí)現(xiàn)。但如果有一個(gè)函數(shù)prime,能夠?qū)崿F(xiàn)判斷一個(gè)正整數(shù)m是否為素?cái)?shù)。其調(diào)用形式是:prime(m)。調(diào)用該函數(shù)后返回值如果為1,則m為素?cái)?shù);如果為0,則m為合數(shù)。因此我們只需要用如下的代碼就可以輸出100~200之內(nèi)的所有素?cái)?shù):

for( int m =100; m<=200; m++ )

{

if( prime(m) )

printf( "%d ", m );

}

在這個(gè)例子中,我們把“輸出100~200之內(nèi)所有素?cái)?shù)”的功能需求進(jìn)行分解,把“判斷一個(gè)整數(shù)是否為素?cái)?shù)”的功能用prime函數(shù)去實(shí)現(xiàn)。這就是函數(shù)的功能所在。

通過這樣的講解,學(xué)生能較自然地理解函數(shù)的功能,也更容易接受函數(shù)的概念。

3循序漸進(jìn)地講解函數(shù)設(shè)計(jì)(基礎(chǔ)篇)

從二重循環(huán)過渡到函數(shù)的功能和概念后,我們采取以下教學(xué)方法,使得學(xué)生能在較短的時(shí)間里掌握函數(shù)的設(shè)計(jì)方法。

3.1循序漸進(jìn),步步深入

在講解函數(shù)的定義和調(diào)用時(shí),對(duì)其中的知識(shí)點(diǎn),我們采取以下順序進(jìn)行講解:函數(shù)的定義、函數(shù)的參數(shù)、函數(shù)的返回值、函數(shù)的調(diào)用。

我們認(rèn)為,按照這樣的順序進(jìn)行講解是合理的,因?yàn)閷W(xué)生已經(jīng)掌握了數(shù)學(xué)函數(shù)的使用,已經(jīng)能初步理解函數(shù)的相關(guān)概念了,我們按照這樣的順序講解可以循序漸進(jìn)地進(jìn)入到自定義函數(shù)的定義和調(diào)用上。在這個(gè)過程中,我們將教學(xué)的重點(diǎn)放在函數(shù)形參、實(shí)參和函數(shù)返回值上。

3.2切中要害,見招拆招

很多初學(xué)者對(duì)函數(shù)比較頭疼,不知道該如何設(shè)計(jì)函數(shù)。具體體現(xiàn)在:

(1) 不知道函數(shù)是否有參數(shù),有幾個(gè)參數(shù),是否有返回值,隨意地設(shè)置函數(shù)的參數(shù)和返回值。

(2) 不明確函數(shù)要處理的數(shù)據(jù)是哪些,不明白函數(shù)形參的作用是什么,形參的值是在什么時(shí)候被“賦予”的。初學(xué)者經(jīng)常在函數(shù)里通過輸入語句給形參輸入數(shù)據(jù)。例如,初學(xué)者可能在定義上述prime函數(shù)時(shí)輸入數(shù)據(jù)到形參x中:

int prime( int x )

{

printf( "%d", &x );

}

對(duì)于第1個(gè)問題,我們的解釋是:程序設(shè)計(jì)者希望采用怎樣的形式去調(diào)用函數(shù),這種函數(shù)調(diào)用形式里有幾個(gè)參數(shù),分別是什么類型,是以此來確定函數(shù)的形參個(gè)數(shù)和類型;程序設(shè)計(jì)者希望函數(shù)執(zhí)行以后是否得到一個(gè)結(jié)果,這個(gè)結(jié)果是什么類型的,是什么含義,是否需要返回到主調(diào)函數(shù)中,以此來確定函數(shù)的返回值及其類型、含義等。

對(duì)于第2個(gè)問題,我們的解釋是:函數(shù)形參是在函數(shù)調(diào)用時(shí),通過實(shí)參與形參之間的數(shù)據(jù)傳遞,從而“被賦予”了值。只要沒有函數(shù)調(diào)用發(fā)生,就不會(huì)給形參分配存儲(chǔ)空間;當(dāng)函數(shù)調(diào)用發(fā)生時(shí),為形參分配存儲(chǔ)空間,并把實(shí)參的值賦值給形參。

對(duì)于上述解釋,我們以前面講過的二重循環(huán)例子來進(jìn)一步闡述。即輸出100~200之內(nèi)所有素?cái)?shù),要求:1)定義一個(gè)函數(shù)prime,用于判斷x是否為素?cái)?shù),如果為素?cái)?shù),返回1,否則返回0;2)在主函數(shù)中調(diào)用prime函數(shù),用于判斷100~200之間的每個(gè)數(shù)是否為素?cái)?shù)。

根據(jù)題目的意思,主調(diào)函數(shù)中調(diào)用prime函數(shù)的形式是prime(199),即判斷199是否為素?cái)?shù),如果為素?cái)?shù)則返回1,否則返回0。因此,prime函數(shù)的原型為:

int prime( int x );

另外,在prime函數(shù)里,是要判斷形參x是否為素?cái)?shù),這個(gè)x的值不是在prime函數(shù)里通過輸入語句輸進(jìn)去的,也不是采用賦值的方式“賦予”給它的,而是在主調(diào)函數(shù)中調(diào)用prime函數(shù)時(shí),如prime(199),把實(shí)參199的值傳遞給形參x的,因此這時(shí)執(zhí)行prime函數(shù),形參x的值就是199,調(diào)用prime函數(shù)就是要判斷199是否為素?cái)?shù)。

講解并演示這些過程后,我們?cè)谡n堂上可以通過一些練習(xí)題進(jìn)一步考查學(xué)生對(duì)利用函數(shù)進(jìn)行功能分解、函數(shù)設(shè)計(jì)、函數(shù)調(diào)用的理解。

3.3精選例題,事半功倍

我們所設(shè)計(jì)的第1部分教學(xué)內(nèi)容是以數(shù)值型數(shù)據(jù)的處理為線索,以簡(jiǎn)單數(shù)學(xué)計(jì)算或數(shù)學(xué)應(yīng)用題為例子來講解的,函數(shù)的設(shè)計(jì)也不例外。例如,我們通過以下例子來講解函數(shù)的嵌套調(diào)用。

拋物線y = x2/(2*p)繞它的對(duì)稱軸x = 0旋轉(zhuǎn)所成的曲面就是旋轉(zhuǎn)拋物面。放在焦點(diǎn)F(0, p/2)處的光源所發(fā)出的光,經(jīng)過拋物面各點(diǎn)反射之后就成為平行光束,如圖1??梢岳眠@一性質(zhì)制造需要發(fā)射平行光的燈具,例如:探照燈,汽車的車前燈等。請(qǐng)編寫程序驗(yàn)證這個(gè)性質(zhì)。

題目的意思是,如圖1所示,從焦點(diǎn)F發(fā)射的任意光線,比如圖中的兩條光線L和L',經(jīng)過拋物面反射后,反射光線R和R'都平行y軸。

要證明反射光線R平行y軸,只要證明∠1 = ∠3,而∠1和∠2是相等的,所以只要證明∠2=∠3即可,即只要證明FC = FT,這里點(diǎn)C是光線L與拋物線的交點(diǎn),點(diǎn)T是拋物線在C點(diǎn)的切線與y軸的交點(diǎn)。

以下編寫程序,實(shí)現(xiàn):任意給定拋物線參數(shù)p和發(fā)射光線斜率k,輸出線段FC和FT的長(zhǎng)度。

在本題中,我們?cè)O(shè)計(jì)以下3個(gè)函數(shù)來實(shí)現(xiàn)程序的全部功能:

(1) main函數(shù):在main函數(shù)中輸入拋物線參數(shù)p和直線參數(shù)k,接下來所有工作都是通過調(diào)用solve函數(shù)實(shí)現(xiàn)的。

(2) solve函數(shù):求交點(diǎn)C和交點(diǎn)F的坐標(biāo),并調(diào)用length函數(shù)求線段FC和FT的長(zhǎng)度并輸出。solve函數(shù)有兩個(gè)形參,即拋物線參數(shù)p和直線參數(shù)k,沒有返回值。solve函數(shù)的原型為:

void solve(double p, double k);

(3) length函數(shù):求平面上兩點(diǎn)(x1,y1)和(x2,y2)的距離,即連接這兩點(diǎn)的線段的長(zhǎng)度。該函數(shù)有4個(gè)形參,為這兩個(gè)點(diǎn)的坐標(biāo);返回值為求的線段長(zhǎng)度。length函數(shù)的原型為:

double length( double x1, double y1,

double x2, double y2 );

通過這道題目的講解,學(xué)生在求解比較復(fù)雜的數(shù)學(xué)應(yīng)用題時(shí),能根據(jù)需要對(duì)程序的功能進(jìn)行分解并用不同的函數(shù)實(shí)現(xiàn)。

4遞歸函數(shù)設(shè)計(jì)(提高篇)

在以前的教學(xué)中,函數(shù)設(shè)計(jì)通常需要2~3周才能講完。而在目前的教學(xué)中,我們將函數(shù)重載、有默認(rèn)參數(shù)的函數(shù)等內(nèi)容剔除掉后,學(xué)生能夠在1周(3個(gè)理論課時(shí)+2個(gè)實(shí)驗(yàn)課時(shí))的教學(xué)中初步掌握函數(shù)的設(shè)計(jì)方法。在后續(xù)章節(jié)的教學(xué)中,我們列舉的很多例題也需要通過設(shè)計(jì)函數(shù)來實(shí)現(xiàn),所以在后續(xù)的教學(xué)中一直在進(jìn)一步加強(qiáng)學(xué)生對(duì)函數(shù)設(shè)計(jì)方法的掌握。另外,我們將遞歸函數(shù)的設(shè)計(jì)放在“遞歸與搜索”這一章當(dāng)中來講解,作為函數(shù)設(shè)計(jì)的提高階段。

遞歸是很多算法的基礎(chǔ),如搜索、分治等,也是課程的一個(gè)難點(diǎn)。學(xué)生在掌握了一般函數(shù)的設(shè)計(jì)方法后,在利用遞歸思想進(jìn)行搜索求解時(shí)需要注意以下兩個(gè)問題:

(1) 如何設(shè)計(jì)遞歸函數(shù)遞歸函數(shù)的設(shè)計(jì)主要面臨以下幾個(gè)問題:

① 需要將什么信息傳遞給下一層遞歸調(diào)用?——由此確定遞歸函數(shù)有幾個(gè)參數(shù),各參數(shù)含義是什么。

② 每一層遞歸函數(shù)調(diào)用后會(huì)得到一個(gè)怎樣的結(jié)果?這個(gè)結(jié)果是否需要返回到上一層?——由此確定遞歸函數(shù)的返回值,及返回值的含義。

③ 在每一層遞歸函數(shù)的執(zhí)行過程中,在什么情形下需要遞歸調(diào)用下一層?以及遞歸前該做什么準(zhǔn)備工作?遞歸返回后該做什么恢復(fù)工作?——由此確定遞歸函數(shù)中遞歸調(diào)用的細(xì)節(jié)。

④ 遞歸函數(shù)執(zhí)行到什么程度就可以不再需要遞歸調(diào)用下去了?——應(yīng)該在適當(dāng)?shù)臅r(shí)候終止遞歸函數(shù)的繼續(xù)遞歸調(diào)用,也就是要確定遞歸的終止條件。

(2) 如何調(diào)用遞歸函數(shù)進(jìn)行求解

調(diào)用遞歸函數(shù)進(jìn)行求解:在main函數(shù)(或其他函數(shù))中應(yīng)該采取怎樣的形式調(diào)用遞歸函數(shù)?也就是從怎樣的初始狀態(tài)出發(fā)進(jìn)行搜索,通常也就是確定實(shí)參的值。

我們?cè)诮虒W(xué)中以一些經(jīng)典的競(jìng)賽題目為例來闡述上述方法,如有這樣一道例題:有17種硬幣,硬幣的面值是平方數(shù)12, 22, 32, …, 172,即1, 4, 9, …, 289。問要支付一定額的貨幣,有多少種支付方法。

例如,若要支付總額為10的貨幣,則有四種方法:10個(gè)面值為1的貨幣;1個(gè)面值為4的貨幣和6個(gè)面值為1的貨幣;2個(gè)面值為4的貨幣和2個(gè)面值為1的貨幣;1個(gè)面值為9的貨幣和1個(gè)面值為1的貨幣。

在本題中,為避免求得重復(fù)的支付方案,我們需要按硬幣面值從小到大的順序依次選用合適的硬幣,如果當(dāng)前選用的硬幣面值總額小于需要支付的貨幣總額n,則繼續(xù)選用;如果等于,則我們找到一種方案,不再考慮其他貨幣,而是繼續(xù)下一個(gè)方案的選擇;如果大于,則放棄該方案,繼續(xù)下一個(gè)方案的選擇。

我們?cè)O(shè)計(jì)一個(gè)遞歸函數(shù)build來求貨幣總額n的支付方案數(shù),build函數(shù)的設(shè)計(jì)思路是:

●確定build函數(shù)的參數(shù):需要支付的貨幣金額、現(xiàn)已求得的支付方案數(shù)、當(dāng)前選用的硬幣面值總額、當(dāng)前最后選用的硬幣是第幾種硬幣這些信息需要傳遞到下一層遞歸調(diào)用。因此確定build函數(shù)有4個(gè)參數(shù):n、count、sum、j,分別對(duì)應(yīng)上述4種信息。

●確定build函數(shù)的返回值:每次build遞歸調(diào)用結(jié)束后,求得的是當(dāng)前找到的方案數(shù),最上層的build函數(shù)執(zhí)行完后,得到的結(jié)果是最終找到的方案數(shù),因此build有返回值,為int型。

●確定在什么情況下要遞歸調(diào)用下一層build函數(shù):分別考慮第i種貨幣(i取值為j、j+1、…、17),如果選用該種貨幣(sum的值增加i*i)后,sum仍小于n,則遞歸調(diào)用build函數(shù):build( n, count, sum, i);從該遞歸調(diào)用返回后,sum的值要減去i*i,

表示棄用第i種貨幣,繼續(xù)考察下一種貨幣。

●確定build函數(shù)的終止條件:如果當(dāng)前選用硬幣面值總額sum等于或大于n時(shí),不再遞歸調(diào)用下去,其中前一種情形還需將count的值加1,表示找到一種支付方案。

根據(jù)上述分析,設(shè)計(jì)的build函數(shù)如下:

int build(int n, int count, int sum,int j)

{

int i; //循環(huán)變量

for( i=1; i<=17; i++ )//搜索所有面值的硬幣

{

if( i

sum += i*i; //選用面值為i*i的硬幣

//找到一種支付方案

if( sum==n )return ++count;

//超出了支付總額,不再搜索

if( sum>n )return count;

//沒超出則遞歸調(diào)用build函數(shù)繼續(xù)搜索

count = build( n, count, sum, i );

sum -= i*i; //棄用面值為i*i的硬幣

}

return count;

}

build函數(shù)設(shè)計(jì)好以后,在主函數(shù)中,只要采取以下語句調(diào)用build函數(shù)就可以求得貨幣總額n的支付方案數(shù)count:

count = build( n, 0, 0, 0 );

4個(gè)實(shí)參的值代表問題的初始狀態(tài):需支付的貨幣總額為n、現(xiàn)已求得的支付方案數(shù)為0、當(dāng)前選用的硬幣面值總額為0、當(dāng)前最后選用的硬幣是第0種硬幣。

通過這些搜索題目的講解,學(xué)生能在理解搜索思想的同時(shí)掌握遞歸函數(shù)的設(shè)計(jì)技巧,從而進(jìn)一步提高函數(shù)設(shè)計(jì)能力。

5結(jié)束語

函數(shù)設(shè)計(jì)是“程序設(shè)計(jì)基礎(chǔ)”課程的一個(gè)重點(diǎn),也是學(xué)生普遍感到難以掌握的一個(gè)知識(shí)點(diǎn)。本文在以在線實(shí)踐為導(dǎo)向的教學(xué)思路基礎(chǔ)上,詳細(xì)的介紹了我們?cè)诤瘮?shù)設(shè)計(jì)教學(xué)中采取的教學(xué)方法和過程,這些方法和過程都是以在線實(shí)踐為導(dǎo)向的教學(xué)思路的具體體現(xiàn)。

參考文獻(xiàn):

[1] 王桂平,馮睿. 以在線實(shí)踐為導(dǎo)向的程序設(shè)計(jì)課程教學(xué)新思路[J]. 計(jì)算機(jī)教育,2008(22):100-102.

[2] 方紅琴. 點(diǎn)面結(jié)合突破C程序設(shè)計(jì)函數(shù)教學(xué)中的重難點(diǎn)[J]. 計(jì)算機(jī)教育,2008(22):130-131.

[3] 謝偉增,李瑾. C語言程序設(shè)計(jì)中的重點(diǎn):函數(shù)與指針[J]. 河南廣播電視大學(xué)學(xué)報(bào),2003,16(4):65-66.

[4] 羅碧波. C/C++語言程序中函數(shù)調(diào)用解決辦法[J]. 計(jì)算機(jī)時(shí)代,2007(5):66-67.

猜你喜歡
教學(xué)
“對(duì)比”:讓學(xué)習(xí)走向深刻——以《用數(shù)對(duì)確定位置》教學(xué)為例
《I’m Cooking in the Kitchen?》教學(xué)設(shè)計(jì)(Part B)
計(jì)算教學(xué)中“算用結(jié)合”的有效策略
高中英語詩歌創(chuàng)作教學(xué)探索與實(shí)踐
《組合》教學(xué)設(shè)計(jì)
“自我診斷表”在高中數(shù)學(xué)教學(xué)中的應(yīng)用
類比在高中數(shù)學(xué)教學(xué)中的探索
在遺憾的教學(xué)中前行
計(jì)算教學(xué)要做到“五個(gè)重視”
教育教學(xué)
广德县| 郧西县| 汉阴县| 蒲城县| 新龙县| 绥宁县| 从江县| 漳浦县| 三河市| 吉安市| 台东县| 周口市| 海阳市| 九寨沟县| 肥东县| 桐梓县| 延边| 广德县| 长葛市| 内黄县| 浦北县| 毕节市| 金堂县| 孝感市| 沐川县| 中江县| 三门县| 喀什市| 武宣县| 桐城市| 赤峰市| 泾川县| 清新县| 江西省| 交口县| 叙永县| 峨边| 芜湖县| 资溪县| 金阳县| 毕节市|