第一篇:項目驅動模式在高職《C語言程序設計》課程教學中的應用
項目驅動模式在高職《C語言程序設計》課程教
學中的應用
針對目前高職高專院校C語言程序設計課程的教學目的及教學中存在的問題進行分析,提出采用“項目驅動模式”進行教學。闡述“項目驅動模式”的原理及特點,結合C語言程序設計課程教學項目闡明如何在“項目驅動”模式指導下開展教學,以更好地提高教學質量,改善教學效果。
DOI10.11907/rjdk.143825
基金項目甘肅省教育廳科研項目(0719B-03)
李文娟(1984-),女,甘肅定西人,定西師范高等專科學校計算機系講師,研究方向為計算機程序設計語言類課程教學及算法。
0 引言
《C語言程序設計》是目前各高等院校開課率很高的一門課程,它既是軟件技術等專業(yè)的專業(yè)基礎課程,又是數據結構、程序開發(fā)及其它程序設計語言的先導課程。因此,本課程的教學宗旨是將C語言從應試課程轉變?yōu)橐环N實踐工具,主要目的不再局限于使學生單純地了解和掌握C語言的基本語法規(guī)范,而是致力于培養(yǎng)學生運用C語言解決實際問題的編程能力,以及培養(yǎng)學生無論將來在學習、工作中使用
第 1 頁 什么語言編程,都能靈活應用這些思想和方法的能力。
《C語言程序設計》課程教學現狀
目前,在高職高專院校開設的《C語言程序設計》課程教學中普遍存在以下3方面問題①傳統(tǒng)教學方法過于注重教師角色,在課堂上以教師講、學生聽為主,無法調動學生的思考積極性;②不重視實踐教學環(huán)節(jié),造成理論與實踐脫節(jié),教師在課堂上過于重視語法和程序本身,而忽略了學生動手能力的培養(yǎng),不利于培養(yǎng)學生獨立解決問題的能力;③教學內容及教材選擇不當,內容銜接不連貫,教師講得費勁,學生學得吃力,不但影響了學習效果,也讓學生失去了學習興趣。為了改變這一現狀,提出采用“項目驅動模式”進行C語言課程教學,讓學生在學中做、做中學,從而做到學以致用,理論聯(lián)系實際。項目驅動模式原理與特點
所謂“項目驅動模式”,是指在教學過程中以完整應用程序項目為依托,采用“任務驅動”的方式,把所有零散的知識點難易適當、循序漸進、合理地分配、貫穿到項目各個環(huán)節(jié)中,層層推進項目,通過對問題的深化或功能擴充,拓寬知識的廣度和深度,讓學生在有限時間內,既能完成既定任務,又能激發(fā)學生學習興趣的一種實踐活動。
第 2 頁
項目驅動模式最根本的特點是將一個完整項目劃分成若干個相對獨立的子任務,以任務為主線、教師為主導、學生為主體,變被動學習為主動探究,充分調動學生的學習積極性,是一種讓學生主動參與、自主協(xié)作、探索創(chuàng)新的一種新型教學模式。項目教學模式在教學過程中的應用
3.1 項目提出
在《C語言程序設計》課程中,使用項目驅動教學模式,最關鍵的是要選擇一個適合自己教學內容、突出所學知識的項目。在選擇項目時要注意以下幾個問題
(1)充分考慮授課對象的層次和特征,了解學生已有知識和能力水平,從而選擇適合他們的項目。
(2)充分考慮課程內容,根據課程內容的重點、難點,將項目設計成一個個相對獨立的子任務,以便于任務實現和項目完成。
(3)充分考慮項目的來源,要根據學生的特點和興趣,選擇學生熟悉的項目[3]。
基于以上考慮,選擇“學生成績管理系統(tǒng)”作為教學項目。遵循“實用為主,必須和夠用為度”以及高職學生認知循序漸進的原則,在教學過程中,按照“階梯遞進”的達
第 3 頁 標要求,將成績管理系統(tǒng)分為簡易成績管理系統(tǒng)和高級成績管理系統(tǒng)兩步完成。在簡易成績管理系統(tǒng)中,要求學生完成成績的輸入、存儲、顯示和計算平均成績、求最高分、最低分以及計算不及格率等功能;在高級成績管理系統(tǒng)中,要求學生完成對含有學生信息和課程信息的成績記錄的輸入、輸出、寫入文件和從文件中讀取成績記錄,以及插入、刪除成績記錄和基于現有成績記錄的排序、查找等功能。
3.2 任務分解
在以完整項目為主線的教學過程中,可將項目劃分成階梯遞進的任務鏈,形成任務階梯。任務階梯指按項目要求設計的任務中包括幾個小任務,這幾個小任務不是完全獨立的,前一個任務的完成應為后一個任務的展開做好鋪墊,而且任務由簡到繁,由易到難,再由高級任務涵蓋初級任務,這些大大小小的任務共同完成教學實踐項目,使教學呈現階梯式層層遞進的體系[2]。因此,可將C語言中的各種零散知識點融入任務鏈中,以任務驅動教學。
例如在簡易成績管理系統(tǒng)中,可劃分為以下4個子任務①顯示菜單,要求在屏幕上顯示簡易成績管理信息系統(tǒng)的主菜單,相關知識點包括數據類型、常量、符號常量以及printf函數最簡單的用法等;②選擇菜單項,要求根據屏幕
第 4 頁 顯示的菜單項,輸入菜單項所對應的序號,在屏幕上顯示所選菜單項,相關知識點包括數據存儲的本質、變量、格式輸入與輸出函數、if語句和switch語句、while語句和do-while語句、邏輯運算符與邏輯表達式、關系運算符與關系表達式以及字符輸入與輸出函數等;③菜單實現架構,要求根據屏幕顯示的菜單項,輸入菜單項所對應的序號,調用相應函數在屏幕上顯示所選菜單項,相關知識點包括函數定義和函數調用、函數參數和返回值以及被調函數的聲明等;④簡易成績管理系統(tǒng),要求根據屏幕顯示的菜單項,輸入菜單項所對應的序號,調用相應函數實現成績管理的基本功能,相關知識點包括算術運算符與算術表達式、賦值運算符與賦值表達式、數據類型轉換、磁盤文件的讀寫、for語句、break語句以及continue 語句等。
在完成簡易成績管理系統(tǒng)的程序設計后,可將項目遞進為高級成績管理系統(tǒng),并將其分為上、下兩部分。在高級成績管理系統(tǒng)的上半部分,可將任務再次分解為4個子任務①含有學生信息和課程信息成績記錄的輸入和輸出,要求在屏幕上顯示高級成績管理系統(tǒng)的主菜單,完成從健盤輸入含有學生信息和課程信息的成績記錄、向屏幕輸出成績記錄、將成績記錄保存到文件和從文件中讀取成績記錄等功能。相關知識點包括數組的定義及引用、結構體的定義及引用、字符串處理函數等;②學生成績記錄的排序,要求在任務一的基礎上完成對含有學
第 5 頁 生信息和課程信息的成績記錄進行排序的功能。相關知識點包括冒泡排序與簡單選擇排序法;③學生成績記錄的查找,要求在任務二的基礎上完成對含有學生信息和課程信息的成績記錄進行查找,相關知識點包括順序查找與折半查找法、遞歸函數與遞歸調用;④學生成績記錄的插入和刪除,要求在任務三基礎上完成在原有學生成績記錄基礎上進行插入和刪除的功能,相關知識點包括數據中元素的插入與刪除操作。
在高級成績管理系統(tǒng)的下半部分,任務劃分與上半部分相同,主要知識點包括指針和指針變量的概念、定義及引用、動態(tài)存儲分配、鏈表的基本概念及應用。要求學生在熟悉高級成績管理系統(tǒng)的基本功能之后,能夠用指針方法實現相同的功能和操作。
3.3 任務執(zhí)行
針對項目驅動教學模式的特點,將學生分成若干個項目小組,在教師完成相關知識點講授之后,小組內成員可以通過交流、協(xié)作等方式完成項目內的子任務,并在小組之間進行討論。隨著項目驅動教學模式的逐漸實施,在任務執(zhí)行過程中采用基于模塊的過程性考核評價方式,讓學生每次將編寫的程序上傳到教師服務器中,直至本組項目完成。這種方式很好地鍛煉了學生的程序設計能力,為今后能較快地參
第 6 頁 與實際軟件項目開發(fā)奠定了堅實基礎[3]。
3.4 實踐總結
教師對學生實踐過程中遇到的問題要及時指導,并對學生們完成任務的情況進行歸納、總結,進一步提高其編程能力。
教師提出的“學生成績管理系統(tǒng)”應用程序項目貫穿整個學期,與理論教學進度一致。在整體項目背景下,又以一個個相對獨立的子任務驅動教學,將課程中相關知識點融入任務中,每個任務的確立都根據學生現有知識狀況和教學內容統(tǒng)籌安排。在任務驅動下,學生邊學習邊實踐,可充分發(fā)揮學習的主動性和創(chuàng)造性,提高解決問題的能力,并體驗到任務完成后的成就感,從而進一步激發(fā)學生學習興趣。
結語
通過分析《C語言程序設計》課程與高職學生的特點,采用“項目驅動”和“任務驅動”模式開展教學,能夠充分調動學生的學習興趣和積極性。教學實踐表明,該教學方式有效避免了教與學、學與做的脫節(jié),實現了理論學習與實際應用的“零距離”,從而有效提高了學生C語言綜合應用開發(fā)能力。
第 7 頁
第二篇:項目教學法在C語言課程教學中的應用
項目教學法在C語言課程教學中的應用
摘要:該文主要探討在高校C語言程序設計課程中引入項目教學法的意義,探索項目教學法的實施步驟,提出在實施該方法時應注意的幾個問題。項目教學改變了傳統(tǒng)的以講授知識為主的教學模式,可以充分發(fā)揮學生的主觀能動性及創(chuàng)造性。讓學生通過自己的觀察、分析和編程實踐,培養(yǎng)提出問題、分析問題、解決問題的能力。
關鍵詞: C程序設計;項目教學;策略
中圖分類號:G424文獻標識碼:A文章編號:1009-3044(2011)29-7210-02
C語言程序設計作為普通高校非計算機專業(yè)“大學計算機基礎”課程的后續(xù)課程,其教學目標是使學生能掌握程序設計的設計方法,具有相應的閱讀、理解程序的能力,并能把所學的程序設計思想、方法應用到本專業(yè)及相關的領域。
在“C語言程序設計”教學中,傳統(tǒng)的講授法重視語法知識的講解,學生被動接受教學信息,學習自主性難以培養(yǎng),學習興趣難以持久。雖然學生可以較好地掌握C語言的基本語法,教學效率較高,但是學生的實際編程能力難以得到培養(yǎng)和鍛煉。常常出現這樣一種現象:C語言課程教學結束時,學生卻不知道C語言的具體應用和實際價值,不能獨立編寫程序。
項目教學就是教師與學生通過共同完成一個較完整的項目工作而進行的相關教學活動。在項目教學中,學習過程成為師生共同參與的創(chuàng)造性實踐活動,注重完成項目的過程而不是最終的結果[1]。通過項目實踐活動,學生們掌握和理解了該門課程要求的技能、知識,培養(yǎng)了他們分析、解決問題的能力。項目教學法的理論依據
建構主義學習理論認為,知識并不是通過教師教授學生而獲得的,而是學生自己在一定的環(huán)境情景下,借助其他人的幫助,利用相關的學習資料,通過意義建構的方式而獲得。
在建構主義學習理論下,當前大致有三種比較成熟的教學方法,分別是支架式教學法、拋錨式教學法和隨機進入教學法。
支架式教學法就是為學生提供一個知識框架,把復雜的知識點予以分解,利于去引導學生逐步深入理解。而拋錨式教學法則是用真實案例為基礎,讓學生在真實事件中去體驗、感受,進而獲得相關的經驗;隨機進入教學法就是讓學生通過不同途徑、方式進入相同的教學內容學習,從而獲得對同一問題的多方面的認識、理解[2]。
C語言的知識結構體系完善,教學內容比較多,難度較大。采用支架式教學法較適合學生學習基礎語法知識,采用拋錨式教學法可以增強學生的編程體驗,調動起學生學習的積極性。C語言項目教學法的原則
C語言項目教學法應遵守如下幾項原則:
1)精心選取項目實例
教學法要成功,項目實例的選取非常重要。實例既要包含到所需的知識點,又要能調動學生解決問題的主觀能動性。
教師應啟發(fā)學生主動發(fā)現身邊的材料,選擇合理難度的項目,并由師生共同完成。
2)周密組織項目小組
軟件項目的實施離不開團隊,單兵作戰(zhàn)的手工作坊式生產早已不能適應軟件的生產。項目教學應注意培養(yǎng)學生的團隊合作意識和協(xié)作攻關精神。教師可以參照IT項目的管理思想構建和管理學生的學習和研究小組。由教師、科代表、學研小組和組員構成C語言項目教學的學研機構,明確各自的分工和職責,共同完成C語言的學習和實際編程項目。
3)妥善處理與傳統(tǒng)教學模式的關系
高校的C語言程序設計課程一般在大學一年級開設,學生的計算機基礎知識還比較薄弱,編程思維還有待啟發(fā),項目和工程的意識還處在萌芽之中。因此,項目教學不可能完全脫離傳統(tǒng)教學,傳統(tǒng)的“講授法”對于C語言基礎知識的學習,具有系統(tǒng)性強、效率高的特點。教師應將項目教學與傳統(tǒng)教學有機結合起來,取長補短,發(fā)揮二者的優(yōu)勢。
4)完善教學評價體系
積極完善項目教學的評價體系有助于提高學生參與項目教學的積極性[3]。科學的發(fā)展性項目教學評價體系包括評價主體、評價指標、權重系數等。
作為項目教學法的干系人的教師、小組、組員,理所當然也是評價的主體,教師應注意進行組織和監(jiān)控,確保評價的公平、公正性,以激發(fā)組員和小組團隊的學習興趣、研究動力和創(chuàng)新活動為目標。學生的成績評價由教師評定成績、小組評定成績和組員自評成績構成。按指標權重對三項成績進行加權平均,構成學生的最終成績[4]。
C語言項目教學法的基本步驟
在C語言程序設計課程中,項目教學法的教學過程一般有如下六步:
1)精心選擇與現實相關的項目實例,設計學生所學知識與現實環(huán)境相接近的環(huán)境。把學生引入解決現實問題的環(huán)境中來。
2)圍繞所學的知識點,選擇相應合理的一些小項目,并且演示完成項目所需要的相關過程。
3)讓學生掌握獨立思考的能力,對知識點進行理解并消化示范項目的相關解決要點,為練習項目的解決打下基礎。
4)項目教學小組通過調查,論證、分析后,在教師指導下確定最終實訓項目。
5)小組內部要開展相應的討論、交流,成員之間分工協(xié)作,以共同完成工程項目。
6)以完成工程項目的情況來直接衡量學生學習的效果,由教師評價、學研小組評價以及組員自評三部分構成。
C語言項目教學法應注意的問題
在C語言程序設計課程中開展項目教學,通過項目,培養(yǎng)學生提出問題、分析問題和編程解決實際問題的能力,應注意以下幾點:
1)教師自身綜合能力的提高
使用項目教學法來進行教學,對教師提出了更高要求。教師不僅是傳授知識的老師,也是具有軟件項目開發(fā)實踐經驗的工程師,還應是具有豐富管理經驗的項目經理。教師應注意自身綜合能力的培養(yǎng),特別應加強項目管理知識的學習和應用實踐。
2)學生自身的綜合能力的培養(yǎng)
C語言項目教學法要求學生不僅要熟練掌握C語言的語法基礎知識,而且要將其運用到項目實踐中,對學生的能力要求更高。學生應切實轉變傳統(tǒng)的被動學習為主動學習和研究性學習,同時還需要與項目小組的其他成員協(xié)調和溝通,構建良好的人際關系,加強自身的語言溝通能力、組織協(xié)調能力的培養(yǎng)。
3)注意開放實驗環(huán)境的構建
學研小組需要按照要求獨立完成相關的實踐項目。需要在教師的指導下,學研小組在開放的計算機實驗室進行項目軟件的分析、設計和實現。因此,項目教學法的實施,需要計算機實驗室構建必要的項目軟件分析、設計以及編程實現的相關環(huán)境,讓學生自主的管理能力得以增強,按照相關項目進度計劃完成教學項目、實訓項目和擴展性項目。
總結
項目教學法是一種優(yōu)秀的教學方法,但是同樣在實際運用中也會面臨各種各樣的問題和困難,只要我們能勇于面對問題,去分析、解決問題,就能得到不斷提高和進步。
參考文獻:
[1] 張紹民.計算機課項目教學法的探索與實踐[J].成功(教育),2008(10):198-199.[2] 肖勝陽.在計算機課程教學中開展項目教學法的研究[J].電化教育研究,2003(10):72-76.[3] 崔樹銀.參與式案例教學在公共管理類課程教學中的應用[J].現代教育科學,2010(7):167-169.[4] 冷淑君.關于項目教學法的探索與實踐[J].江西教育科研,2007(7):119-120.[5] 劉志宏,劉舟荷,張雯暉,等.項目教學法在C語言教學中的實踐與研究[J].中國成人教育,2010(4):139-140.
第三篇:任務驅動教學模式在高職應用寫作課程中的應用
夏能權
內容摘要:湖南工藝美術職業(yè)學院貫徹執(zhí)行教育部“推行任務驅動、項目導向等學做一體的教學模式”的號召,深化應用寫作課程改革,形成了較為成熟的“任務設計三對接、任務實施四部曲、任務評價多主體”任務驅動教學模式。學生在完成任務的過程中,始終處于主體地位,而教師則是學習情境的創(chuàng)設者、學習任務的設計者、學習資源的提供者、學習活動的組織者和學習方法的指導者。該模式有效培養(yǎng)了學生的寫作技能、自學能力、分析綜合能力和協(xié)作精神等,提高了課堂教學效能。
關鍵詞:高職 應用寫作 任務驅動 教學模式
《教育部財政部關于進一步推進“國家示范性高等職業(yè)院校建設計劃”實施工作的通知》(教高[2010]8號)要求國家骨干高職院校“推行任務驅動、項目導向的教學模式”,《教育部關于推進高等職業(yè)教育改革與發(fā)展的若干意見》則號召所有高職院校“繼續(xù)推行任務驅動、項目導向等學做一體的教學模式”。如何貫徹執(zhí)行教育部號召是應用寫作課程教學改革的重點,根據課程性質,應用寫作宜推行任務驅動教學模式,深化教學改革。
任務驅動是基于建構主義學習理論的一種教學模式。該模式以任務為驅動,以實例為導向,把教學內容轉化成具體的任務,學生在教師指導下,圍繞任務,積極探究,分析問題,討論問題,解決問題,通過任務的完成實現新知識和技能的建構。
與傳統(tǒng)的課堂教學模式相比,應用寫作課程中的任務驅動教學模式具有如下優(yōu)勢:第一,在課堂中植入任務,使枯燥的應用寫作理論講授變得歡樂、有趣,激發(fā)了學生的學習興趣,促進了學生參與的積極性和主動性;第二,有利于改善師生關系,由傳統(tǒng)課堂的教師講、學生學轉變?yōu)閷W生為主體、教師為學生學習提供指導和幫助,師生之間進行交流和討論,形成一種和諧、平等的師生關系。第三,不僅傳授了應用寫作知識,培養(yǎng)了應用寫作技能,達到了教學目的,而且在一定程度上培養(yǎng)了學生的分析問題、解決問題的能力和團隊協(xié)作精神。因此,任務驅動教學模式能有效提高課程教學效果。經過多年改革探索,我院應用寫作課程已形成了較為成熟的任務驅動教學模式,可概括為“任務設計三對接、任務實施四部曲、任務評價多主體”。一.任務設計三對接
任務設計是任務驅動教學模式的基礎,即教師把要完成的教學內容設計成一個或多個具體的任務,巧妙地把教學內容和教學目標隱含在一個個任務中,引導學生通過完成這些任務來掌握學習內容。
為了激發(fā)學生的學習興趣,引導學生順利完成任務,我們采用三對接原則精心設計應用寫作任務,即對接學生生活、對接學生專業(yè)、對接學生未來職業(yè)。一是對接學生生活,設計任務時須結合學生的校園生活、校外生活實際,使學生真切地體會到應用文能服務自己的生活,如寫作調查報告,設置的任務是在學院開設自行車租借行的調查報告、大學生手機使用習慣調查報告,使學生在任務實施中感受到應用寫作技能的價值。二是對接學生專業(yè),任務設計應本著為學生專業(yè)學習服務的原則,以引起學生的“專業(yè)”注意,使學生感受到應用寫作對其專業(yè)學習的重要性,從而自覺完成學習任務。我院所有專業(yè)都屬藝術設計類專業(yè),如學習邀請函,設計的任務是為母校三十五周年校慶設計圖文并茂的邀請函,這樣的任務能發(fā)揮學生的專業(yè)優(yōu)勢,使學生樂意完成,達到鞏固應用寫作知識、掌握應用寫作技巧的目的。三是對接學生未來職業(yè),職業(yè)教育就是就業(yè)教育,高職應用寫作教學也應體現這種思想,任務設計應著眼于學生未來職業(yè),如學習合同,設置的任務是撰寫產品設計(或廣告設計、服裝設計、室內設計等)項目合同書,使學生在掌握寫作知識、技能的同時,熟悉未來職業(yè)崗位任務。
“任務設計三對接”彰顯了應用寫作課程的實用性,美國心理學家、教育家、結構主義教育思想的代表人物布魯納說過:“使學生對一門學科有興趣的最好辦法勢必使之知道這門學科是值得學習的。”精心設計的教學任務使學生認識到該課程對其生活、學習及未來工作都有著重要影響,從而積極主動地投入課程學習。二.任務實施四部曲
任務實施是任務驅動教學的主體階段,在這一階段,學生是解決一個個實際寫作任務的主體,是知識意義的主動建構者,而教師扮演的角色應是學生建構知識的忠實支持者,是學習情境的創(chuàng)設者、學習任務的設計者、學習資源的提供者、學習活動的組織者和學習方法的指導者。我院應用寫作課程的任務實施過程一般可分為如下四個步驟。
一是創(chuàng)設情境、導入任務。教學情境是教師從專業(yè)人才培養(yǎng)目標出發(fā)、依據教學內容有意識創(chuàng)設符合教學對象特征的“問題”情境。在教學情境的引發(fā)下,使學生明確本堂課要完成的主要任務。如學習應聘書,上課伊始,即展示真實有趣的問題情境,拋出撰寫任務:“華天大酒店因工作需要,需招聘大堂經理、公關助理、餐飲、客房部領班、服務員、保安員數名。35歲的下崗女工王曉彤前往應聘,她認為自己有如下優(yōu)勢:在原單位擔任過保衛(wèi)干事,熟悉保安工作的規(guī)律與特點;女性善于察言觀色,第六感覺特棒,非常細心;受過專門訓練,學過擒拿格斗的基本技巧,而且還業(yè)余學過柔道;體格健壯等。王曉彤應聘哪個崗位最為合適?為了確保應聘成功,她該如何寫作應聘書呢?”通過情境的創(chuàng)設,激發(fā)學生的學習興趣,驅動學生自覺接受學習任務。
二是分析任務、明確問題。在任務驅動教學模式中,分析任務是該模式的激活階段,即學生根據教師導入的學習任務,積極發(fā)掘和調動大腦中已有的知識儲備,理順任務中隱含的問題,提出完成任務的各種假設,尋求解決問題的辦法。在這一過程中,學生可能會發(fā)現一些問題是以前沒有接觸過的,要通過新知識的學習才能解決,而這往往正是該堂課要解決的學習要點。分析任務旨在引導學生梳理完成任務已經具備的知識、能力和尚不具備的知識、能力,使學生明確學習的重點和難點,這正是任務驅動學習的關鍵所在。
三是學習理論、效仿范例。針對任務分析中發(fā)現的問題,采用教師講述或學生自學然后分組陳述等多種形式,引導學生學習解決問題所需的新知。就應用寫作課程而言,需學習的新知包括相關文種的理論知識和例文。寫文章離不開借鑒模仿,在把握文種特點、格式要求、寫作技巧等理論知識的基礎上,引導學生學習他人的范文,用心去“悟”,歸納范文觀點提煉、總體思路、結構設計、材料運用等方面的特色,發(fā)現規(guī)律,掌握精髓,為完成撰寫任務奠定基礎。
四是學以致用、完成任務。即運用新的知識、例文完成上課時布置的應用寫作任務,實現知識的遷移,真正做到學做一體。一般來說,簡單的任務,如通知、邀請函等以個人形式課堂完成,較復雜的任務如調查報告等是以小組形式在課堂上討論,形成寫作提綱,小組課余完成,第二次上課時以小組為單位進行PPT展示。三.任務評價多主體
學生完成任務之后,總會滿心期待著教師等的評價,而且,學生完成了任務并不等于完成了知識技能的構建,因此,教師須對任務完成情況進行總結評價,引導學生對所學知識進行歸納、提煉,使學生加深對知識、技能的理解與掌握。針對傳統(tǒng)教學僅由應用寫作教師評價學生學習情況的主體單一性局限,我們將應用專業(yè)教師、學生也納入評價的主體,從不同角度、不同層面客觀、公正地評價學生任務完成情況。
任務評價的主要方式有四:一是應用寫作教師評價。二是學生互評,如通知,在課堂上完成之后,同學之間交換作業(yè),從標題是否合乎要求、時地和事項等內容要素是否表述清楚、格式是否規(guī)范等角度進行互評,三方面都達到即為“優(yōu)”,未達到“優(yōu)”者須進行修改。三是應用寫作教師與學生共同評價,對于那些與學生專業(yè)相關的任務,如果專業(yè)性與學生水平相當,如制作圖文并茂的邀請函,學生從圖畫設計、應用寫作教師從文案撰寫的不同角度評價。四是應用寫作教師與專業(yè)教師共同評價,如果任務的專業(yè)性較強,如設計說明的寫作,就由應用寫作教師和相關專業(yè)教師共同評定成績,專業(yè)教師評價設計說明內容與作品特點的吻合度,應用寫作教師評價語言的流暢性、準確性和形象性等,使評價更為全面、科學、公正。應用寫作課程實施任務驅動教學模式,把學生推向課堂主體位置,激發(fā)學生參與教學的積極性、主動性;同時,強調理論與實踐的統(tǒng)一,引導學生聯(lián)系實際問題主動學習,使知識的獲得與能力的培養(yǎng)實現二位一體。該模式培養(yǎng)了學生的寫作技能、自學能力、分析綜合能力和協(xié)作精神等,提高了課堂教學效能,對將“以就業(yè)為導向、以能力為本位”現代職業(yè)教育理念落到實處有著十分重要的意義。
第四篇:《C語言程序設計》課程項目教學技能目標
《C語言程序設計》課程項目教學技能目標
《C語言程序設計》課程項目教學提出了“熟練使用基本知識點,練習設計編寫小程序”兩個層次的技能目標。
“熟練使用基本知識點”是第一層次的技能目標,該目標要求能夠用C語言基本知識點語句準確描述簡單問題,做到知識單點的準確把握和使用。課程中有大量的基本知識點需要理解和熟練掌握,學習者要達到“語句和代碼”目標級別。該目標訓練方法可以有以下幾種:
(1)閱讀具有針對性的語句和短小程序,一般作為作業(yè)題呈現給學習者。
(2)改錯題。針對具體知識點進行訓練,提高學習者的認識和鑒別能力。可以是作業(yè)或上機實踐。
(3)填空題。針對具體知識點進行訓練,為初級設計能力奠定基礎。可以是作業(yè)或上機實踐。
(4)小問題編程設計。用3~5個語句完成單知識點程序設計練習,主要是上機實踐。“練習設計編寫小程序”,是第二層次的技能目標,該目標要求能夠熟練使用C語言基本知識點語句,運用算法設計思想,解決常見的或小規(guī)模的問題,這種程序一般包括10~20個語句。這是多個知識點的綜合應用和培養(yǎng)學習者計算機思維的基本訓練。
程序設計題型很多,從大量的傳統(tǒng)題目和現實中可以找到許多原型。但是為了配合項目教學,需要構造更加合理的、更多來源于現實的題目,甚至有些題目來源于項目基本構造模塊。這一級教學目標達到“代碼和程序”目標級別,要求所有學習者均應達標。構題方法可以有以下幾種:
(1)直接來源于傳統(tǒng)經典保留教學題。如,有一些經典數學問題,經典現實問題等。(2)改編傳統(tǒng)題目。有些題目編寫出的程序基本符合教學要求,但是題目難以反映飛速發(fā)展的現實社會,或缺少科學和實際背景等,這種情況可改編原有題目。有些題目來源較好,如來源于前端科研,或來源于專業(yè)問題,符合學生專業(yè)背景,但程序實現較長或較難,則需要改編題目為多個小題,縮小程序或變?yōu)閹讉€相關的題目。
(3)創(chuàng)造新題。可結合所教學生專業(yè),或某些現實情況創(chuàng)造新題,實踐教學知識點。更重要的是,結合項目教學,教師和學習者在熟悉項目設計意圖的前提下,圍繞項目產生新的教學題目和實訓題目。
兩個層次在課程學習過程中,并不是不同時期的學習內容,應該并行進行。
初級篇
第一章
C語言學習基礎之技能目標
第一層次
1、練習C源程序文件的創(chuàng)建(編輯輸入、存儲編譯、簡單運行調試)過程,掌握使用VC集成開發(fā)環(huán)境處理一個C語言程序的步驟:編輯、編譯、連接和運行。
要求:
(1)閱讀程序,在VC集成開發(fā)環(huán)境中輸入、編譯、連接并運行簡單C語言程序。(2)閱讀并運行簡單C語言程序,輸入并記住C語言的頭文件包含CODE: #include “stdio.h” 或 #include
2、閱讀并運行簡單C語言程序,記住C語言主函數的構成。
3、閱讀并運行簡單C語言程序,記住使用printf語句輸出信息的方法。
4、閱讀并運行簡單C語言程序,理解轉義字符(n、t)在printf語句中的作用。
5、區(qū)分C語言中的命令和語句。
6、觀察錯誤提示信息,并根據提示信息尋找程序錯誤。
要求:對一些簡單的語法錯誤,如在頭文件后加“;”或在語句后漏輸入“;”或關鍵字拼寫錯誤等的錯誤提示信息。
第二層次
7、準確描述求解問題的六步法。例:寫出求長方體體積的六步法。
8、模擬例題編寫程序,使用printf語句輸出信息。
要求:可以輸出一些圖形、軟件設計界面、某些特殊信息、提示信息、換行等。
第二章
C程序設計初步之技能目標
第一層次
1、練習簡單變量的定義及其初始化。
2、練習簡單字符指針變量的定義及其初始化。
3、練習字符一維數組和數值一維數組的定義。
要求:練習各種類型變量的定義及其初始化,記住變量定義語句在程序中的位置。
4、練習符號常量的定義。
5、確定問題領域的數據及其類型。
要求:根據給定的問題確定所需定義的數據及其類型。如:計算一個三角形面積時,需要定義哪些數據,類型如何確定?
6、分析復合賦值運算表達式的值。
7、求余運算的應用。例1:判斷奇偶數據。
例2:拆分整數的各位數字。(需要使用除運算)
8、分析自加、自減運算符作為前綴運算符時表達式和變量的值。
9、分析自加、自減運算符作為后綴運算符時表達式和變量的值。10、11、12、13、14、15、16、量。
要求:
(1)熟悉無(帶)符號十進制、無符號八進制和無符號十六進制輸出結果形式。(2)各種附加格式說明符的使用。
17、量。
要求:
(1)熟悉e(E)、g和f格式輸出的結果形式。(2)各種附加格式說明符的使用。18、19、20、21、要求:
(1)輸入格式控制字符串的書寫與表示。(2)程序運行時各種數據輸入方式的練習。
22、使用多條printf語句輸出不同類型的常(變)量。練習各種轉義字符的輸出,熟悉其輸出或控制效果。使用printf語句輸出C語言中的字符型常(變)量。使用printf語句輸出C語言中的字符串。使用scanf語句實現各種類型數據的輸入。使用格式化輸出語句(printf語句)以不同格式輸出C語言中的實型常(變)寫出給定數學式子的算術表達式。分析逗號表達式的值。
分析簡單指針變量和普通變量的關聯(lián)。分析賦值運算中的類型轉換。分析算術運算中的類型轉換。
使用強制類型轉換運算符實現數據類型的轉換。
使用格式化輸出語句(printf語句)以不同格式輸出C語言中的整型常(變)例:使用printf語句,在屏幕上顯示某個學生的學號、姓名、性別、年齡和某門課程的成績。
23、使用一條printf語句輸出不同類型的常(變)量。
例:使用printf語句,在屏幕上顯示某個學生的學號、姓名、性別、年齡和某門課程的成績。
24、使用printf語句和scanf語句實現人機交互。
例:使用printf語句和scanf語句,從鍵盤輸入某個學生的學號、姓名、性別、年齡和某門課程的成績,并在屏幕上輸出。25、26、27、28、29、使用getchar函數實現單個字符的輸入,并與printf函數比較。使用putchar函數實現單個字符的輸出,并與printf函數比較。使用gets函數實現字符串的輸入,并與printf函數比較。使用puts函數實現字符串的輸出,并與printf函數比較。使用數學函數表示給定的數學式子。
要求分別練習以下函數:
(1)使用sqrt函數求一個實數的平方根。(2)使用fabs函數和abs函數求一個數的絕對值。(3)使用pow函數求一個數的n次冪。(4)使用三角函數sin求某個弧度的正弦值。(5)使用三角函數cos求某個弧度的余弦值。(6)使用三角函數tan求某個弧度的正切值。(7)使用三角函數atan求某個弧度的余切值。30、過程。閱讀并運行有一個main函數和一個自定義無參函數的程序,分析程序的執(zhí)行第二層次
31、簡單算法練習。
例:編寫應用兩兩交換算法處理問題的程序。要求:
(1)利用簡單變量實現。
(2)利用指針變量實現。
32、編程實現對多個數據的處理。
要求:練習加、減、乘、除、求余的運算。
33、編程實現數據的分離和整合。
例1:從鍵盤輸入一個三位數,分離出它的百位、十位和個位數字。例2:從鍵盤輸入三個一位數,組成一個三位數。
34、編程實現字符轉換。例1:從鍵盤輸入一個小(大)寫字母,轉換成大(小)寫字母后輸出。例2:從鍵盤輸入一個字母,變換為其后續(xù)的第n個字符并輸出。
35、編程實現簡單順序結構程序設計。
例1:已知某幾何體數據,求面積、體積等。
例2:已知若干某類型數據,求和、積,并按要求格式輸出。例3:任意輸入一個字符,輸出此字符對應的ASCII碼。
例4:設銀行定期存款的年利率rate為2.25%,并已知存款期為n年,存款本金為capital元,試編程計算n年后的本利之和deposit。要求定期存款的年利率rate、存款期n和存款本金capital均由鍵盤輸入。
例5:求5!(5的階乘)。
36、編寫有一個main函數和一個自定義無參函數的程序。
第三章
控制結構和數據文件之技能目標
第一層次
1、用C語言合法的表達式構造給定問題的條件。要求:
(1)用關系表達式表示條件。(2)用邏輯表達式表示條件。
2、分析給定表達式的值。要求:
(1)分析給定關系表達式的值。(2)分析給定邏輯表達式的值。
(3)分析邏輯運算中的“短路”現象及影響。(4)分析給定條件表達式的值。(5)分析給定復雜表達式的值。
3、構造switch語句的條件,并分析其取值結果。
4、閱讀并運行由條件表達式構成的選擇結構程序,分析選擇結構程序的執(zhí)行過程。
5、閱讀并運行由if語句構成的單分支選擇結構程序,分析選擇結構程序的執(zhí)行過程。
6、閱讀由if語句構成的單分支選擇結構程序,理解復合語句的作用。
7、閱讀由if語句構成的單分支選擇結構程序,理解空語句的作用。
8、閱讀并運行由if—else語句構成的雙分支選擇結構程序,分析選擇結構程序的執(zhí)行過程。
9、閱讀選擇結構程序,理解數值型數據作為條件時,程序的執(zhí)行過程。
10、執(zhí)行過程。
11、閱讀并運行switch語句構成的多分支選擇結構程序,分析選擇結構程序的執(zhí)閱讀并運行由if—else語句構成的多分支選擇結構程序,分析選擇結構程序的行過程。12、13、14、15、16、17、18、19、20、行過程。21、22、23、24、25、26、27、28、29、30、31、32、33、分析switch語句中break語句的作用。
閱讀并運行嵌套的選擇結構程序,分析選擇結構程序的執(zhí)行過程。閱讀并運行由while語句構成的循環(huán),分析循環(huán)結構程序的執(zhí)行過程。閱讀由while語句構成的循環(huán),分析空語句的作用。
閱讀并運行由do-while語句構成的循環(huán),分析循環(huán)結構程序的執(zhí)行過程。閱讀并運行由for語句構成的循環(huán),分析循環(huán)結構程序的執(zhí)行過程。分析計數式循環(huán)的循環(huán)控制。分析標記式循環(huán)的循環(huán)控制。
閱讀并運行由三種循環(huán)語句構成的嵌套結構循環(huán)程序,分析循環(huán)結構程序的執(zhí)分析break語句在循環(huán)體中的作用。分析continue語句在循環(huán)體中的作用。循環(huán)次數的確定。練習文件指針的定義。使用fopen函數打開文件。
使用fscanf函數實現文件的讀操作。使用fprintf函數實現文件的寫操作。使用fclose函數關閉文件。使用feof函數判斷文件是否結束。使用結束符判斷文件是否結束。
閱讀簡單的文件操作程序,分析程序的功能。閱讀并運行自定義無參函數,分析程序的執(zhí)行過程。觀察錯誤提示信息,并根據提示信息尋找程序錯誤。要求:是一些邏輯錯誤,如判斷水仙花數時,將“= =”號輸成“=”號等。
第二層次
34、應用if語句編寫單分支選擇結構程序。
例:現有3個學生,要求按年齡從小到大(升序)排列。
35、應用if—else語句編寫雙分支選擇結構程序。
例1:判斷一個數是否是水仙花數。例2:判斷某年是否是閏年。
36、應用if—else語句編寫多分支選擇結構程序。
例:判斷從鍵盤輸入的字符屬于哪一類字符。
37、應用switch語句編寫多分支選擇結構程序。
例:設計星期查詢程序。編寫程序,從鍵盤輸入1~7的整數,代表數字星期,將其轉換為英文星期。
38、編寫嵌套的選擇結構程序。
例:編寫程序,求一元二次方程的根。39、40、編寫程序計算某個分段函數。編寫求極值程序。
例:求兩個(或多個)數中的最大(小)數。
41、應用while語句編寫循環(huán)結構程序。
例:求某班所有學生某門課程的平均值。
42、應用do—while語句編寫循環(huán)結構程序。
例:某系統(tǒng)用戶界面的設計。
43、應用for語句編寫循環(huán)結構程序。
例:求所有的水仙花數。
44、應用三種循環(huán)語句編寫嵌套的循環(huán)結構程序。
例:打印九九乘法表。45、46、47、48、49、在編寫循環(huán)結構程序中應用break語句。在編寫循環(huán)結構程序中應用continue語句。編寫求多個數累加和算法程序。編寫求累乘積算法程序。編寫求累加和和累乘積算法程序。50、51、編寫求均值算法程序。編寫分類統(tǒng)計程序。
例:在成批信息處理中,我們經常會對某些信息進行分類統(tǒng)計。編寫程序,統(tǒng)計從鍵盤輸入的一串字符中,字母字符、數字字符、空格字符以及其它字符的個數。
52、利用遞推算法編寫程序解決問題。
例:求fibonacci數列的前30項。
53、利用枚舉算法編寫程序解決問題。
例1:找出所有的水仙花數。例2:找出所有的完全數。
54、利用輾轉相除算法編寫程序解決問題。
例:用輾轉相除算法求兩個數的最大公約數。
55、使用標記變量法編寫程序解決問題。
例:判斷某個數是否是素數。56、57、58、編寫簡單的自定義無參函數,實現簡單的函數調用。編寫文件操作程序,實現批量數據的讀寫。經典數學公式求解問題。
例:利用公式求∏的值。
中級篇
第四章
函數模塊化編程之技能目標
第一層次
1、使用隨機函數rand和種子函數srand產生隨機數。
2、分析函數首部的合法性。要求:
(1)分析函數參數的個數和類型。(2)分析函數的返回值類型。
3、閱讀并運行有返回值函數的程序,分析程序的執(zhí)行過程。
4、分析常量或簡單變量作實參時,函數間數據通過值傳遞的調用方式。
5、分析變量地址或指針作實參時,函數間的數據通過地址傳遞的調用方式。
6、閱讀并運行包含一般函數調用的多函數程序,分析程序的執(zhí)行過程。
7、閱讀并運行包含函數嵌套調用的多函數程序,分析程序的執(zhí)行過程。
8、閱讀并運行包含函數遞歸調用的多函數程序,分析程序的執(zhí)行過程。
9、比較用auto變量和static變量編寫的程序。10、11、12、13、14、15、閱讀并運行用extern關鍵字定義的全局變量程序,分析程序的執(zhí)行過程。閱讀并運行包含局部變量、全局變量的程序。閱讀并運行包含同名的局部變量和全局變量的程序。閱讀并運行簡單宏定義及其調用程序。閱讀并運行帶參宏定義及其調用程序。閱讀并運行多源程序文件程序,分析執(zhí)行過程。
第二層次16、17、18、19、20、21、22、23、24、25、26、27、編寫求極值算法的通用函數,利用通用函數實現求極值。編寫求累加和算法的通用函數,利用通用函數實現求累加和。編寫求累乘積算法的通用函數,利用通用函數實現求累乘積。編寫求平均值算法的通用函數,利用通用函數實現求平均值。編寫遞推算法函數解決問題,利用通用函數實現此類問題的求解。編寫枚舉算法函數解決問題,利用通用函數實現此類問題的求解。編寫輾轉相除算法函數解決問題,利用通用函數實現此類問題的求解。編寫有局部變量和全局變量的程序。編寫有靜態(tài)變量的程序。編寫有多源程序文件的簡單程序。編寫帶參宏定義程序。經典名題。
例1:編寫程序,連續(xù)輸出相鄰的15對孿生素數,孿生素數是指相鄰的兩個數都是素數。
例2:漢諾塔。有三個針a,b,c,其中a針上有64個盤子,盤子大小不等。大的在下,小的在上,要求把這64個盤子從a針移到c針,在移動過程中可以借助b針,每次只允許移動一個盤,且在移動過程中在三根針上都保持大盤在下,小盤在上,要求編寫程序打印出移動的步驟。
高級篇
第五、六章
數組與指針之技能目標
第一層次
1、練習一維數組的定義及初始化。
例:利用一維數組存儲多個相關數據,如多個實驗數據的輸入及存儲。
2、練習一維數組元素的引用。
3、分析一維數組在內存中所占的字節(jié)數。
4、練習一級指針定義和一維數組的關聯(lián)。
5、練習一維數組元素地址的各種表示方法,分析元素的地址和數組的地址。
6、練習一維數組元素的各種表示方法。
7、練習自加和自減運算符實現指針在數組空間的移動操作。
8、結合指針,應用for循環(huán)實現一維數組元素的輸入輸出。
9、結合指針,應用fscanf函數和fprintf函數實現一維數組元素值的批量輸入輸出。10、11、12、13、14、15、16、17、18、19、20、21、22、23、24、25、結合指針,應用一維數組實現求極值的操作。結合指針,應用一維數組實現求和的操作。結合指針,應用一維數組實現求平均值的操作。練習二維數組的定義及初始化。練習二維數組元素的引用。分析二維數組的元素個數。
二維數組定義時省略第一維的說明,確定第一維的大小。練習二級指針定義和二維數組的關聯(lián)。練習行指針的定義及其與二維數組的關聯(lián)。練習指針數組的定義及其與二維數組的關聯(lián)。
分析指向不同維數組的指針,該指針自加和自減運算的值及其指向。練習二維數組元素地址的各種表示方法,分析元素的地址和數組的地址。練習二維數組元素的各種表示方法、引用方法。練習字符數組的定義及其初始化。
利用指針,應用雙重for循環(huán)實現二維數組的輸入輸出。利用指針,應用二維數組求某(所有)行元素的最大(小)值。26、27、28、29、30、31、32、利用指針,應用二維數組求某(所有)列元素的最大(小)值。利用指針,應用二維數組求某(所有)行元素的和(平均)值。利用指針,應用二維數組求某(所有)列元素的和(平均)值。應用行指針引用二維數組元素做多種處理。應用指針數組引用二維數組元素做多種處理。對指定位置元素的操作(簡單元素定位問題)。使用一維字符數組存儲、輸入、輸出字符串。
例:一個人的姓名存儲、輸入及輸出。33、34、35、36、程。37、38、39、40、41、42、43、44、45、46、47、48、49、50、51、52、53、閱讀并運行行指針變量作為形參指向二維數組的程序,分析程序的執(zhí)行過程。練習指針函數的定義。
閱讀并運行指針數組作指針型函數參數的程序,分析程序的執(zhí)行過程。練習指向函數的指針的定義和賦值。
閱讀并運行指向函數的指針作函數參數的程序,分析程序的執(zhí)行過程。閱讀并運行指針數組名作函數參數的程序,分析程序的執(zhí)行過程。閱讀并運行指向字符串的指針作函數參數的程序,分析程序的執(zhí)行過程。使用fgetc函數實現文件的讀字符操作。使用fputc函數實現文件的寫字符操作。使用fgets函數實現文件的讀字符串操作。使用fputs函數實現文件的寫字符操作。使用rewind函數實現文件指針的定位操作。使用ftell函數獲取文件指針的當前位置。使用fseek函數實現文件指針的定位操作。使用fread函數實現文件的讀操作。使用fwrite函數實現文件的寫操作。
練習動態(tài)存儲分配函數,包括malloc和calloc函數。區(qū)分用一維字符數組存儲字符串時,數組的大小和字符串的長度。應用標準輸入輸出函數實現字符串的輸入和輸出。
應用字符串處理函數操作字符數組,包括strcpy、strcmp、strlen、strcat等。閱讀并運行指向一維數組的指針變量作函數參數的程序,分析程序的執(zhí)行過54、55、閱讀文件操作程序,分析程序的功能。
觀察指針和數組操作中的錯誤提示信息,并根據提示信息尋找程序錯誤。
第二層次56、57、58、59、60、61、62、63、64、65、66、67、68、結合指針,應用一維數組和順序查找算法實現數據的查找。結合指針,應用一維數組和折半查找算法實現數據的查找。結合指針,應用一維數組實現數據的有序插入。結合指針,應用一維數組實現數據在指定位置的插入。結合指針,應用一維數組實現指定位置或指定數據的刪除。結合指針,應用一維數組實現數據的逆置。結合指針,應用一維數組實現分類數據的統(tǒng)計。
結合指針,應用一維數組和冒泡排序算法實現數據的排序。結合指針,應用一維數組和選擇排序算法實現數據的排序。結合指針,應用二維數組實現矩陣的加操作。結合指針,應用二維數組實現矩陣的減操作。結合指針,應用二維數組實現矩陣的轉置操作。
結合指針,應用二維數組對矩陣的某些元素進行某種操作。
例:將3*3矩陣右下半三角元素全部置0。69、70、利用指針移動和比較運算,編程實現字符串的逆置。利用一維數組名作為實參,編寫自定義函數解決問題。
例1:通過函數求數組的最大值,主函數調用并輸出結果。例2:通過函數將數組按升序排序,主函數調用并輸出結果。71、72、73、利用一維數組元素作為實參,編寫自定義函數解決問題。編寫自定義頭文件,并在程序中包含該頭文件。
利用二維數組名作為實參,編寫自定義函數解決實際問題。
例:通過函數求3行4列二維數組所有元素的累加和,在主函數調用并輸出結果。74、利用字符數組名作為實參,編寫自定義函數解決實際問題。
例:通過函數將字符串中的所有小寫字母轉換成對應的大寫字母,在主函數調用并輸出結果。75、76、利用指針數組作指針型函數參數,編寫程序。編寫指向函數的指針作函數參數的程序。77、78、79、80、81、82、83、編寫指針數組名作函數參數的程序。編寫指針指向字符串的程序。
應用字符數組和指針編寫字符串比較函數。應用字符數組和指針編寫字符串復制函數。應用字符數組和指針編寫求字符串長度函數。應用字符數組和指針編寫字符串連接函數。利用指針和數組,編寫文件操作程序處理批量數據。
第七、八章
結構體、聯(lián)合體及用戶自定義類型之技能目標
第一層次1、2、3、4、5、6、7、8、9、10、11、12、13、14、15、練習結構體類型的定義。練習結構體類型變量的定義。練習結構體數組的定義。
練習指向結構體變量的指針的定義。練習結構體類型的嵌套定義。練習結構體變量單個成員的引用。練習結構體變量的整體引用。練習結構體類型變量的初始化。練習結構體數組的初始化。練習結構體數組元素的引用。練習使用指針引用結構體成員。練習指向結構體數組的指針的定義。練習使用指針引用結構體數組元素成員。練習可以實現鏈表的結構體定義語句。寫出鏈表中兩個節(jié)點互換的實現語句。
要求:互換后鏈表保存連續(xù)。16、17、18、19、寫出鏈表中兩個節(jié)點間插入一個節(jié)點的實現語句。寫出在鏈表末尾插入一個節(jié)點的實現語句。寫出鏈表中刪除一個節(jié)點的實現語句。
閱讀并運行有關結構體和文件的程序,分析程序的執(zhí)行過程。20、21、22、23、24、25、26、27、28、29、30、練習共用體類型的定義。練習共用體類型變量的定義。練習共用體變量的引用。練習枚舉類型的定義。
練習使用typedef定義數據類型。分析結構體變量所占字節(jié)數。分析共用體變量所占字節(jié)數。
分析結構體變量作為實參時,對應的形參和實參間數據的傳遞。分析返回值為結構體類型的函數。分析共用體類型變量的值。
觀察錯誤提示信息,并根據提示信息尋找程序錯誤。
第二層次31、32、33、34、35、36、37、38、39、編程用尾插法實現鏈表的建立。編程用頭插法實現鏈表的建立。編程輸出鏈表中的結點。編程統(tǒng)計鏈表的結點個數。編程查找鏈表中某個結點。編程實現鏈表的插入。編程實現鏈表的刪除。
應用指向結構體變量的指針作為參數,編寫自定義函數。編寫有關結構體和文件的程序。
例:建立一個班級的人員情況表,其數據項應包括學號、姓名、百分制記分的3門課程的成績,計算該班5名學生的每門課程的平均成績,按平均成績進行排序處理,并將原有數據和排序后的數據存入文件stdu.txt中。
第五篇:C語言程序設計課程教學設計
C語言程序設計課程教學設計
蘇小紅
一 課程內容體系 :
基本描述
課程名稱: C 語言程序設計
英文譯名 : C PROGRAMMING LANGUAGES 總 學 時: 50 ; 講課學時: 30 ; 實驗學時 : 0 ; 上機學時 : 30 授課對象 :非計算機專業(yè) 本科生 授課單位 :計算機科學與技術學院 主講教師 :蘇小紅等
先修課程 :高等數學,計算方法 課程要求 :必修課 課程分類 :專業(yè)基礎課 開課學期 : 2
教學定位 :
本課程為專業(yè)基礎課,屬我校所有理工科專業(yè)本科教學計劃中的主要必修課程之一。在計算機教育方面,C 語言是為數不多的與國外保持內容同步的課程之一,可見,它在本科生教學中的地位之重要不言而喻。由于 C 語言是許多后續(xù)專業(yè)課程的基礎,因此,在本科生教學體系中中,C 語言教學僅是起點,而非終點。本著面向未來的精神,本課程的教學宗旨是要努力把 C 語言從應試課程轉變?yōu)橐环N實踐工具,主要目的不再局限于使學生單純地了解和掌握 C 語言的基本語法規(guī)范,而是要致力于培養(yǎng)學生運用 C 語言解決實際問題的編程能力,以 C 語言為工具,介紹程序設計的基本思想和方法,培養(yǎng)學生無論以后在學習、工作中使用什么語言編程,都能靈活應用這些思想和方法的能力。
知識點與學時分配 :
第 1 章 程序設計 ABC(1 學時)
計算機與人之間的關系、計算機與程序設計語言之間的關系、程序設計語言的故事、程序設計語言的工作機理。
第 2 章 數據類型、運算符與表達式(3 學時)
為什么引入數據類型、C 語言基本數據類型、常量、變量、算術運算符、關系運算符、邏輯運算符、賦值運算符、增 1 減 1 運算符、強制類型轉換運算符、位運算符、逗號運算符、運算符的優(yōu)先級和結合性、各種運算表達式。
第 3 章 簡單的 C 程序設計(2 學時)
C 語句分類、表達式語句、復合語句和空語句、字符輸入輸出函數、格式輸入輸出函數。第 4 章 程序的控制結構(5 學時)
算法的概念及其描述方法、條件語句、循環(huán)語句、流程轉移控制語句(goto、continue 和 break)、自頂向下、逐步求精的結構化程序設計方法。第 5 章 函數(4 學時)
程序結構的藝術、函數定義、函數調用、函數返回值、函數原型、參數傳遞、變量的作用域和存儲類,函數封裝、模塊分解原則、模塊化程序設計方法。第 6 章 數組(4 學時)
一維數組、二維數組、向函數傳遞一維數組、向函數傳遞二維數組、字符數組、字符串處理函數。第 7 章 指針(4 學時)
指針的概念、為什么引入指針的概念、變量的指針作函數參數、字符指針做函數參數、指針和數組之間的關系、指針數組、代碼風格、防御性程序設計。第 8 章 結構體和共用體(4 學時)
結構體類型、結構體變量、結構體數組、向函數傳遞結構體指針、共用體類型。第 10 章 文件操作(2 學時)
計算機中的流、文件、基本文件操作、高級文件操作。復習總結(1 學時)