亚洲精品一区二区三区大桥未久_亚洲春色古典小说自拍_国产人妻aⅴ色偷_国产精品一区二555

程序設(shè)計(jì)基本結(jié)構(gòu)8篇

時(shí)間:2023-08-04 09:18:59

緒論:在尋找寫作靈感嗎?愛發(fā)表網(wǎng)為您精選了8篇程序設(shè)計(jì)基本結(jié)構(gòu),愿這些內(nèi)容能夠啟迪您的思維,激發(fā)您的創(chuàng)作熱情,歡迎您的閱讀與分享!

程序設(shè)計(jì)基本結(jié)構(gòu)

篇1

C語(yǔ)言 結(jié)構(gòu)化程序設(shè)計(jì) 循環(huán)結(jié)構(gòu) 效率

一、引言

學(xué)習(xí)和應(yīng)用計(jì)算機(jī)高級(jí)程序設(shè)計(jì)語(yǔ)言的人都知道,在這些語(yǔ)言中為實(shí)現(xiàn)結(jié)構(gòu)化程序設(shè)計(jì),一般都會(huì)采用三種最基本結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。因此,掌握這三種基本結(jié)構(gòu)的使用方法,是學(xué)習(xí)和掌握高級(jí)程序設(shè)計(jì)語(yǔ)言課的基礎(chǔ)。這三種基本結(jié)構(gòu)中,順序結(jié)構(gòu)和選擇結(jié)構(gòu)和我們平常的思維習(xí)慣相似。因此,最容易理解和掌握;而循環(huán)結(jié)構(gòu)是這三種基本結(jié)構(gòu)中最復(fù)雜的一種結(jié)構(gòu),與我們?nèi)粘5乃季S習(xí)慣不盡相同,因此理解起來(lái)相對(duì)來(lái)說(shuō)比較困難。但是,幾乎所有的程序都離不開循環(huán)結(jié)構(gòu),利用它可以簡(jiǎn)化程序、提高工作效率。因此,學(xué)習(xí)和應(yīng)用高級(jí)程序設(shè)計(jì)語(yǔ)言的人又必須要掌握循環(huán)結(jié)構(gòu)。但是,通過(guò)本人近幾年的教學(xué)發(fā)現(xiàn),大多數(shù)學(xué)生在學(xué)到循環(huán)結(jié)構(gòu)一段時(shí)間后,干脆將這門課給放棄了,原因是他們覺得循環(huán)結(jié)構(gòu)太難理解了。用順序結(jié)構(gòu)和選擇結(jié)構(gòu)做一個(gè)小程序還可以,用循環(huán)結(jié)構(gòu)實(shí)在難理解。鑒于這個(gè)原因,本人將日常授課中總結(jié)出來(lái)的一點(diǎn)心得從初學(xué)者的角度寫出來(lái),希望能對(duì)即將和正在學(xué)習(xí)高級(jí)程序設(shè)計(jì)語(yǔ)言課的人有所幫助。當(dāng)然,我們?cè)谶@里是以C語(yǔ)言為例來(lái)說(shuō)的,其實(shí)這方面的知識(shí)對(duì)其他語(yǔ)言比如Visual Basic語(yǔ)言等同樣適用。

在C語(yǔ)言中,循環(huán)結(jié)構(gòu)主要是由For語(yǔ)句、While語(yǔ)句、Do-While語(yǔ)句三種結(jié)構(gòu)來(lái)實(shí)現(xiàn)的。而在這三種循環(huán)結(jié)構(gòu)語(yǔ)句中又以for語(yǔ)句的應(yīng)用更為廣泛。因?yàn)閒or語(yǔ)句在其開頭語(yǔ)句中就已經(jīng)包含了循環(huán)變量的初始值、循環(huán)變量的終止值、循環(huán)的判斷條件以及循環(huán)變量的變化趨勢(shì)等這些內(nèi)容,因此在編寫其循環(huán)體時(shí),只用考慮其循環(huán)體應(yīng)該包含的主要功能就行了,而不用在For語(yǔ)句之前對(duì)循環(huán)變量的初始值進(jìn)行過(guò)多地考慮,同樣也不用在循環(huán)內(nèi)部考慮其循環(huán)變量如何變化。對(duì)大多數(shù)有程序設(shè)計(jì)經(jīng)驗(yàn)的人來(lái)說(shuō),使用for語(yǔ)句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)是一件輕而易舉的事情。但是,對(duì)于沒有經(jīng)驗(yàn)的初學(xué)者來(lái)說(shuō),要想將for語(yǔ)句的作用及使用方法掌握住也不是一件容易的事情,更不用說(shuō)While語(yǔ)句、Do-While語(yǔ)句的使用了。因此,本文從初學(xué)者的角度,闡述了C語(yǔ)言中循環(huán)結(jié)構(gòu)的幾種典型應(yīng)用。

二、用循環(huán)結(jié)構(gòu)輸出幾何圖形

在教學(xué)過(guò)程中,不管開設(shè)哪一種高級(jí)程序設(shè)計(jì)語(yǔ)言課,只要一講到循環(huán)結(jié)構(gòu),大多數(shù)老師幾乎不約而同地選擇輸出簡(jiǎn)單的幾何圖形來(lái)作為講解循環(huán)結(jié)構(gòu)的最好實(shí)例。

對(duì)于這種類型的題目,初學(xué)者往往最容易想到的方法就是采用多條輸出語(yǔ)句來(lái)完成程序的設(shè)計(jì)。雖然這種方法很快能夠?qū)崿F(xiàn)所要效果,但其缺陷也是很明顯的:缺乏靈活性、程序修改起來(lái)不方便,也不符合程序設(shè)計(jì)的思想。比如,我想讓大家輸出8行,每行36個(gè)“*”。這個(gè)時(shí)候,我們就不得不在輸入“*”的時(shí)候特別仔細(xì),因?yàn)橐徊恍⌒目赡軅€(gè)數(shù)就不對(duì)了。

但是,這樣的問(wèn)題如果用循環(huán)語(yǔ)句來(lái)實(shí)現(xiàn)的話,程序不但可以簡(jiǎn)化多,并且可以很靈活地將其修改成我們想要的效果。

因此,在講解這一類圖形時(shí),授課教師最好引導(dǎo)學(xué)生按照正常的程序設(shè)計(jì)思想,先分析圖形的組成結(jié)構(gòu),找出其中變化的規(guī)律,然后按照所找到的規(guī)律用循環(huán)結(jié)構(gòu)來(lái)編寫出相對(duì)應(yīng)的程序代碼,這樣一旦要求有一點(diǎn)點(diǎn)變化不用大篇幅地修改程序,而只用找到關(guān)鍵的幾個(gè)地方修改一下就可以了。教師在講解的過(guò)程中,可以舉一反三,多次修改、讓學(xué)生反復(fù)練習(xí),直到他們理解為止。

現(xiàn)在,我們來(lái)具體分析一下該圖形,看看它有什么樣的特點(diǎn),然后我們利用For循環(huán)將它的程序代碼編寫出來(lái)。

三、結(jié)束語(yǔ)

以上關(guān)于循環(huán)結(jié)構(gòu)的使用基本上都是在程序設(shè)計(jì)教學(xué)過(guò)程中的一些體會(huì)與總結(jié),可能比較膚淺,但是對(duì)于初學(xué)者來(lái)說(shuō),掌握這些知識(shí)還是有必要的。在進(jìn)行課程教學(xué)的過(guò)程中,將自己在學(xué)習(xí)過(guò)程中得到的一些好的方法傳授給學(xué)生,讓他們從中去實(shí)踐、體會(huì),從而引起他們更大的學(xué)習(xí)興趣是必要的。如何讓一名初學(xué)者盡快擺脫日常的思維定式,更加透徹地理解和掌握程序設(shè)計(jì)中的基本思想,領(lǐng)會(huì)程序設(shè)計(jì)的精髓,是高級(jí)語(yǔ)言程序設(shè)計(jì)這門課程在講授過(guò)程中,應(yīng)該時(shí)刻注意的問(wèn)題。更希望學(xué)生在學(xué)習(xí)的過(guò)程中不只是從老師這里拿一些現(xiàn)成的經(jīng)驗(yàn)去使用,更重要的是讓學(xué)生學(xué)會(huì)自己去發(fā)現(xiàn)問(wèn)題、解決問(wèn)題,總結(jié)出一些更好的程序設(shè)計(jì)方法,為以后進(jìn)行軟件開發(fā)與設(shè)計(jì)打下良好的基礎(chǔ)。

參考文獻(xiàn):

[1]譚浩強(qiáng).C程序設(shè)計(jì)(第三版)[M].清華大學(xué)出版社,2005.

[2]蘇運(yùn)霖.計(jì)算機(jī)程序設(shè)計(jì)藝術(shù)第1卷?基本算法[M].北京:國(guó)防工業(yè)出版社,2002.

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

篇2

摘要:本文在分析了C語(yǔ)言程序設(shè)計(jì)課程的教學(xué)現(xiàn)狀和教學(xué)困境的基礎(chǔ)上,對(duì)比自然語(yǔ)言和程序設(shè)計(jì)語(yǔ)言的共性以及C語(yǔ)言的特殊性,提出了“從概念入手,側(cè)重程序閱讀和程序設(shè)計(jì)能力培養(yǎng)”而非“語(yǔ)法研究”的教學(xué)角度。

關(guān)鍵詞:C語(yǔ)言;程序設(shè)計(jì);教學(xué)內(nèi)容;教學(xué)角度

中圖分類號(hào):G64 文獻(xiàn)標(biāo)識(shí)碼:A

1教學(xué)現(xiàn)狀

在高等學(xué)校的本科教育中,“C語(yǔ)言程序設(shè)計(jì)”幾乎成了所有專業(yè)的必開課程,從計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程、網(wǎng)絡(luò)工程等相關(guān)專業(yè),到電子信息類理工科各專業(yè),乃至理工科院校的所有非計(jì)算機(jī)專業(yè),有的是專業(yè)基礎(chǔ)課,有的是公共必修基礎(chǔ)課,有的是“非計(jì)算機(jī)專業(yè)的計(jì)算機(jī)基礎(chǔ)課”。只是課程名稍有差異,常見的有“C語(yǔ)言程序設(shè)計(jì)”、“高級(jí)語(yǔ)言程序設(shè)計(jì)”、“C語(yǔ)言”、“C程序設(shè)計(jì)”、“結(jié)構(gòu)化程序設(shè)計(jì)”等。無(wú)論叫什么樣的課程名,也無(wú)論是哪類專業(yè),其課程的教學(xué)要求和教材選用卻無(wú)太大差別,只是課時(shí)分配差異較大。

從網(wǎng)絡(luò)調(diào)查的16所不同類型高校的“C語(yǔ)言程序設(shè)計(jì)”教學(xué)大綱看,普遍都包含“通過(guò)本課程的學(xué)習(xí),使學(xué)生了解有關(guān)程序設(shè)計(jì)的基本概念、術(shù)語(yǔ)及C語(yǔ)言的特點(diǎn),掌握C語(yǔ)言基本數(shù)據(jù)類型、語(yǔ)法規(guī)則、程序控制結(jié)構(gòu)、常用的標(biāo)準(zhǔn)庫(kù)函數(shù),培養(yǎng)學(xué)生的程序設(shè)計(jì)技能,初步積累編程經(jīng)驗(yàn)”的教學(xué)基本要求;約百分之八十左右的“C語(yǔ)言程序設(shè)計(jì)”課程都選用由譚浩強(qiáng)主編、清華大學(xué)出版社出版的“C程序設(shè)計(jì)”作為主教材;課時(shí)分配從30~108課時(shí)不等,其中80課時(shí)以上的多為應(yīng)用型本科院校的計(jì)算機(jī)相關(guān)專業(yè)以及綜合性大學(xué)的非計(jì)算機(jī)專業(yè),理論課時(shí)與實(shí)驗(yàn)課時(shí)的比例一般為1:1到1:1.2。與此同時(shí),其他專業(yè)基礎(chǔ)課(如計(jì)算機(jī)組成原理、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)等)的課時(shí)一般為54課時(shí),最多不超過(guò)72學(xué)時(shí)。相比之下,“C語(yǔ)言程序設(shè)計(jì)”所占課時(shí)是其他專業(yè)基礎(chǔ)課的1.5倍至2倍。

從教學(xué)目的看,非計(jì)算機(jī)專業(yè)的“C語(yǔ)言程序設(shè)計(jì)”課程主要目的是“掌握語(yǔ)法規(guī)則和程序結(jié)構(gòu),具備一定的程序設(shè)計(jì)能力”,而計(jì)算機(jī)相關(guān)專業(yè)的“C語(yǔ)言程序設(shè)計(jì)”課的教學(xué)目的則要分為三個(gè)層次,一是使學(xué)生全面理解計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的基本內(nèi)容和結(jié)構(gòu);二是通過(guò)算法掌握程序設(shè)計(jì)的基本方法和步驟,并具備一定的程序設(shè)計(jì)能力;三是為后續(xù)課程的算法描述和其他程序設(shè)計(jì)語(yǔ)言的學(xué)習(xí)奠定基礎(chǔ)。

2教學(xué)誤區(qū)

從以上的教學(xué)現(xiàn)狀(特別是課時(shí)分配)看,長(zhǎng)期以來(lái),“C語(yǔ)言程序設(shè)計(jì)”的課程教學(xué)存在“教學(xué)內(nèi)容背離教學(xué)要求和教學(xué)目的”的誤區(qū),主要表現(xiàn)在教材誤區(qū)、講授誤區(qū)和考核誤區(qū)三個(gè)方面。

2.1教材誤區(qū)

國(guó)內(nèi)高校的“C語(yǔ)言程序設(shè)計(jì)”課大多選用譚浩強(qiáng)主編、清華大學(xué)出版社出版的“C程序設(shè)計(jì)”[1]為主教材,目前使用的是2005年7月修訂出版的第三版,教材共363頁(yè),主體內(nèi)容分為14章,其中,第3章的數(shù)據(jù)類型與表達(dá)式占用30頁(yè),第4章的格式輸入輸出占用12頁(yè),前9章共占用218頁(yè),后5章共占用145頁(yè)。占用如此大篇幅的原因是教材中除了介紹相關(guān)語(yǔ)法格式外,還增加了相當(dāng)多“特殊格式”和“特殊情況”的解釋和說(shuō)明,因此,該教材的最大優(yōu)點(diǎn)就是“內(nèi)容詳盡、解釋清晰”。然而,對(duì)于初學(xué)者來(lái)說(shuō),學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言就是為了“為計(jì)算機(jī)描述求解問(wèn)題的過(guò)程”,過(guò)于詳細(xì)但又遠(yuǎn)離現(xiàn)實(shí)問(wèn)題的“特殊格式”和“特殊情況”的解釋,使得學(xué)習(xí)內(nèi)容復(fù)雜化,增加了程序設(shè)計(jì)語(yǔ)言學(xué)習(xí)的難度,誤導(dǎo)了學(xué)習(xí)者的學(xué)習(xí)重點(diǎn),由此也賦予了該教材無(wú)法掩飾的缺點(diǎn),那就是教材編寫的指導(dǎo)思想和教材內(nèi)容的組織脫離了高校各專業(yè)“C語(yǔ)言程序設(shè)計(jì)”課程的教學(xué)目標(biāo),過(guò)分強(qiáng)調(diào)語(yǔ)法細(xì)節(jié)而忽略了程序設(shè)計(jì)語(yǔ)言的“正向表達(dá)能力”的應(yīng)用,過(guò)分強(qiáng)調(diào)“語(yǔ)言的靈活性”而導(dǎo)致教材主體內(nèi)容的“復(fù)雜化”,從而誤導(dǎo)“C語(yǔ)言程序設(shè)計(jì)”課程的教學(xué)內(nèi)容朝著“重語(yǔ)法學(xué)習(xí)、輕算法描述”的“語(yǔ)言研究”方向發(fā)展。

2.2講授誤區(qū)

由于教材內(nèi)容的“復(fù)雜”,課堂講授自然需要較多課時(shí),教學(xué)重點(diǎn)當(dāng)然也放在了“語(yǔ)法研究”上。從網(wǎng)上下載的“C程序設(shè)計(jì)(第三版)”的配套教學(xué)課件以及有關(guān)院校的“C語(yǔ)言程序設(shè)計(jì)”教學(xué)課件的內(nèi)容組織上可以清楚的給出以上判斷。“語(yǔ)法研究”型的課堂講授,更加放大了教材對(duì)“C語(yǔ)言程序設(shè)計(jì)”課程內(nèi)容的“扭曲”程度,給學(xué)生提供了錯(cuò)誤的程序設(shè)計(jì)語(yǔ)言學(xué)習(xí)方法,把簡(jiǎn)單問(wèn)題復(fù)雜化,更為嚴(yán)重的是,挫傷了學(xué)生學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的興趣和積極性,把本應(yīng)“主動(dòng)學(xué)習(xí)”的課程成引入了“被動(dòng)學(xué)習(xí)”的歧途,直接導(dǎo)致“懂語(yǔ)法、會(huì)做題,但不會(huì)編程序”的教學(xué)后果。

2.3考核誤區(qū)

多年來(lái),“C語(yǔ)言程序設(shè)計(jì)”的主體考試內(nèi)容就是“語(yǔ)法”,無(wú)論是選擇題、填空題還是程序閱讀題,大多都無(wú)法逃脫“語(yǔ)法”的束縛??荚嚪绞揭怨P試為主。這在某種程度上肯定了“語(yǔ)言研究”的教學(xué)角度,促使“C語(yǔ)言程序設(shè)計(jì)”的教學(xué)重點(diǎn)更向“語(yǔ)法研究”的方向傾斜,最終誤入“增加課時(shí),強(qiáng)化語(yǔ)法,還是不會(huì)編程序”的怪圈。

3應(yīng)有的教學(xué)角度

按照網(wǎng)上調(diào)查的各專業(yè)教學(xué)大綱中“培養(yǎng)具有一定程序設(shè)計(jì)能力”的教學(xué)目的,“C語(yǔ)言程序設(shè)計(jì)”課程的教學(xué)落腳點(diǎn)應(yīng)該更確切的理解為培養(yǎng)“能用程序設(shè)計(jì)語(yǔ)言描述求解問(wèn)題過(guò)程”的一般程序設(shè)計(jì)者,而不是造就“全面掌握程序設(shè)計(jì)語(yǔ)言語(yǔ)法、能設(shè)計(jì)高效、難懂程序”的程序設(shè)計(jì)語(yǔ)言方面的“作家”。因此,“C語(yǔ)言程序設(shè)計(jì)”課程教學(xué)相當(dāng)于自然語(yǔ)言中的“基本語(yǔ)言能力”教學(xué),而不是“語(yǔ)言研究”或“高級(jí)寫作”能力培養(yǎng)。

3.1自然語(yǔ)言與計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言

計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言是用人和計(jì)算機(jī)都能識(shí)別的方式描述計(jì)算機(jī)求解問(wèn)題過(guò)程的過(guò)程描述語(yǔ)言,它具有和人所使用的自然語(yǔ)言相同或相似的組成和結(jié)構(gòu)特點(diǎn),對(duì)于已經(jīng)掌握了至少一門自然語(yǔ)言(比如漢語(yǔ)或英語(yǔ))并具備一定文化程度的人來(lái)說(shuō),學(xué)習(xí)一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言并非難事。自然語(yǔ)言的基本組成包括符號(hào)集合、字、詞、句、數(shù)據(jù)及其運(yùn)算規(guī)則等基本要素,學(xué)習(xí)過(guò)程包括認(rèn)識(shí)符號(hào)、發(fā)音、識(shí)字、組詞、學(xué)語(yǔ)法并造句、學(xué)文法并寫短文、練習(xí)寫文章等基本階段,在具備了基本的語(yǔ)言能力之后,擴(kuò)充詞匯量和提高寫作能力將成為終身學(xué)習(xí)的基本內(nèi)容。按照自然語(yǔ)言的基本組成和學(xué)習(xí)過(guò)程,也可將計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的基本組成歸納為字符集、標(biāo)識(shí)符(常量、變量、保留字等)、數(shù)據(jù)類型、運(yùn)算符、表達(dá)式、語(yǔ)句、程序格式等基本要素,其中,字符集和數(shù)據(jù)類型是定義程序設(shè)計(jì)語(yǔ)言的基礎(chǔ),字符按一定規(guī)則組成標(biāo)識(shí)符,用來(lái)充當(dāng)常量名、變量名或其他標(biāo)識(shí),在自然語(yǔ)言中被人們公認(rèn)的特殊標(biāo)識(shí)符被賦予特定的語(yǔ)言含義,專門為語(yǔ)言系統(tǒng)所用(用戶不得再次定義其意義),稱為保留字;字符集中的特殊符號(hào)(如+、-、*、/)被賦予特定的運(yùn)算意義(如加、減、乘、除)稱為運(yùn)算符;不同數(shù)據(jù)類型的常量、變量用運(yùn)算符按一定規(guī)則連接起來(lái)組成的式子就構(gòu)成表達(dá)式;將特定的保留字與表達(dá)式等語(yǔ)言要素按照語(yǔ)法規(guī)則組合起來(lái)就形成相應(yīng)的語(yǔ)句;將語(yǔ)句按照要描述的求解問(wèn)題的邏輯順序排列起來(lái),就構(gòu)成了某種程序設(shè)計(jì)語(yǔ)言求解特定問(wèn)題的一段程序。

3.2C語(yǔ)言的特殊性

一方面,C語(yǔ)言是程序設(shè)計(jì)語(yǔ)言的一種,具備一般程序設(shè)計(jì)語(yǔ)言的基本組成要素和結(jié)構(gòu)特點(diǎn)。另一方面,C語(yǔ)言能成為面向過(guò)程的結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言的代表,也有其自身的特殊性。首先,C語(yǔ)言的數(shù)據(jù)類型極為豐富。除了基本數(shù)據(jù)類型外,還有構(gòu)造類型、指針類型、空類型和用戶自定義類型,其中,構(gòu)造類型包括數(shù)組、結(jié)構(gòu)體(struct)、共用體(union)和枚舉類型(enum)等四種數(shù)據(jù)結(jié)構(gòu)。其次,C語(yǔ)言具有位操作能力。除了能夠?qū)Ω黝愖兞窟M(jìn)行操作外,C語(yǔ)言還具備“按位”進(jìn)行邏輯“與”、“或”、“非”、“異或”運(yùn)算和“左”、“右”移位運(yùn)算,這使得C語(yǔ)言具備了更強(qiáng)的系統(tǒng)開發(fā)能力。第三,C語(yǔ)言具有顯著的結(jié)構(gòu)化程序設(shè)計(jì)能力,并通過(guò)完整的函數(shù)定義來(lái)實(shí)現(xiàn)。第四,C語(yǔ)言的最大特點(diǎn)就是“語(yǔ)法限制不嚴(yán),解釋靈活”。第五,C語(yǔ)言允許直接訪問(wèn)物理地址,可直接對(duì)硬件端口進(jìn)行操作。第六,C語(yǔ)言沒有輸入/輸出語(yǔ)句,信息輸入/輸出功能由標(biāo)準(zhǔn)函數(shù)庫(kù)中相應(yīng)的I/O函數(shù)來(lái)完成。

C語(yǔ)言的這些特殊性,決定了C語(yǔ)言的教、學(xué)過(guò)程不同于其他程序設(shè)計(jì)語(yǔ)言的教學(xué)過(guò)程。

3.3C語(yǔ)言的教學(xué)角度

根據(jù)一般程序設(shè)計(jì)語(yǔ)言的基本組成與結(jié)構(gòu)特點(diǎn),結(jié)合C語(yǔ)言的特殊性,“C語(yǔ)言程序設(shè)計(jì)”課程的教學(xué)角度應(yīng)該是:從介紹程序設(shè)計(jì)語(yǔ)言的基本概念入手,重點(diǎn)介紹語(yǔ)言的“正

向”設(shè)計(jì)功能而非“特殊格式”或“特殊語(yǔ)法”說(shuō)明,側(cè)重學(xué)生的程序閱讀和程序設(shè)計(jì)能力培養(yǎng),從教學(xué)內(nèi)容的廣度和深度兩個(gè)方面,恰當(dāng)把握教學(xué)角度。

“C語(yǔ)言程序設(shè)計(jì)”課程的內(nèi)容可分為三個(gè)基本模塊,教學(xué)過(guò)程從第一個(gè)模塊切入,逐漸擴(kuò)展到第二和第三個(gè)模塊。第一個(gè)模塊可稱為“程序設(shè)計(jì)語(yǔ)言公共模塊”,主要包括程序設(shè)計(jì)語(yǔ)言的基本概念、程序設(shè)計(jì)語(yǔ)言的基本要素(字符集、標(biāo)識(shí)符、常量變量以及保留字、基本數(shù)據(jù)類型、運(yùn)算符、表達(dá)式、語(yǔ)句與控制結(jié)構(gòu)、程序結(jié)構(gòu)以及程序書寫規(guī)范等)以及輸入/輸出格式等內(nèi)容;第二個(gè)模塊是C語(yǔ)言的主體,主要包括函數(shù)、數(shù)組、指針、文件等;第三個(gè)模塊是高級(jí)編程內(nèi)容,主要包括結(jié)構(gòu)體(struct)、共用體(union)、枚舉類型(enum)以及用戶自定義類型等。

在教學(xué)深度方面,各模塊的教學(xué)重點(diǎn)應(yīng)放在“規(guī)范的語(yǔ)法描述和直觀易懂而且正確的語(yǔ)義表述上”,避免涉及各種過(guò)細(xì)的“不符合人類閱讀習(xí)慣”的語(yǔ)義描述,暫時(shí)避開“特殊格式”或“特殊情況”的糾纏,擺脫“研究語(yǔ)法”的錯(cuò)誤向?qū)АT诖嘶A(chǔ)上,第一模塊的教學(xué)可與自然語(yǔ)言相比對(duì),通過(guò)學(xué)生已有的自然語(yǔ)言學(xué)習(xí)經(jīng)驗(yàn)和語(yǔ)言要素,使學(xué)生快速建立程序設(shè)計(jì)語(yǔ)言的基本概念,正確理解程序設(shè)計(jì)語(yǔ)言的基本要素及其關(guān)系,掌握基本語(yǔ)法和程序基本控制結(jié)構(gòu)(順序、選擇、循環(huán)),并通過(guò)算法歸納求解問(wèn)題的過(guò)程,正確理解算法不同描述方式(自然語(yǔ)言、傳統(tǒng)流程圖、N-S流程圖、偽代碼、程序設(shè)計(jì)語(yǔ)言)的作用和差異,特別是從“問(wèn)題”到“程序”的漸進(jìn)轉(zhuǎn)化過(guò)程,從而培養(yǎng)學(xué)生的基本程序設(shè)計(jì)能力。通過(guò)第二模塊的教學(xué),使學(xué)生明確函數(shù)、數(shù)組、指針、文件等概念和作用,掌握它們的定義和引用方法,能進(jìn)行相應(yīng)數(shù)據(jù)類型的編程,進(jìn)而掌握用函數(shù)定義的結(jié)構(gòu)化模塊程序設(shè)計(jì)的方法;通過(guò)第三個(gè)模塊的教學(xué),將程序的數(shù)據(jù)處理能力擴(kuò)展到結(jié)構(gòu)體、共用體、枚舉類型以及用戶自定義類型等復(fù)雜數(shù)據(jù)類型的處理上來(lái),通過(guò)恰當(dāng)?shù)睦討?yīng)用這些數(shù)據(jù)類型,向?qū)W生展示C語(yǔ)言強(qiáng)有力的數(shù)據(jù)表示和處理能力。

另外,可以將C語(yǔ)言中的“語(yǔ)法靈活性”和不同部分的各種“特殊情況”分類總結(jié),歸納整理成“語(yǔ)言參考手冊(cè)”等形式,以附錄的形式提供給學(xué)生,以便需要時(shí)“備查”。這樣既可節(jié)省教學(xué)課時(shí),又可向?qū)W生提供學(xué)習(xí)語(yǔ)言的主動(dòng)權(quán)。

3.4教學(xué)策略和方法

“C語(yǔ)言程序設(shè)計(jì)”屬語(yǔ)言類課程,教學(xué)過(guò)程充滿了逐步完善和熟練的基本特點(diǎn),因此,從教學(xué)安排的策略上要分重點(diǎn)、分階段逐步進(jìn)行,每個(gè)階段的教學(xué)方法應(yīng)該采用建立在一定基礎(chǔ)上的有重點(diǎn)的“部分教學(xué)法”,以核心內(nèi)容為基礎(chǔ),向外逐漸延伸,部分學(xué)習(xí),漸進(jìn)掌握。盡可能避免不分主次、不論難易、不顧急緩,盲目一次性掃清各類知識(shí)點(diǎn)的“地毯式”教授方法或?qū)W習(xí)方法,同時(shí)強(qiáng)調(diào)自學(xué)和上機(jī)驗(yàn)證,強(qiáng)化在特定環(huán)境下(如Turbo C++ 3.0)的程序設(shè)計(jì)訓(xùn)練,做到“精講多練[2]”,從小程序練起,逐漸過(guò)渡到求解較大或?qū)嶋H問(wèn)題的程序設(shè)計(jì)上來(lái)。

4結(jié)束語(yǔ)

從目前的教學(xué)現(xiàn)狀看,無(wú)論是計(jì)算機(jī)相關(guān)專業(yè),還是理工科的電子信息類專業(yè),乃至綜合性大學(xué)的非計(jì)算機(jī)專業(yè),“C語(yǔ)言程序設(shè)計(jì)”的課程教學(xué)均占有重要的教學(xué)地位,在全面提高教學(xué)質(zhì)量和教學(xué)效率的今天,不同類型專業(yè)結(jié)合自身優(yōu)勢(shì)和程序設(shè)計(jì)語(yǔ)言類課程的特點(diǎn),選擇合適的角度組織和實(shí)施“C語(yǔ)言程序設(shè)計(jì)”課程的教學(xué)活動(dòng)非常重要,而且很有必要。筆者的教學(xué)實(shí)踐證明,避開“語(yǔ)法研究”的程序設(shè)計(jì)教學(xué)不僅可減少課時(shí),更可提高學(xué)生利用程序設(shè)計(jì)語(yǔ)言“表述求解問(wèn)題過(guò)程”的能力。

參 考 文 獻(xiàn)

篇3

結(jié)構(gòu)程序化設(shè)計(jì)方法如下:

結(jié)構(gòu)化程序設(shè)計(jì)方法是按照模塊劃分原則以提高程序可讀性和易維護(hù)性、可調(diào)性和可擴(kuò)充性為目標(biāo)的一種程序設(shè)計(jì)方法。在結(jié)構(gòu)化的程序設(shè)計(jì)中,只允許三種基本的程序結(jié)構(gòu)形式,它們是順序結(jié)構(gòu)、分支結(jié)構(gòu)、(包括多分支結(jié)構(gòu))和循環(huán)結(jié)構(gòu),這三種基本結(jié)構(gòu)的共同特點(diǎn)是只允許有一個(gè)流動(dòng)入口和一個(gè)出口,僅有這三種基本結(jié)構(gòu)組成的程序稱為結(jié)構(gòu)化程序。結(jié)構(gòu)化程序設(shè)計(jì)適用于程序規(guī)模較大的情況,對(duì)于規(guī)模較小程序也可采用非結(jié)構(gòu)化程序設(shè)計(jì)方法。

(來(lái)源:文章屋網(wǎng) )

篇4

關(guān)鍵詞: 循環(huán)結(jié)構(gòu) C語(yǔ)言 程序設(shè)計(jì)

引言

順序、選擇、循環(huán)是結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu),所以在高級(jí)語(yǔ)言程序設(shè)計(jì)課程中,掌握這三種結(jié)構(gòu)是學(xué)好程序設(shè)計(jì)的基礎(chǔ)。循環(huán)結(jié)構(gòu)是這三者中最復(fù)雜的一種,幾乎所有的程序都離不開循環(huán),因此,熟練掌握循環(huán)結(jié)構(gòu)是程序設(shè)計(jì)的最基本的要求。在C語(yǔ)言中,循環(huán)結(jié)構(gòu)主要是由for和while、do-while語(yǔ)句實(shí)現(xiàn)的,其中for語(yǔ)句的應(yīng)用更為普遍一些。for語(yǔ)句的用法對(duì)于有程序設(shè)計(jì)經(jīng)驗(yàn)的學(xué)生來(lái)說(shuō)輕而易舉,但是對(duì)于那些沒有經(jīng)驗(yàn)的初學(xué)者來(lái)說(shuō)難度卻不小。本文從初學(xué)者的角度,闡述了C語(yǔ)言中循環(huán)結(jié)構(gòu)幾種典型應(yīng)用的實(shí)現(xiàn)方法。

一、用循環(huán)結(jié)構(gòu)實(shí)現(xiàn)幾何圖形

輸出簡(jiǎn)單的幾何圖形,是循環(huán)結(jié)構(gòu)的典型應(yīng)用之一。對(duì)于這一類型的題目,初學(xué)者往往直接采用一條或若干條輸出語(yǔ)句printf完成,這樣雖然可以完成題目要求,但是很顯然缺乏靈活性,不符合程序設(shè)計(jì)的思想。按照正常的程序設(shè)計(jì)思想,應(yīng)該先分析圖形的構(gòu)成,找出其中的規(guī)律:如圖1中的實(shí)心三角形,每一行由若干個(gè)空格、星號(hào)和一個(gè)回車換行符構(gòu)成,將行號(hào)、空格數(shù)和星號(hào)數(shù)分別設(shè)為i、m和n,則可形成表1:

*

***

*****

*******

*********

由表1可以得出,行號(hào)i與空格數(shù)m、星號(hào)數(shù)n有如下的數(shù)學(xué)關(guān)系:

m=5-i,n=2×i-1

則實(shí)心三角形的構(gòu)成規(guī)律可以描述為:第i行由(5-i)個(gè)空格和(2×i-1)個(gè)星號(hào)和一個(gè)回車符構(gòu)成。把行號(hào)i作為for語(yǔ)句的循環(huán)變量,則此程序中的循環(huán)部分如下:

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

{

/*輸出(5-i)個(gè)空格;*/

for(m=1;m<=5-i;m++)

printf(“”);

/*輸出(2*i-1)個(gè)星號(hào);*/

for(n=1;n<=2*i-1;n++)

printf(“*”);

/*輸出回車符;*/

printf(“\n”);

}

采用上面的方法,可以使學(xué)生很容易編寫出類似的程序,其中關(guān)鍵在于讓學(xué)生找出圖形中行號(hào)與每一行的空格數(shù)及星號(hào)數(shù)的關(guān)系。

二、循環(huán)結(jié)構(gòu)在數(shù)組中的應(yīng)用

在C語(yǔ)言中,for語(yǔ)句經(jīng)常與數(shù)組相結(jié)合,用于實(shí)現(xiàn)數(shù)組元素的賦值、輸入和輸出。對(duì)于初學(xué)者來(lái)說(shuō),更習(xí)慣于用順序結(jié)構(gòu)的語(yǔ)句來(lái)實(shí)現(xiàn)(如圖2左)。我們將圖2左的幾條語(yǔ)句作比較,可以看出在這5條語(yǔ)句中,不同的只有數(shù)組下標(biāo),那么就可以將這5條語(yǔ)句合并成一條for語(yǔ)句,將數(shù)組下標(biāo)換成for語(yǔ)句的循環(huán)變量i,而i的值從0增加到4。按照f(shuō)or語(yǔ)句的基本語(yǔ)法規(guī)則可以很容易寫出圖2右的for語(yǔ)句。

同樣,對(duì)于下面這個(gè)輸出二維數(shù)組元素的例子,也可以用上述方法實(shí)現(xiàn),不過(guò)轉(zhuǎn)換過(guò)程比上例要復(fù)雜一些:經(jīng)過(guò)對(duì)比圖3左側(cè)方框中順序結(jié)構(gòu)的12條語(yǔ)句,可以發(fā)現(xiàn)也是只有數(shù)組下標(biāo)在變化,但是由于是二維數(shù)組,行下標(biāo)和列下標(biāo)同時(shí)都在變化,很顯然不能直接用一條簡(jiǎn)單的for語(yǔ)句來(lái)實(shí)現(xiàn)。但是我們可以把這12條語(yǔ)句細(xì)分一下,3條語(yǔ)句為一組,而在同一組中的語(yǔ)句只有列下標(biāo)在變化,這時(shí)可以采用上例中的方法,將列下標(biāo)都用循環(huán)變量j來(lái)代替,得到圖3右上的形式。再次對(duì)比圖3右上的4條for語(yǔ)句,不同的是行下標(biāo),同樣用新的循環(huán)變量i來(lái)代替,合并后得到圖3右下最終二重for循環(huán)的語(yǔ)句。

三、循環(huán)結(jié)構(gòu)中的效率問(wèn)題

程序設(shè)計(jì)的初學(xué)者往往以完成題目要求的功能為目的,程序的執(zhí)行效率是最容易忽略的一個(gè)問(wèn)題。在循環(huán)結(jié)構(gòu)中,具體表現(xiàn)為循環(huán)體的執(zhí)行次數(shù)。例如,一個(gè)經(jīng)典的素?cái)?shù)判定問(wèn)題。在數(shù)學(xué)中素?cái)?shù)的定義為:素?cái)?shù)即指那些大于1,且除了1和它本身外,不能被其它任何數(shù)整除的數(shù)。根據(jù)這一定義,初學(xué)者很容易編寫出如下所示的程序段:

int isprime(int n)

{

int i;

for(i=2;i<n;i++)

if(n%i==0)return 0;

return 1;

}

上面的程序,完全可以實(shí)現(xiàn)題目要求的功能,初學(xué)者往往滿足于此。但是當(dāng)對(duì)for循環(huán)的執(zhí)行次數(shù)進(jìn)行分析時(shí),我們發(fā)現(xiàn):當(dāng)n不是素?cái)?shù)時(shí),沒有任何問(wèn)題;而當(dāng)n是素?cái)?shù)時(shí),循環(huán)體就要執(zhí)行(n-2)次,而實(shí)際上是不需要這么多次的。根據(jù)數(shù)學(xué)的知識(shí),可以將次數(shù)降為n/2或n的算術(shù)平方根,這樣可以大大減少循環(huán)體的執(zhí)行次數(shù),提高程序的效率。

程序的執(zhí)行效率是編程中時(shí)刻需要考慮的問(wèn)題,也是程序設(shè)計(jì)中的基本要求。這需要許多算法方面的知識(shí),對(duì)于初學(xué)者來(lái)說(shuō),要求可能過(guò)高,但是我們?cè)谥v授過(guò)程中要注意向?qū)W生灌輸這種思想,從學(xué)習(xí)之初就要打下良好的基礎(chǔ),尤其是類似上面例子中這樣顯而易見的情況,可以提醒學(xué)生在編制完一道程序以后,檢驗(yàn)一下,是否還有可優(yōu)化的地方,這對(duì)以后進(jìn)一步學(xué)習(xí)高級(jí)編程都是必要的。

如何讓一名初學(xué)者盡快擺脫日常的思維定式,更加透徹地理解和掌握程序設(shè)計(jì)中的基本思想,領(lǐng)會(huì)程序設(shè)計(jì)的精髓,是高級(jí)語(yǔ)言程序設(shè)計(jì)這門課程的講授過(guò)程中應(yīng)該時(shí)刻注意的問(wèn)題。希望本文能在這方面起到一點(diǎn)作用。

參考文獻(xiàn):

篇5

關(guān)鍵字:程序設(shè)計(jì)語(yǔ)言教學(xué)改革

中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2012)02(c)-0000-00

1 概述

計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,通常簡(jiǎn)稱為編程語(yǔ)言,是一組用來(lái)定義計(jì)算機(jī)程序的語(yǔ)法規(guī)則。它是一種被標(biāo)準(zhǔn)化的交流技巧,用來(lái)向計(jì)算機(jī)發(fā)出指令。

當(dāng)今計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言種類繁多、共性大、更新速度快,同時(shí)軟件工程和項(xiàng)目管理的蓬勃發(fā)展使得計(jì)算機(jī)軟件開發(fā)從業(yè)人員的職業(yè)分工更為明確。從人力資源與社會(huì)保障部頒布的“計(jì)算機(jī)程序設(shè)計(jì)員國(guó)家職業(yè)標(biāo)準(zhǔn)”上看,除了要求從業(yè)者必須要有扎實(shí)的基本功外,還要具備解決問(wèn)題的綜合能力。因此計(jì)算機(jī)程序設(shè)計(jì)員專業(yè)的學(xué)生在計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的知識(shí)和技能的學(xué)習(xí)中,不能再僅僅孤立地教授幾門編程語(yǔ)言、幾門相關(guān)的專業(yè)課程而已,而是要教會(huì)學(xué)生掌握通過(guò)計(jì)算機(jī)程序設(shè)計(jì)來(lái)解決實(shí)際問(wèn)題的知識(shí)和技能,成為一名合格的“軟件藍(lán)領(lǐng)”。這就要求我們不能延續(xù)傳統(tǒng)的學(xué)歷教育方法,計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言教學(xué)需要改革,需要一種全新的教學(xué)理念和模式。

當(dāng)前的教學(xué)改革更多的體現(xiàn)在教學(xué)方法和內(nèi)容上,“學(xué)習(xí)領(lǐng)域”、“任務(wù)驅(qū)動(dòng)”、“職業(yè)崗位導(dǎo)向”、“面向工作”等各種課程設(shè)計(jì)方法層出不窮。然而,縱觀大部分課程改革,我們發(fā)現(xiàn)其教學(xué)改革更多體現(xiàn)在獨(dú)立的課程中,并沒有在課程與課程的銜接上下功夫。大部分院校均先后開設(shè)VB、C、C++、JAVA等多門程序設(shè)計(jì)語(yǔ)言和數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫(kù)管理系統(tǒng)等專業(yè)課程,學(xué)生雖然學(xué)習(xí)了多門程序設(shè)計(jì)語(yǔ)言,然而每一門語(yǔ)言都只學(xué)了皮毛,每一門課程都學(xué)了基礎(chǔ),只能完成課堂和課后的作業(yè)和練習(xí),而對(duì)于能解決什么問(wèn)題,怎么解決問(wèn)題,如何綜合解決問(wèn)題一籌莫展,碰到問(wèn)題時(shí)往往覺得無(wú)從下手。

2 程序設(shè)計(jì)語(yǔ)言教學(xué)探索與改革:C語(yǔ)言學(xué)習(xí)三部曲

C語(yǔ)言是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言。它既有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn),同時(shí)很多新型的語(yǔ)言都是衍生自C語(yǔ)言,,掌握了C語(yǔ)言,經(jīng)過(guò)簡(jiǎn)單的再學(xué)習(xí),就可以用其他新型的語(yǔ)言去進(jìn)行程序開發(fā)了。因此,在計(jì)算機(jī)專業(yè)的課程中,只要把C語(yǔ)言學(xué)扎實(shí)了、學(xué)透了,就可以說(shuō)掌握了計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的精粹。在課程設(shè)計(jì)中,我們以C語(yǔ)言為主線,以一脈相承的C語(yǔ)言、C++語(yǔ)言、C#語(yǔ)言為基本知識(shí)內(nèi)容,配合上數(shù)據(jù)結(jié)構(gòu)、UML、數(shù)據(jù)庫(kù)等相關(guān)知識(shí)點(diǎn),提出語(yǔ)言知識(shí)入門、語(yǔ)言能力提高、語(yǔ)言技能應(yīng)用三個(gè)階段和應(yīng)用層次的“C語(yǔ)言學(xué)習(xí)三部曲”的課程改革方案。

第一階段:語(yǔ)言知識(shí)入門――C語(yǔ)言與數(shù)據(jù)結(jié)構(gòu)整合

1、課程知識(shí)要求:

1) 掌握C語(yǔ)言的基本語(yǔ)法,如數(shù)據(jù)類型,3種語(yǔ)句結(jié)構(gòu),數(shù)組,指針等。

2) 掌握數(shù)據(jù)基本結(jié)構(gòu)形式和操作,如線性結(jié)構(gòu),樹形結(jié)構(gòu),圖形結(jié)構(gòu),以及數(shù)據(jù)結(jié)點(diǎn)的查找、添加、刪除、排序等操作。

3) 掌握“自頂先下、逐步細(xì)化”的結(jié)構(gòu)化程序設(shè)計(jì)方法。

2、課程技能要求:

掌握如何用計(jì)算機(jī)解決日常問(wèn)題,特別是數(shù)據(jù)的表現(xiàn)形式和動(dòng)作行為的表現(xiàn)形式。

3、課程設(shè)計(jì)要點(diǎn):

將C語(yǔ)言和數(shù)據(jù)結(jié)構(gòu)進(jìn)行有機(jī)整合,特別是在講解C語(yǔ)言的數(shù)據(jù)類型時(shí)溶入數(shù)據(jù)結(jié)構(gòu)知識(shí),在講解C語(yǔ)言的語(yǔ)法結(jié)構(gòu)時(shí)溶入數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)操作知識(shí)。

4、課程目的:

通過(guò)該課程的學(xué)習(xí),要求學(xué)生掌握基本程序設(shè)計(jì)思想和理論,學(xué)會(huì)數(shù)據(jù)及數(shù)據(jù)處理由現(xiàn)實(shí)世界向計(jì)算機(jī)世界的轉(zhuǎn)換方法和過(guò)程,學(xué)會(huì)用計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言描述和解決日常生活中問(wèn)題。

第二階段:語(yǔ)言能力提高――C++語(yǔ)言與UML工具整合

1、課程知識(shí)要求:

1) 掌握C++語(yǔ)言的高級(jí)語(yǔ)法知識(shí)以及面向?qū)ο蟮母拍詈托问?,如面向?qū)ο蟮娜筇卣鳎悍庋b、繼承、多態(tài),以及模板等概念。

2) 掌握UML知識(shí),掌握利用UML工具(如ROSE)來(lái)進(jìn)行面向?qū)ο蟮姆治龊徒5姆椒ê瓦^(guò)程。

3) 掌握以“抽象與分類”為關(guān)鍵的面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。

2、課程技能要求:

掌握如何用計(jì)算機(jī)解決日常問(wèn)題,特別是以面向?qū)ο蟮姆椒▉?lái)分析和解決問(wèn)題。該課程要求學(xué)生在第一階段掌握了結(jié)構(gòu)化的設(shè)計(jì)方法后,進(jìn)一步了解面向?qū)ο蟪绦蛟O(shè)計(jì)方法。

3、課程設(shè)計(jì)要點(diǎn):

把C++語(yǔ)言和UML進(jìn)行有機(jī)的整合。將UML作為面向?qū)ο蟪绦蛟O(shè)計(jì)的分析和設(shè)計(jì)的工具,而將C++語(yǔ)言作為進(jìn)行面向?qū)ο蟪绦蛟O(shè)計(jì)的編程和實(shí)現(xiàn)工具。

4、課程目的:

通過(guò)該課程的學(xué)習(xí),要求學(xué)生掌握面向?qū)ο罄碚摚瑢W(xué)會(huì)面向?qū)ο蠓治觯∣OA)、面向?qū)ο笤O(shè)計(jì)(OOD)和面向?qū)ο缶幊蹋∣OP)方法和工具。

第三階段:語(yǔ)言技能應(yīng)用――C#語(yǔ)言與數(shù)據(jù)庫(kù)操作整合

1、課程知識(shí)要求:

1) 掌握C#語(yǔ)言的高級(jí)語(yǔ)法知識(shí)和軟件架構(gòu)知識(shí),如集合、委托、托管、、C/S與B/S架構(gòu)開發(fā)方法等。

2) 掌握數(shù)據(jù)庫(kù)操作知識(shí),如SQL語(yǔ)法、、XML等。

2、課程技能要求:

掌握多層架構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā)方法。,該課程要求學(xué)生在復(fù)習(xí)第二階段的面向?qū)ο蟮脑O(shè)計(jì)方法后,掌握開發(fā).Net應(yīng)用系統(tǒng)的方法,掌握將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中的方法,以及掌握對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢、添加、刪除等操作的方法和步驟。

3、課程設(shè)計(jì)要點(diǎn):

將C#語(yǔ)言與數(shù)據(jù)庫(kù)操作知識(shí)進(jìn)行有機(jī)整合,在講解用C#語(yǔ)言開發(fā)基于.Net的多層架構(gòu)應(yīng)用系統(tǒng)中,通過(guò)講解與LINQ將SQL溶入C#語(yǔ)言。

4、課程目的:

通過(guò)該課程的學(xué)習(xí),要求學(xué)生掌握C#語(yǔ)言和數(shù)據(jù)庫(kù)操作,掌握通用的企業(yè)級(jí)應(yīng)用系統(tǒng)的開發(fā)方法和過(guò)程。

3 結(jié)語(yǔ)

教育部部長(zhǎng)周濟(jì)在2008年度職業(yè)教育會(huì)議上說(shuō)到:“以改革創(chuàng)新為強(qiáng)大動(dòng)力,推動(dòng)職業(yè)教育又好又快發(fā)展”。職業(yè)教育的生存和發(fā)展,離不開教學(xué)改革和創(chuàng)新。在進(jìn)行計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言教學(xué)探索與研究中,我們通過(guò)走進(jìn)企業(yè),與企業(yè)軟件開發(fā)人員的進(jìn)行密切聯(lián)系與溝通,了解市場(chǎng)發(fā)展與需求等一系列調(diào)研后,提出了改革方案并付諸實(shí)施。實(shí)踐證明我們的改革思路是正確的,課程改革是卓有成效的。

參考文獻(xiàn)

[1] 譚浩強(qiáng),“C程序設(shè)計(jì)”[M],清華大學(xué)出版社

篇6

關(guān)鍵詞:Visual Basic;必修課;選修課;區(qū)別

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-7712 (2013) 06-0204-01

一、簡(jiǎn)介

隨著計(jì)算機(jī)科學(xué)和技術(shù)的發(fā)展,大學(xué)計(jì)算機(jī)課程的設(shè)置有了很大變化。大學(xué)計(jì)算機(jī)教學(xué)不再以基礎(chǔ)操作為主,而變?yōu)榛静僮?、?yīng)用軟件、程序設(shè)計(jì)、計(jì)算機(jī)原理等知識(shí)的綜合。為此本校在開設(shè)了Visual Basic(以下簡(jiǎn)稱VB)程序設(shè)計(jì)課程。但是,由于專業(yè)特點(diǎn),某些班級(jí)無(wú)法開設(shè)過(guò)多的計(jì)算機(jī)課程。為此,經(jīng)過(guò)與學(xué)校教務(wù)、學(xué)院、系等部門多次商定,本校的VB程序設(shè)計(jì)分為兩個(gè)層次。必修層次課時(shí)為54,包含28課時(shí)講授和26課時(shí)上機(jī)操作。選修課為36課時(shí),包含講授和上機(jī)操作各18課時(shí)。

二、教材與知識(shí)結(jié)構(gòu)分析

我校選擇的教材為高等教育出版社的《Visual Basic程序設(shè)計(jì)教程》(第3版)。選用該教材的原因是其內(nèi)容條理性好,適合非工科專業(yè)學(xué)習(xí)。有可能在短時(shí)間內(nèi)幫助學(xué)生建立起程序設(shè)計(jì)的基本概念,并能快速的解決實(shí)際問(wèn)題。從目錄看,該教材教學(xué)內(nèi)容條理清晰,從基礎(chǔ)開始由淺入深。其內(nèi)容分為10章,如表1。

從歷年的教學(xué)經(jīng)驗(yàn)看,對(duì)該教材的教學(xué)內(nèi)容分析如下。第1章作為與計(jì)算機(jī)文化基礎(chǔ)課程的銜接,介紹了VisualBasic6.0集成開發(fā)環(huán)境的使用。第2章介紹了面向?qū)ο缶幊痰幕靖拍睿侯?對(duì)象,屬性-事件-方法等。第3章介紹了VB語(yǔ)言的基本語(yǔ)法。一般認(rèn)為,這三章是該門課程的基礎(chǔ)性內(nèi)容,可以采用與文化基礎(chǔ)類似的教學(xué)手段,使用講授和驗(yàn)證性實(shí)驗(yàn)結(jié)合,幫助學(xué)生快速的學(xué)會(huì)集成開發(fā)環(huán)境的使用,并按照程序設(shè)計(jì)的五個(gè)步驟,完成并熟悉簡(jiǎn)單VB程序設(shè)計(jì)。

本書的第4章到第6章是核心內(nèi)容,具體講授了VB程序設(shè)計(jì)。其中第4章講授了順序、分支、循環(huán)三種基本的程序設(shè)計(jì)方法。第5章介紹了數(shù)組這一最基本的數(shù)據(jù)結(jié)構(gòu)。第6章則介紹了過(guò)程與函數(shù),將VB程序劃分為更細(xì)致的結(jié)構(gòu)。第7、8兩章的內(nèi)容相對(duì)獨(dú)立,可以認(rèn)為是對(duì)前面學(xué)習(xí)的總結(jié)。第7章介紹了界面設(shè)計(jì),第8章介紹了VB的基本輸入輸出。本書的最后兩章介紹了VB在圖形和數(shù)據(jù)庫(kù)兩方面的應(yīng)用。

三、授課計(jì)劃分析

對(duì)于涉及的8章教學(xué)內(nèi)容制定授課計(jì)劃如下。第1章,首先回顧計(jì)算機(jī)文化基礎(chǔ)課程中關(guān)于二進(jìn)制、編碼等知識(shí)。這些知識(shí)有助于學(xué)生進(jìn)一步認(rèn)識(shí)計(jì)算機(jī)中信息處理的方式,即所有信息數(shù)字化的方式。這樣充分利用基礎(chǔ)知識(shí),可以幫助學(xué)生快速的熟悉環(huán)境,降低進(jìn)一步學(xué)習(xí)的難度。第2章介紹面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,并利用最常見對(duì)象的屬性、時(shí)間和方法,給出了驗(yàn)證性的實(shí)驗(yàn)。通過(guò)簡(jiǎn)單的編程操作,完成輸入、輸出等任務(wù)。第3章講授表達(dá)式的書寫。通過(guò)量(包括變量和常量)、運(yùn)算符和函數(shù),將實(shí)際問(wèn)題轉(zhuǎn)換為表達(dá)式,然后由計(jì)算機(jī)求解。

接下來(lái)的4、5、6三章,是本課程的核心內(nèi)容。第4章的內(nèi)容被分為三部分,按照順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)組織,在三次講授中分別介紹具體內(nèi)容。在順序結(jié)構(gòu)中,介紹賦值語(yǔ)句、輸入/輸出語(yǔ)句。選擇結(jié)構(gòu)則以If和Select語(yǔ)句為主,介紹了最基本的二分支結(jié)構(gòu)程序設(shè)計(jì)和由此演變而來(lái)的單分支、多分支。這一部分著重提示學(xué)生,盡管程序書寫順序仍舊為從上到下,但是并不是每條語(yǔ)句都會(huì)執(zhí)行。通過(guò)動(dòng)畫演示程序根據(jù)不同的輸入,計(jì)算分段函數(shù)值。循環(huán)結(jié)構(gòu)則結(jié)合第5章的數(shù)組進(jìn)行介紹。指出“循環(huán)變量控制數(shù)組下標(biāo)”這一經(jīng)典組合可以解決大量的實(shí)際問(wèn)題。對(duì)于第4、5章剩余的部分則單獨(dú)利用課時(shí),講解組合框控件、程序調(diào)試等知識(shí)。因自定義類型與數(shù)據(jù)庫(kù)相關(guān),因此刪去不講。第6章則介紹過(guò)程與函數(shù)的概念,幫助學(xué)生建立對(duì)復(fù)雜問(wèn)題“分而治之”的原則,化簡(jiǎn)問(wèn)題方便求解。

在本課程的最后以“溫故而知新”的方式,幫助學(xué)生一邊回顧已有知識(shí),一邊豐富現(xiàn)有的程序。從軟件的界面的美化,到添加菜單、對(duì)話框等功能模塊,再到計(jì)算和處理問(wèn)題結(jié)果的保存。學(xué)生此時(shí)對(duì)以往知識(shí)進(jìn)行總結(jié),結(jié)合較為簡(jiǎn)單的內(nèi)容,進(jìn)一步豐富和鞏固程序設(shè)計(jì)的知識(shí)和技巧。

在選修層次的教學(xué)中,因?qū)W生選課時(shí),已經(jīng)要求有一定的程序設(shè)計(jì)學(xué)習(xí)經(jīng)驗(yàn)。經(jīng)過(guò)調(diào)查顯示,大部分學(xué)生是在自學(xué)了C/VB等語(yǔ)言后才來(lái)參加學(xué)習(xí),加之學(xué)生已經(jīng)對(duì)計(jì)算機(jī)基礎(chǔ)知識(shí)有一定的了解和掌握,因此在必修課程教學(xué)計(jì)劃的基礎(chǔ)上,刪除了對(duì)第1章和第2、3章部分內(nèi)容的講授。由于選修課課時(shí)分配為每周3課時(shí),因此這一部分內(nèi)容,在第1次講課時(shí)完成,并在第1次上機(jī)課加以操作驗(yàn)證。從歷年經(jīng)驗(yàn)看,效果尚可。接下來(lái)的三個(gè)單元,與必修課要求一致,分別介紹程序設(shè)計(jì)的三大結(jié)構(gòu)。剩余的兩個(gè)單元?jiǎng)t針對(duì)學(xué)生對(duì)閱讀程序、解決問(wèn)題的實(shí)際需求,加重講授第6章的內(nèi)容,并在最后讀取、演示大量的實(shí)際程序,幫助學(xué)生理解他人編寫的程序,并能從其中取長(zhǎng)補(bǔ)短,提高自己程序設(shè)計(jì)的水平。

篇7

2、線性表的定義:線性表的順序存儲(chǔ)結(jié)構(gòu)及其插入與刪除運(yùn)算。棧和隊(duì)列的定義;棧和隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)及其基本運(yùn)算。線性單鏈表、雙向鏈表與循環(huán)鏈表的結(jié)構(gòu)及其基本運(yùn)算。

3、樹的基本概念:二叉樹的定義及其存儲(chǔ)結(jié)構(gòu);二叉樹的前序、中序和后序遍歷。順序查找與二分法查找算法;基本排序算法(交換類排序,選擇類排序,插入類排序)。

4、程序設(shè)計(jì)基礎(chǔ):程序設(shè)計(jì)方法與風(fēng)格。結(jié)構(gòu)化程序設(shè)計(jì)。面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,對(duì)象,方法,屬性及繼承與多態(tài)性。

5、軟件工程基礎(chǔ):軟件工程基本概念,軟件生命周期概念,軟件工具與軟件開發(fā)環(huán)境。結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,數(shù)據(jù)字典,軟件需求規(guī)格說(shuō)明書。結(jié)構(gòu)化設(shè)計(jì)方法,總體設(shè)計(jì)與詳細(xì)設(shè)計(jì)。

6、軟件測(cè)試的方法:白盒測(cè)試與黑盒測(cè)試,測(cè)試用例設(shè)計(jì),軟件測(cè)試的實(shí)施,單元測(cè)試、集成測(cè)試和系統(tǒng)測(cè)試。程序的調(diào)試,靜態(tài)調(diào)試與報(bào)考調(diào)試。

7、數(shù)據(jù)庫(kù)設(shè)計(jì)基礎(chǔ):數(shù)據(jù)庫(kù)的基本概念:數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)管理系統(tǒng),數(shù)據(jù)庫(kù)系統(tǒng)。數(shù)據(jù)模型,實(shí)體聯(lián)系模型及 E-R 圖,從 E-R 圖導(dǎo)出關(guān)系數(shù)據(jù)模型。

篇8

關(guān)鍵詞:C語(yǔ)言;程序設(shè)計(jì);學(xué)習(xí)方法;學(xué)習(xí)興趣

中圖分類號(hào):TP312.1-4

《C語(yǔ)言程序設(shè)計(jì)》是計(jì)算機(jī)專業(yè)的一門核心專業(yè)基礎(chǔ)課程,是專升本、考研和等級(jí)水平考試的必考科目,也是學(xué)生學(xué)習(xí)中感到比較吃力的一門課。那么,如何學(xué)習(xí)《C語(yǔ)言程序設(shè)計(jì)》這門課程呢?現(xiàn)根據(jù)自己多年在教學(xué)中的體會(huì),談一些粗淺的認(rèn)識(shí)。

1 為什么要學(xué)習(xí)《C語(yǔ)言程序設(shè)計(jì)》

《C語(yǔ)言程序設(shè)計(jì)》是用C語(yǔ)言來(lái)編寫程序的,每個(gè)程序員在他們的編程生涯中都應(yīng)該學(xué)習(xí)C語(yǔ)言,因?yàn)樗刑嚯y以忽視的好處了。除了它會(huì)給你提供更多的工作機(jī)會(huì)之外,C語(yǔ)言還會(huì)教給你更多的關(guān)于計(jì)算機(jī)的知識(shí)。它的好處如下:

1.1 C語(yǔ)言是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言

它既具有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn),既可以用來(lái)編寫系統(tǒng)軟件,又可以用來(lái)編寫應(yīng)用軟件。它不僅具有繪圖能力強(qiáng),還具備很強(qiáng)的數(shù)據(jù)處理能力,因此也適于編寫三維,二維圖形和動(dòng)畫。

1.2 C語(yǔ)言具有功能強(qiáng)大、使用靈活、豐富的數(shù)據(jù)類型和運(yùn)算符、結(jié)構(gòu)化的控制語(yǔ)句、目標(biāo)代碼運(yùn)行效率高、適用范圍大、可移植性好等優(yōu)點(diǎn)。

1.3 C語(yǔ)言是各大操作系統(tǒng)的基礎(chǔ),Unix、Linux、Windows其內(nèi)核都清一色是C語(yǔ)言開發(fā)的,(某些地方是和匯編語(yǔ)言混合開發(fā)的),還有各種語(yǔ)言的編譯器,包括java虛擬機(jī),各種嵌入式設(shè)備,如手機(jī)、PDA等都是C語(yǔ)言開發(fā)的。

1.4 C語(yǔ)言是基礎(chǔ),如果你學(xué)習(xí)過(guò)C語(yǔ)言,你就能學(xué)習(xí)現(xiàn)在任何的高級(jí)編程語(yǔ)言

因?yàn)樗械母呒?jí)語(yǔ)言都是以C語(yǔ)言為基礎(chǔ)的(像JAVA,C++,C#等等)。C語(yǔ)言學(xué)好了,將來(lái)想學(xué)其他的語(yǔ)言,就比較好入門了。

2 如何學(xué)習(xí)《C語(yǔ)言程序設(shè)計(jì)》

2.1 克服畏難心理,充滿自信的學(xué)習(xí)《C語(yǔ)言程序設(shè)計(jì)》

大多數(shù)學(xué)生一看到《C語(yǔ)言程序設(shè)計(jì)》課程的教材,就有畏難的情緒,覺得C語(yǔ)言難學(xué),學(xué)不會(huì),因?yàn)樗麄儗?duì)計(jì)算機(jī)語(yǔ)言不了解,另外有些英語(yǔ)差的同學(xué),看到計(jì)算機(jī)編程是用英語(yǔ)編寫的,就未學(xué)先棄了。其實(shí)學(xué)習(xí)語(yǔ)言并沒有他們想象的那么難,英語(yǔ)差也對(duì)學(xué)習(xí)計(jì)算機(jī)語(yǔ)言影響不大,比如學(xué)C語(yǔ)言,真正要記的關(guān)鍵字不多,語(yǔ)法也不復(fù)雜,只要大家不帶著畏難的心理,充滿自信,一定能學(xué)好的。

2.2 要明確《C語(yǔ)言程序設(shè)計(jì)》的學(xué)習(xí)目的

通過(guò)《C語(yǔ)言程序設(shè)計(jì)》課程的學(xué)習(xí),掌握C語(yǔ)言基本知識(shí),掌握程序設(shè)計(jì)的基本方法并逐步形成正確的程序設(shè)計(jì)思想,能夠熟練運(yùn)用基本程序結(jié)構(gòu)解決簡(jiǎn)單問(wèn)題,理解模塊化程序設(shè)計(jì)原則并能熟練使用C語(yǔ)言進(jìn)行程序設(shè)計(jì),具備調(diào)試程序的能力,為后繼課程及其他程序設(shè)計(jì)課程的學(xué)習(xí)和應(yīng)用打下基礎(chǔ)。

2.3 要明白《C語(yǔ)言程序設(shè)計(jì)》與一般的計(jì)算機(jī)操作課程有所不同

《C語(yǔ)言程序設(shè)計(jì)》是計(jì)算機(jī)的一門軟件編程課程,是用C語(yǔ)言來(lái)編寫程序的,它具有難度性、抽象性、連續(xù)性和邏輯嚴(yán)密性。如果你第一次課來(lái)聽了,第二次課沒來(lái),第三次課很可能就聽不懂了。比如,第一次課講的是數(shù)字1,2,3,4……,第二次課講的是運(yùn)算符號(hào)+,-,*,/,第三次課老師讓你算1+2=?,如果你前兩次課都來(lái)聽了,那么你就能算出它的結(jié)果,否則你就算不出它的結(jié)果。因此,如果要想學(xué)好《C語(yǔ)言程序設(shè)計(jì)》,必須堅(jiān)持每次課都來(lái),如果那天確實(shí)不能來(lái),就應(yīng)在家自學(xué),不懂的地方應(yīng)及時(shí)向老師請(qǐng)教,一定不能落課。

2.4 要整體把握《C語(yǔ)言程序設(shè)計(jì)》

C語(yǔ)言是一種通用的程序設(shè)計(jì)語(yǔ)言,在開發(fā)系統(tǒng)軟件和應(yīng)用軟件中得到廣泛的應(yīng)用,已成為當(dāng)今計(jì)算機(jī)世界最流行的語(yǔ)言之一。C語(yǔ)言是一個(gè)整體,各個(gè)方面是有機(jī)聯(lián)系的,要從總體上把握它,不要把它割裂成互不關(guān)聯(lián)的部件。它包括C語(yǔ)言概述、數(shù)據(jù)類型(整型、實(shí)型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型、共用體類型等)、運(yùn)算符和表達(dá)式、流程控制語(yǔ)句、函數(shù)、數(shù)組、字符與字符串、指針、結(jié)構(gòu)體、文件等。通過(guò)《C語(yǔ)言程序設(shè)計(jì)》的學(xué)習(xí),掌握程序設(shè)計(jì)的基本概念、基本思想、基本方法和基本技能,進(jìn)而學(xué)會(huì)利用C語(yǔ)言解決實(shí)際問(wèn)題,培養(yǎng)計(jì)算機(jī)程序設(shè)計(jì)的能力和素質(zhì),以及思維方法,為以后學(xué)習(xí)其它計(jì)算機(jī)程序語(yǔ)言和后續(xù)的專業(yè)課程打下基礎(chǔ)。

簡(jiǎn)單的C程序是由主函數(shù)和函數(shù)體兩大部分組成。它的基本框架如下:

main()

{

}

其中main表示“主函數(shù)”。每一個(gè)C程序都必須有一個(gè)main函數(shù),而且只能有一個(gè)main函數(shù),它表示程序從這里開始執(zhí)行。由花括號(hào)“{ }”括起的部分是函數(shù)體。其中函數(shù)體又包括定義變量、變量賦值、函數(shù)調(diào)用、輸出打印等。

例:一個(gè)簡(jiǎn)單的求和程序

main() /*主函數(shù)*/

{

int a,b,sum; /*定義變量*/

a=123;b=456; /*變量賦值*/

sum=a+b; /*求兩數(shù)之和*/

printf(“sum is %d\n”,sum); /*輸出和值*/

}

這是一個(gè)簡(jiǎn)單的求和程序。/*...*/表示注釋部分,只給人看的,對(duì)編譯和運(yùn)行不起作用。第3行是聲明部分,定義變量a、b、sum,指定a、b、sum為整型(int)變量。第4行是兩個(gè)賦值語(yǔ)句,使a和b的值分別為123和456。第5行使sum的值為a+b,第6行中“%d”是輸入輸出的“格式字符串”,用來(lái)指定輸入輸出時(shí)的數(shù)據(jù)類型和格式,“%d”表示“以十進(jìn)制整數(shù)形式輸出”。Printf函數(shù)中括弧內(nèi)最右端sum是要輸出的變量,現(xiàn)在它的值為579(即123+456之值)。因此輸出一行信息為:

sum is 579

從這個(gè)例子可以看出,想要把《C語(yǔ)言程序設(shè)計(jì)》這門課學(xué)好,不僅要知道《C語(yǔ)言程序設(shè)計(jì)》的基本框架,還要學(xué)好函數(shù)體中的內(nèi)容(變量類型、定義變量、變量賦值、輸入輸出格式字符串、輸入輸出函數(shù)格式、調(diào)用函數(shù)等)。另外還要學(xué)好C語(yǔ)言的運(yùn)算符、運(yùn)算順序 、四種程序結(jié)構(gòu)(順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、模塊化程序結(jié)構(gòu) )、掌握一些簡(jiǎn)單的算法等。

2.5 熟練C程序的上機(jī)步驟

在編好一個(gè)C源程序后,如何上機(jī)運(yùn)行呢?要經(jīng)過(guò)編輯、編譯、連接和運(yùn)行四個(gè)步驟。

(1)編輯源文件。在編輯(Edit)狀態(tài)下輸入或修改源程序。

(2)編譯源程序。選擇“C編譯”菜單并選擇“編譯到OBJ”,進(jìn)行編譯,得到一個(gè)后綴為.obj的目標(biāo)程序。

(3)然后再選擇菜單“L連接EXE文件”,進(jìn)行連接操作,可得到一個(gè)后綴為.exe的可執(zhí)行文件。

(4) 運(yùn)行程序。在“RUN”菜單中選擇“R運(yùn)行程序”項(xiàng),或直接按Ctr+F9鍵,系統(tǒng)就會(huì)運(yùn)行已編譯好的可執(zhí)行目標(biāo)文件。此時(shí),TC集成環(huán)境窗口消失,屏幕上顯示出程序運(yùn)行的結(jié)果。如果程序需要輸入數(shù)據(jù),則應(yīng)在此時(shí),從鍵盤輸入所需數(shù)據(jù),然后程序會(huì)接著執(zhí)行,輸出結(jié)果。

2.6 要加強(qiáng)編程訓(xùn)練

《C語(yǔ)言程序設(shè)計(jì)》是實(shí)踐性非常強(qiáng)的課程,要求學(xué)員要理論聯(lián)系實(shí)際,在掌握C語(yǔ)言的基本語(yǔ)法和基本知識(shí)后,重點(diǎn)應(yīng)放在提高編程能力的訓(xùn)練上。根據(jù)學(xué)生學(xué)習(xí)的認(rèn)知特點(diǎn),我認(rèn)為主要應(yīng)從以下幾個(gè)方面進(jìn)行強(qiáng)化訓(xùn)練:

(1)吃透課本例子。每學(xué)完一次新課,讓學(xué)生對(duì)課本例子先分析任務(wù)、再仔細(xì)閱讀程序,然后按書上的源代碼敲出來(lái),編譯執(zhí)行輸出結(jié)果,如果結(jié)果跟書上一致就算完成,如果不一致,就要仔細(xì)找原因。再后不看書自己編寫代碼與課本對(duì)照,找出自己的不足,然后改進(jìn)。最后在此例的基礎(chǔ)上自己加以改造,舉一反三,變?yōu)槠渌睦?,如此反?fù)練習(xí),不僅培養(yǎng)了學(xué)生動(dòng)腦思考的習(xí)慣,而且養(yǎng)成了遇事三思、認(rèn)真、周密的作風(fēng)。

(2)精選上機(jī)題目,要求調(diào)試通過(guò)。每章找出一個(gè)或兩個(gè)綜合性的具有代表性的應(yīng)用題目,如編寫一個(gè)程序,計(jì)算一個(gè)整數(shù)的名位數(shù)字之和;用選擇法對(duì)數(shù)組中10個(gè)整數(shù),按由小到大的順序進(jìn)行排序等,要求用C語(yǔ)言編寫可執(zhí)行的源程序,上機(jī)調(diào)試。這樣不僅鍛煉了學(xué)生解決實(shí)際問(wèn)題的能力,更重要的是激發(fā)了學(xué)生學(xué)習(xí)課程的興趣,抽象變具體 ,理論變實(shí)踐,對(duì)這門課有了更深的認(rèn)識(shí)。

(3)閱讀填空法。找一些經(jīng)典程序,配上必要的說(shuō)明,適當(dāng)去掉語(yǔ)句或表達(dá)式,讓學(xué)生通過(guò)閱讀填補(bǔ)空白,訓(xùn)練學(xué)生的程序設(shè)計(jì)能力。例編寫一個(gè)程序,輸入月份號(hào),輸出月的英文月名,還有求和、排序、報(bào)號(hào)等。

(4)準(zhǔn)備一個(gè)經(jīng)驗(yàn)本,記下C語(yǔ)言重要的語(yǔ)法和知識(shí)點(diǎn),還有自己出錯(cuò)的解決方法及老師講解的其他同學(xué)出現(xiàn)的常見錯(cuò)誤,抽空常翻看,逐步積累經(jīng)驗(yàn),加深印象,使以后避免。

(5)帶著作業(yè)去上機(jī)。每次理論課結(jié)束后,老師都會(huì)給學(xué)生布置一些作業(yè)(如習(xí)題)讓學(xué)生做,那么學(xué)生一定要認(rèn)認(rèn)真真的把作業(yè)完成好,先把程序編寫在作業(yè)本上,上機(jī)時(shí)再把這些程序敲到計(jì)算機(jī)上,進(jìn)行修改、調(diào)試、運(yùn)行,最后輸出結(jié)果。如果學(xué)生不帶作業(yè)去上機(jī),第一次老師警告下次一定帶作業(yè)上機(jī),如果第二次還沒帶作業(yè),不準(zhǔn)學(xué)生進(jìn)機(jī)房,讓學(xué)生到教室把作業(yè)做完后再到機(jī)房上機(jī)調(diào)試。有人說(shuō)學(xué)生可以直接在機(jī)器上編寫程序,固然沒錯(cuò),但對(duì)于初學(xué)者來(lái)說(shuō),如果在機(jī)器上邊思考邊編寫,也就是說(shuō)想一句編一句,再想一句再編一句,這樣太浪費(fèi)時(shí)間,一節(jié)課說(shuō)不定連一個(gè)程序都編不好,所以老師一定要求學(xué)生在課下把程序編好,上機(jī)只需把程序敲出來(lái)進(jìn)行修改、調(diào)試、運(yùn)行,這樣能節(jié)約大量的時(shí)間,學(xué)生上機(jī)時(shí)間本身都是有限的。

上述方法在教學(xué)實(shí)踐中證明是行之有效的,學(xué)生對(duì)問(wèn)題分析、程序設(shè)計(jì)的自覺性和能動(dòng)性得到提高,動(dòng)手能力加強(qiáng),對(duì)后繼課如《C++》、《面向?qū)ο蟪绦蛟O(shè)計(jì)》等,學(xué)習(xí)起來(lái)倍感輕松,較好地完成了該門課程的學(xué)習(xí)目標(biāo)??傊?,實(shí)踐出真知,多學(xué)、多練、多思、多交流,勤奮好學(xué)才能學(xué)成。

參考文獻(xiàn):

[1]嚴(yán)桂蘭.C語(yǔ)言程序設(shè)計(jì)與應(yīng)用教程[M].福建:廈門大學(xué)出版社,2001.

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

[3]陳東.計(jì)算機(jī)多媒體教學(xué)改革的一些嘗試[J].福建師范大學(xué)學(xué)報(bào)(自然版),2004,20(3):98.

[4]王蘭.學(xué)好《C程序設(shè)計(jì)》的幾點(diǎn)建議[J].科技信息,2007(9).

推薦期刊