摘要:從計(jì)算機(jī)專業(yè)課程體系角度出發(fā),結(jié)合高校高級(jí)程序設(shè)計(jì)語(yǔ)言的現(xiàn)狀和本校計(jì)算機(jī)與通信工程學(xué)院“卓越工程師計(jì)劃”的實(shí)施,以及在本校計(jì)算機(jī)與通信工程學(xué)院和軟件學(xué)院對(duì)本課程體系結(jié)構(gòu)進(jìn)行的改革創(chuàng)新,提出C語(yǔ)言與計(jì)算機(jī)相關(guān)課程的融合教學(xué)和融合實(shí)踐理念。經(jīng)過(guò)4年的檢驗(yàn)與論證,新的融合教學(xué)和融合實(shí)踐兩個(gè)環(huán)節(jié)都取得非常好的效果,加強(qiáng)計(jì)算機(jī)各課程之間的聯(lián)系,對(duì)培養(yǎng)學(xué)生的自學(xué)與綜合能力有積極作用。
關(guān)鍵詞:C語(yǔ)言;課程體系;融合教學(xué);融合實(shí)踐;卓越工程師計(jì)劃;ACM/ICPC
C語(yǔ)言程序設(shè)計(jì)既是高等學(xué)校一門重要的公共基礎(chǔ)課程,也是計(jì)算機(jī)專業(yè)的一門專業(yè)基礎(chǔ)課。由于邏輯性和實(shí)踐性強(qiáng),使該課程的教學(xué)和實(shí)踐存在一些誤區(qū),主要表現(xiàn)如下。
1) 學(xué)生不清楚本專業(yè)的特點(diǎn)。多數(shù)高校將本課程安排在大一的第一學(xué)期,由于對(duì)于本專業(yè)的課程體系了解不夠,導(dǎo)致新生對(duì)各專業(yè)特點(diǎn)混淆不清,有的學(xué)生去報(bào)考計(jì)算機(jī)等級(jí)考試,結(jié)果有的還不如非計(jì)算機(jī)專業(yè)的學(xué)生,致使一些學(xué)生學(xué)習(xí)消沉。我們通過(guò)和學(xué)生談心,得知不只是大一有這種現(xiàn)象,大二的學(xué)生甚至也存在這種心理[1]。
2) 學(xué)生學(xué)習(xí)本課程目的不明確,興趣不高。在教學(xué)中,有不少學(xué)生問(wèn),既然C#和Java是現(xiàn)在的主流編程語(yǔ)言,為什么還要讓我們學(xué)習(xí)C語(yǔ)言?所以我們?cè)诘谝惶谜n介紹計(jì)算機(jī)語(yǔ)言發(fā)展時(shí),將C語(yǔ)言和其他語(yǔ)言作比較,強(qiáng)調(diào)C語(yǔ)言是當(dāng)前程序員共同的語(yǔ)言,它使程序員互相溝通,比流行語(yǔ)言都更接近機(jī)器。C語(yǔ)言更適合解決某些小型程序的編程,在編寫底層的設(shè)備驅(qū)動(dòng)程序和內(nèi)嵌應(yīng)用程序時(shí),往往是更好的選擇。有了C的基礎(chǔ),在需要時(shí)進(jìn)一步學(xué)習(xí)其他語(yǔ)言,也是很容易過(guò)渡的。當(dāng)然,第一堂課上,我們把重點(diǎn)放在培養(yǎng)學(xué)生的興趣上,所以會(huì)用1個(gè)學(xué)時(shí)去展示歷年實(shí)訓(xùn)的優(yōu)秀作品,這些作品都是完整的系統(tǒng),除了包涵基礎(chǔ)知識(shí),還有高級(jí)技術(shù)。我們向?qū)W生灌輸學(xué)習(xí)這門課程的境界:Beginner—Advanced—Professional。
3) 任課教師對(duì)課程的定位、理解和把握不夠。老師只有有一桶水,才能教給學(xué)生一碗水,教得了學(xué)生不等于教得好學(xué)生,學(xué)生的評(píng)教正說(shuō)明了此問(wèn)題。
通過(guò)實(shí)踐,我們對(duì)計(jì)算機(jī)專業(yè)本課程教師的要求是:“復(fù)合型”的教師——既要精通這門課程,還要有3年以上實(shí)際項(xiàng)目開發(fā)經(jīng)驗(yàn),并且非常熟悉計(jì)算機(jī)其他學(xué)科的知識(shí),而“教師的成功在于培養(yǎng)出值得自己崇拜的人[2]”。
因此,我們對(duì)本課程的定位是,以程序設(shè)計(jì)為中心,掌握語(yǔ)法,了解算法,重在算法的實(shí)現(xiàn)——編程。算法是靈魂,語(yǔ)法是基礎(chǔ),編程是中心。處理好三者的關(guān)系,直接決定了教學(xué)的成敗。
算法盡管重要,但本課程不是算法設(shè)計(jì)課程,不可能過(guò)多地介紹算法,更不是在研究算法。我們要在學(xué)生學(xué)習(xí)編程的過(guò)程中,介紹相關(guān)的典型算法,引導(dǎo)學(xué)生面對(duì)問(wèn)題去思考如何構(gòu)造算法,編寫程序的過(guò)程本身就是設(shè)計(jì)算法的過(guò)程。
為此,我們對(duì)本課程體系進(jìn)行了改革,并將本課程與計(jì)算機(jī)其他學(xué)科進(jìn)行了融合教學(xué)與實(shí)踐,取得了非常好的效果。
1課程體系的改革
1) 修改教學(xué)環(huán)節(jié)。
我們把原計(jì)劃一學(xué)期的教學(xué)時(shí)間調(diào)整為一學(xué)年。第一學(xué)期進(jìn)行C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)的教學(xué),第二學(xué)期進(jìn)行C語(yǔ)言程序設(shè)計(jì)的進(jìn)階教學(xué),在學(xué)年末進(jìn)行該門課的實(shí)訓(xùn),接著的暑假進(jìn)行校外實(shí)習(xí)。根據(jù)不同專業(yè),我們還開了小學(xué)期,在小學(xué)期里有連續(xù)12周的實(shí)驗(yàn)環(huán)節(jié)。
2) 修訂培養(yǎng)計(jì)劃和大綱,改革考核方式。
我們把本課程的教學(xué)改革與本學(xué)院的“卓越工程師計(jì)劃”相結(jié)合,組織教師外出考察、研討,然后重新修訂了培養(yǎng)計(jì)劃、教學(xué)大綱、實(shí)驗(yàn)大綱、實(shí)訓(xùn)大綱、實(shí)習(xí)大綱。相應(yīng)地,考核方式也作了調(diào)整:基礎(chǔ)教學(xué)由筆試轉(zhuǎn)向機(jī)試,試題難度高于非計(jì)算機(jī)專業(yè)的等級(jí)考試,每次考試的題庫(kù)都將重新命題和審閱。進(jìn)階教學(xué)由考試轉(zhuǎn)向完成3 000行以上大作業(yè)形式的考查,實(shí)訓(xùn)由過(guò)去的全班一個(gè)模擬題目轉(zhuǎn)向提供多個(gè)實(shí)際驗(yàn)收簽定過(guò)的項(xiàng)目,進(jìn)行C版本的再次開發(fā),實(shí)習(xí)由過(guò)去的只是到實(shí)習(xí)基地參觀調(diào)整為直接進(jìn)企業(yè)拜師跟班學(xué)習(xí)。
3) 豐富配套的教學(xué)資源。
我校組織編寫了《C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)及進(jìn)階教程》,被評(píng)為“十一五”國(guó)家級(jí)規(guī)劃教材,已于2010年由清華大學(xué)出版社出版發(fā)行。我們還配套編印了上機(jī)實(shí)驗(yàn)的實(shí)踐教程(將在今年教材的第二版時(shí)一并出版),以及實(shí)訓(xùn)時(shí)的實(shí)訓(xùn)教材和實(shí)習(xí)的實(shí)習(xí)教程,并建設(shè)了精品課程在線學(xué)習(xí)平臺(tái),供師生討論和交流。制作了與教材配套的課件與教案,供教學(xué)參考。
我們專門搭建了學(xué)校ACM/ICPC在線測(cè)評(píng)平臺(tái),并組建了容納120人的競(jìng)賽專用機(jī)房,成立了ACM/ICPC競(jìng)賽班。2008年起,河南省計(jì)算機(jī)學(xué)會(huì)主辦一年一次的河南省大學(xué)生程序設(shè)計(jì)競(jìng)賽,我們每年都組隊(duì)參加,在過(guò)去的三屆競(jìng)賽上,共獲得4枚金獎(jiǎng)、2枚銀獎(jiǎng)、1枚銅獎(jiǎng)。2009年參加亞洲區(qū)賽現(xiàn)場(chǎng)賽獲得優(yōu)秀獎(jiǎng)。2010年參加第35屆亞洲區(qū)賽,通過(guò)預(yù)賽,獲得天津賽區(qū)、杭州賽區(qū)和成都賽區(qū)的決賽資格,并在成都賽區(qū)獲得1枚銅牌,排名第59名,是河南省該項(xiàng)賽事最好成績(jī),為學(xué)校爭(zhēng)得了榮譽(yù)。在學(xué)校內(nèi)部,我們從2009年開始每年組織兩次全校程序設(shè)計(jì)競(jìng)賽,至今已經(jīng)主辦了四次校級(jí)競(jìng)賽。
4) 轉(zhuǎn)變教學(xué)理念。
我們提出了C語(yǔ)言與計(jì)算機(jī)相關(guān)課程的融合教學(xué)與實(shí)踐的教學(xué)理念。
5) 采用新的教學(xué)方法。
在課堂教學(xué)中,我們使用任務(wù)驅(qū)動(dòng)、課堂討論、3W1H教學(xué)法、現(xiàn)場(chǎng)編程教學(xué)法、課堂陷阱教學(xué)法、任務(wù)分解教學(xué)法、任務(wù)貫穿教學(xué)法、分散集中教學(xué)法、兩段教學(xué)法、實(shí)訓(xùn)優(yōu)秀作品展示激勵(lì)法、融合教學(xué)法等多種教學(xué)法,在課外使用網(wǎng)上在線討論與答疑、競(jìng)賽輔導(dǎo)撥高法、課題組觀摩討論法。我們打破大學(xué)考試試卷不評(píng)講的一貫做法,在第二學(xué)期的進(jìn)階課程第一堂課評(píng)講上學(xué)期期末試卷[3]。
(1)3W1H教學(xué)法。即:What——解決什么問(wèn)題,Why——通過(guò)實(shí)際生活例子引入為什么要解決這個(gè)問(wèn)題,Where——在什么條件下能夠解決,How——如何運(yùn)用學(xué)到的方法、技術(shù)來(lái)解決問(wèn)題。
(2) 現(xiàn)場(chǎng)編程教學(xué)法。在講授有代碼編寫的理論課時(shí),當(dāng)一個(gè)理論知識(shí)介紹完后,教師出一個(gè)難易程度適當(dāng)且有代表性的題目,讓學(xué)生隨堂寫代碼,并抽學(xué)生到黑板上寫,或者抽幾份學(xué)生作業(yè)當(dāng)場(chǎng)點(diǎn)評(píng)。
(3) 課堂陷阱教學(xué)法。在期中檢查座談會(huì)上,有的老教師說(shuō)學(xué)生很難發(fā)現(xiàn)自己程序的錯(cuò)誤,而課堂上即使是老師手下的一個(gè)筆誤,學(xué)生也能發(fā)現(xiàn)并喊錯(cuò)了。我們正是可以利用學(xué)生這種“容許自己范錯(cuò),不許老師失誤”的習(xí)慣,對(duì)于學(xué)生書寫代碼時(shí)容易出錯(cuò),或者上機(jī)碰到的共性問(wèn)題,我們?cè)谡n堂上演示時(shí)設(shè)下陷阱,故意把代碼寫錯(cuò),有的學(xué)生當(dāng)時(shí)就能發(fā)現(xiàn),而有的學(xué)生在編譯時(shí)才發(fā)現(xiàn)有錯(cuò),我們用自己的錯(cuò)誤來(lái)吸引學(xué)生注意力,加深學(xué)生的印象。
(4) 課題組觀摩討論法。我們組織本課題組教師每?jī)芍苓M(jìn)行一次教學(xué)觀摩討論,取長(zhǎng)補(bǔ)短,相互學(xué)習(xí),推廣好的教學(xué)方法。
(5) 實(shí)訓(xùn)優(yōu)秀作品展示激勵(lì)法。我們?cè)诘谝粚W(xué)期基礎(chǔ)課程的第一堂課上展示往屆的優(yōu)秀實(shí)訓(xùn)作品,讓學(xué)生覺得既好奇又深?yuàn)W,極大地激勵(lì)了學(xué)生的興趣。臨到畢業(yè),大部分學(xué)生還能對(duì)這堂課記憶猶新。
2與計(jì)算機(jī)相關(guān)課程的融合教學(xué)
通過(guò)近5年的實(shí)踐與總結(jié),我們認(rèn)為如果把C語(yǔ)言程序設(shè)計(jì)與計(jì)算機(jī)相關(guān)課程進(jìn)行融合教學(xué),必將促進(jìn)學(xué)生對(duì)該門課程的理解,同時(shí)凝聚專業(yè)特色,促進(jìn)其他課程的學(xué)習(xí),對(duì)于學(xué)生的自學(xué)與綜合能力的培養(yǎng)都有積極的作用。
1) 與數(shù)據(jù)結(jié)構(gòu)融合。
在講到C語(yǔ)言中的基本數(shù)據(jù)類型與構(gòu)造類型時(shí),圍繞數(shù)據(jù)結(jié)構(gòu)的一條主線——四種結(jié)構(gòu)兩種存儲(chǔ),聯(lián)系數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)類型,在抽象數(shù)據(jù)類型ADT中只定義了基本操作,復(fù)雜的操作是通過(guò)基本操作實(shí)現(xiàn)的。在抽象數(shù)據(jù)類型中定義的操作與C語(yǔ)言中的各種類型的運(yùn)算,比如取余運(yùn)算符“%”,在C語(yǔ)言中僅限整數(shù)。在講到查找與排序時(shí),對(duì)照數(shù)據(jù)結(jié)構(gòu)中的查找與排序,介紹一些經(jīng)典和效率高的算法。在講到遞歸函數(shù)調(diào)用時(shí),用數(shù)據(jù)結(jié)構(gòu)中的遞歸調(diào)用時(shí)棧的進(jìn)棧出棧變化過(guò)程講解。在講到scanf函數(shù)和其他讀取字符函數(shù)時(shí),將內(nèi)存與鍵盤輸入緩沖區(qū)結(jié)合,使學(xué)生更容易理解數(shù)據(jù)的輸入格式。
2) 與操作系統(tǒng)融合。
在講到變量的數(shù)據(jù)類型及變量的存儲(chǔ)類型時(shí),結(jié)合操作系統(tǒng)的內(nèi)存結(jié)構(gòu),講解內(nèi)存區(qū)域分為6個(gè)不同的部分來(lái)存儲(chǔ)不同的數(shù)據(jù),使學(xué)生了解內(nèi)存組織的有序性。特殊地,寄存器變量不占內(nèi)存,而字符串常量存放在符號(hào)常量區(qū),通過(guò)講解內(nèi)存結(jié)構(gòu),學(xué)生就明白靜態(tài)變量為什么第一次使用時(shí)會(huì)初始化,以后再使用時(shí)用的是上一次的值。在講解數(shù)組的連續(xù)存儲(chǔ)、鏈表的動(dòng)態(tài)存儲(chǔ)時(shí),結(jié)合內(nèi)存就會(huì)理解得更透徹些,甚至可補(bǔ)充內(nèi)存中堆與棧使用的知識(shí)[4]。
3) 與計(jì)算機(jī)組成原理融合。
入學(xué)時(shí),教師介紹計(jì)算機(jī)發(fā)展,一般都會(huì)講到馮?諾依曼原理,那么為什么要學(xué)習(xí)語(yǔ)言呢?還得從計(jì)算機(jī)組成原理來(lái)講,從電腦城裝配電腦介紹起,首先運(yùn)用BIOS程序,然后再啟動(dòng)操作系統(tǒng),最后再運(yùn)行用戶的應(yīng)用程序。而BIOS程序、操作系統(tǒng)和應(yīng)用軟件都是用語(yǔ)言開發(fā)出來(lái)的軟件,之前都曾經(jīng)有過(guò)C語(yǔ)言版本,BIOS現(xiàn)在還是C語(yǔ)言編寫的,而操作系統(tǒng)的一些內(nèi)核也還有C語(yǔ)言的許多代碼。因?yàn)榇笠坏谝粚W(xué)期的計(jì)算機(jī)科學(xué)導(dǎo)論與本課程是同步開設(shè),學(xué)生對(duì)計(jì)算機(jī)的了解還是有限的。同樣地,在講到C語(yǔ)言的三種進(jìn)制數(shù)、位運(yùn)算、指針時(shí),與計(jì)算機(jī)的字長(zhǎng)、補(bǔ)碼運(yùn)算、指令加以對(duì)照,就容易理解些。
4) 與面向?qū)ο笳Z(yǔ)言融合。
掌握好一門語(yǔ)言,可以自學(xué)其他語(yǔ)言。做到這點(diǎn)不容易,因?yàn)榇髮W(xué)專業(yè)課的特點(diǎn)是學(xué)一門結(jié)一門,沒有哪所大學(xué)或哪個(gè)專業(yè)開設(shè)了所有語(yǔ)言,所以在語(yǔ)言課之間融合對(duì)照學(xué)習(xí),會(huì)收到非常好的效果。比如講到結(jié)構(gòu)體時(shí),與面向?qū)ο笾械念悓?duì)照,將結(jié)構(gòu)體變量與對(duì)象對(duì)照,就比較好理解數(shù)據(jù)類型和類不占內(nèi)存,對(duì)象與變量占內(nèi)存了。講到函數(shù)時(shí),與方法對(duì)照,講到函數(shù)參數(shù)時(shí),補(bǔ)充面向?qū)ο笾幸玫氖褂茫瑢?duì)將來(lái)學(xué)習(xí)面向?qū)ο笳Z(yǔ)言和數(shù)據(jù)結(jié)構(gòu)非常有益。
5) 與數(shù)據(jù)庫(kù)原理融合。
程序所需數(shù)據(jù)從哪兒來(lái)?運(yùn)行結(jié)果保存到哪兒去?在講到文件操作時(shí),將C語(yǔ)言中用到的文件與數(shù)據(jù)庫(kù)中數(shù)據(jù)文件作比較,再聯(lián)系結(jié)構(gòu)體成員與數(shù)據(jù)庫(kù)中的字段、記錄,使學(xué)生對(duì)程序的理解更完整一些。
6) 與編譯原理融合。
在演示程序開發(fā)過(guò)程、多文件的操作、編譯預(yù)處理時(shí),均可以聯(lián)系編譯原理中編譯器的詞法/語(yǔ)法分析,教師可以演示單步編譯,鼓勵(lì)學(xué)生思考編譯的過(guò)程。
7) 與高等數(shù)學(xué)、線性代數(shù)、概率論、離散數(shù)學(xué)、數(shù)值分析、運(yùn)籌學(xué)等融合。
如果能將學(xué)習(xí)C語(yǔ)言與離散數(shù)學(xué)中的集合論、代數(shù)系統(tǒng)、圖論結(jié)合,再解決高等數(shù)學(xué)、線性代數(shù)、概率統(tǒng)計(jì)、幾何、數(shù)值分析和運(yùn)籌學(xué)中的數(shù)學(xué)問(wèn)題,能夠極大提高學(xué)生的興趣,也鞏固了所學(xué)的知識(shí)。
8) 與網(wǎng)絡(luò)融合。
使用C語(yǔ)言可以開發(fā)C/S結(jié)構(gòu)的客戶端與服務(wù)器端程序,在實(shí)訓(xùn)和實(shí)習(xí)時(shí)可以分層次進(jìn)行一些高級(jí)的練習(xí),比如C/S結(jié)構(gòu)的網(wǎng)絡(luò)編程。再提出一些問(wèn)題,比如如何實(shí)現(xiàn)抓圖和打印等,培養(yǎng)學(xué)生的自學(xué)習(xí)慣。
9) 與軟件工程融合。
結(jié)合專業(yè)特點(diǎn),講解軟件開發(fā)不僅僅是寫代碼,還是一個(gè)模型的開發(fā)過(guò)程,對(duì)于學(xué)生將來(lái)畢業(yè)做好畢業(yè)設(shè)計(jì)與寫好畢業(yè)論文有指導(dǎo)意義。特別是軟件工程和軟件測(cè)試專業(yè)更是需要了解。
其實(shí),我們?cè)谥v授C語(yǔ)言程序設(shè)計(jì)時(shí),幾乎可以和所有計(jì)算機(jī)專業(yè)課程聯(lián)系起來(lái),比如選修課算法分析與設(shè)計(jì),還可以和ACM/ICPC結(jié)合,通過(guò)ACM/ICPC競(jìng)賽的題目尋找合適的教學(xué)切入點(diǎn),有時(shí)也可以引入離散數(shù)學(xué)中的邏輯推理知識(shí),或者構(gòu)造一種教學(xué)情境,讓大家感興趣,能被吸引住,使學(xué)生一步步跟著往前走,比如抽幾名學(xué)生排隊(duì)講排序算法。
也可以和非計(jì)算機(jī)專業(yè)課程聯(lián)系起來(lái),比如計(jì)算機(jī)英語(yǔ)。同樣地,在教學(xué)過(guò)程中,融合一些新的技術(shù),比如物聯(lián)網(wǎng)、CPS計(jì)劃等,學(xué)生會(huì)更感興趣。如何融合比較教學(xué),既能深入淺出地完成教學(xué)任務(wù)又不拖延學(xué)時(shí),需要把握好這個(gè)度。
3與計(jì)算機(jī)其他課程的融合實(shí)踐環(huán)節(jié)
除了做到融合教學(xué)外,在實(shí)踐環(huán)節(jié)上如何融合也至關(guān)重要。
1) 搭建ACM/ICPC校內(nèi)在線測(cè)評(píng)平臺(tái)。
我們采取競(jìng)賽輔導(dǎo)拔高法,成立競(jìng)賽班,采取“講-幫-帶”的方式,建立了鄭州輕工業(yè)學(xué)院在線測(cè)評(píng)平臺(tái),如圖1所示。豐富了題庫(kù),組織校內(nèi)選拔賽,教師帶隊(duì)參加競(jìng)賽。
自2009年開始,我們每年舉辦兩次全校性質(zhì)的大學(xué)生程序設(shè)計(jì)競(jìng)賽:12月舉辦新生程序設(shè)計(jì)競(jìng)賽(個(gè)人賽)、5月舉辦一次全校程序設(shè)計(jì)競(jìng)賽(組隊(duì)賽)。均有IT公司贊助,并有開幕式和頒獎(jiǎng)儀式,極大地提高了學(xué)生的編程熱情。
參加ACM/ICPC競(jìng)賽,有助于培養(yǎng)學(xué)生的抽象思維、邏輯思維、心理素質(zhì)、團(tuán)隊(duì)合作和協(xié)同能力[5]。
2) 與考研結(jié)合。
我們從大一第一學(xué)期就讓學(xué)生思考自己將來(lái)的出路:工作或考研。如果工作就必須學(xué)好知識(shí),重視實(shí)踐,提高動(dòng)手能力。
3) 與操作系統(tǒng)、C++融合實(shí)訓(xùn)。
在后續(xù)的操作系統(tǒng)和C++的實(shí)訓(xùn)時(shí),安排我們C語(yǔ)言程序設(shè)計(jì)課題組的教師參與實(shí)訓(xùn),使得C語(yǔ)言程序設(shè)計(jì)課程的學(xué)習(xí)更加長(zhǎng)期有效。
4) 把等級(jí)考試當(dāng)做門檻。
我們把全國(guó)和河南省歷年計(jì)算機(jī)等級(jí)考試的題目穿插到平時(shí)的教學(xué)中,讓學(xué)483uGuLn2kmyJpHgTLgamw==生把握每個(gè)知識(shí)點(diǎn)。
5) 介紹學(xué)生參加教師的項(xiàng)目。
我們?cè)谑谡n的同時(shí),也有心培養(yǎng)一些勤于思考用心的學(xué)生,介紹他們參與到教師的應(yīng)急系統(tǒng)、嵌入式、GIS、網(wǎng)絡(luò)等實(shí)際項(xiàng)目開發(fā)中,引導(dǎo)學(xué)生自學(xué)C++和Java、JSP等工具,讓他們從實(shí)踐中得到鍛煉,積累經(jīng)驗(yàn)。
6) 跨學(xué)科實(shí)訓(xùn)并總結(jié)。
在第二學(xué)期期末的實(shí)訓(xùn)環(huán)節(jié),我們讓學(xué)生分組去做一些稍微大一點(diǎn)的題目。比如C語(yǔ)言語(yǔ)法分析模擬器、BIOS模擬器、科學(xué)型計(jì)算器、TC模擬器、Windows小游戲、信息系統(tǒng)等。在實(shí)訓(xùn)結(jié)束后,我們安排優(yōu)秀實(shí)訓(xùn)作品展示總結(jié)會(huì),也是對(duì)一學(xué)年課程學(xué)習(xí)的總結(jié)。有很多外專業(yè)的學(xué)生自愿來(lái)參加。通過(guò)展示交流,學(xué)生看到了別人的成績(jī),也看到了自己的差距。
4結(jié)語(yǔ)
通過(guò)對(duì)C語(yǔ)言程序設(shè)計(jì)存在問(wèn)題進(jìn)行思考和分析,我們結(jié)合學(xué)校實(shí)際,提出了C語(yǔ)言程序設(shè)計(jì)與計(jì)算機(jī)相關(guān)課程的融合教學(xué)與實(shí)踐。經(jīng)過(guò)4年的教學(xué)與實(shí)踐檢驗(yàn),取得了較好的教學(xué)效果,對(duì)C語(yǔ)言程序設(shè)計(jì),以及其他程序設(shè)計(jì)語(yǔ)言的教學(xué)都有一定的指導(dǎo)意義。
參考文獻(xiàn):
[1] 李玉梅.“C語(yǔ)言程序設(shè)計(jì)”課程的“教、學(xué)、做”一體化的探索與實(shí)踐[J]. 科技創(chuàng)