鄧紅
【摘要】針對高職院校師生在教授和學(xué)習(xí)C語言中面臨的畏難困境,提出了基于微課的教學(xué)方法及其組織策略。該方法在教學(xué)設(shè)計上關(guān)注學(xué)生的注意力、切需性[1]、自信心,從而進一步有效的提高學(xué)生學(xué)習(xí)效率和自主學(xué)習(xí)能力。本文以printf()函數(shù)的微課為例,闡述了微課教學(xué)設(shè)計的過程與應(yīng)用策略。
【關(guān)鍵詞】微課 高職 C語言 printf( )
【基金項目】全國教育信息技術(shù)研究課題(142741818)。
【中圖分類號】TP312.1-4 【文獻標識碼】A 【文章編號】2095-3089(2015)36-0016-02
1.引言
C語言程序設(shè)計是計算機類相關(guān)專業(yè)的核心基礎(chǔ)課程,是整個程序設(shè)計課程體系的基石,是培養(yǎng)學(xué)生抽象思維和程序設(shè)計能力的起點。然而高職院校的學(xué)生普遍基礎(chǔ)知識薄弱,學(xué)生普遍認為C 語言枯燥難學(xué)、概念復(fù)雜、使用靈活、容易出錯。學(xué)生的畏難、厭學(xué)情緒,使得教學(xué)困難重重。從以往的教學(xué)情況和計算機等級考試的較低通過率來看,學(xué)生對C語言的掌握情況不理想。因此為了更好的提高教師的教學(xué)質(zhì)量,學(xué)生的自主性和學(xué)習(xí)效率,應(yīng)該延展課堂空間。
2.微課簡介
微課又名“微課程”,是“微型視頻網(wǎng)絡(luò)課程”的簡稱,它是以微型教學(xué)視頻為主要載體,針對某個學(xué)科知識點(如重點、難點、疑點、考點等)或教學(xué)環(huán)節(jié)(如學(xué)習(xí)活動、主題、實驗、任務(wù)等)而設(shè)計開發(fā)的一種情景化、支持多種學(xué)習(xí)方式的在線視頻課程資源[2]。
本文選取C 語言程序設(shè)計課程中學(xué)習(xí)時重要的輸出函數(shù)——printf函數(shù)作為探討內(nèi)容,并以在課堂上開展微課程的形式進行這次堂課的設(shè)計。
3.格式函數(shù)教學(xué)設(shè)計
輸出函數(shù)是C 語言的重點,而格式輸出函數(shù)printf()函數(shù)是輸出函數(shù)中的難點,格式控制內(nèi)容多,復(fù)雜繁瑣,使用靈活。學(xué)生在學(xué)習(xí)時往往覺得難以掌握,尤其是在使用修飾符時會出現(xiàn)困難(本次課程教學(xué)之前,學(xué)生已經(jīng)學(xué)習(xí)了數(shù)據(jù)類型以及數(shù)據(jù)之間的運算)。因此,在課程設(shè)計時要注重知識的承上啟下,在授課方式上注意由淺入深,化靜態(tài)為動態(tài),從表象探規(guī)律,步步引導(dǎo),培養(yǎng)學(xué)生舉一反三的創(chuàng)新能力,達到拋磚引玉的目的。
教學(xué)目標:
知識目標:掌握printf語句的調(diào)用方法;理解printf語句中格式的表達。
能力目標:利用printf函數(shù)靈活實現(xiàn)輸出。
素養(yǎng)目標:通過知識點的學(xué)習(xí),引導(dǎo)學(xué)生逐步建立結(jié)構(gòu)程序設(shè)計的思維模式。
情感目標:引導(dǎo)學(xué)生學(xué)會交流與合作學(xué)習(xí),培養(yǎng)學(xué)生對未來工作的責任心和自信心。
重難點分析:
重點:printf函數(shù)的格式控制。難點:各類修飾符的使用。
教學(xué)活動設(shè)計:
本微課設(shè)計采用教具演示法將printf的函數(shù)結(jié)構(gòu)進行直觀演示,采用任務(wù)驅(qū)動教學(xué)法、溫故知新教學(xué)法和試誤教學(xué)法對格式輸出函數(shù)的應(yīng)用進行詳細講解。教學(xué)過程中關(guān)注學(xué)生的注意力、切需性、自信心和滿足感。教學(xué)形式綜合運用多媒體技術(shù)。具體講授過程分成以下幾個環(huán)節(jié)。
3.1 引入
首先讓學(xué)生自己學(xué)習(xí)微課程。微課程是以視頻的形式讓學(xué)生學(xué)習(xí),如何在一開始就抓住學(xué)生的注意力以期做到引人入勝,這是教學(xué)設(shè)計時需要思考的難點之一即抓住學(xué)生的注意力。本次課中,通過圖片展示各類輸出現(xiàn)象,以提問的形式:在C語言中我們?nèi)绾螌崿F(xiàn)信息的輸出呢?讓學(xué)生帶著問題專心地進入接下來的學(xué)習(xí)。給出答案:通過調(diào)用標準庫函數(shù)中提供的輸出函數(shù)來實現(xiàn)語句如下:
#include
接下來很自然的轉(zhuǎn)入本課正題,學(xué)習(xí)其中輸出函數(shù)中使用最多的格式輸出函數(shù)printf(),同時解決了為什么要學(xué)習(xí)和學(xué)習(xí)什么內(nèi)容兩個問題。
3.2 知識準備
由于格式輸出函數(shù)中的格式字符和修飾符種類繁多,形式多樣,難以掌握,因此根據(jù)高職院校C語言的教學(xué)大綱,將常使用的格式字符和修飾符進行整理和分類,減少學(xué)生學(xué)習(xí)的難度和畏學(xué)的情緒,并且便于理解和記憶。本次課程設(shè)計為基礎(chǔ)核心課,在掌握常見格式字符和修飾符基礎(chǔ)上再依此類推,學(xué)生在學(xué)有余力的情況下再學(xué)習(xí)其它提升版微課。
1)格式輸出函數(shù)的格式
printf(“格式控制”,輸出項1,輸出項2,…);
(1)格式控制包含的信息
字符輸出:提供需要原樣輸出的文字及字符或者轉(zhuǎn)義序列
格式說明:為輸出項提供輸出格式說明
(2)輸出表列:是需要輸出的一些數(shù)據(jù),可以是常量、變量或表達式
2)格式說明
%[修飾符] 格式字符
(1)格式字符
圖1 常用格式字符舉例
(2)修飾符 % [標志][輸出最小寬度][.精度][長度] 格式字符
圖2 常用修飾符分類
3.3 輸出舉例
分析下面程序輸出結(jié)果
#include
main( )
{
int a=1234;
float f=123.456;
printf(“%-8d\n”,a);
printf(“% +10.2f\n”,f);
}
建議學(xué)生暫停微課視頻,引導(dǎo)學(xué)生自己分析輸出的結(jié)果,并與老師給出的結(jié)果和老師的詳細講解相比較,檢查自己的解題思路和結(jié)果有無錯誤之處。由于靜態(tài)的語句學(xué)生不能看到它的結(jié)果,因此通過執(zhí)行VC 程序來動態(tài)展示語句運行結(jié)果,并在監(jiān)視窗口觀看變量的值,這樣更直接客觀,進一步理解格式輸出函數(shù),內(nèi)化知識。
3.4 探討
在理解的基礎(chǔ)知識上,進一步提出學(xué)生在使用格式函數(shù)的幾點注意事項,并給出例子,分別配以學(xué)生常見的錯誤答案,例如:
#include
main( )
{
int i=8,j=10,m=0,n=0;
printf(“%d,%d, %d,%d\n”,i,j,m=++i,n=j++);
}
答案一:8, 11, 9,10
答案二:9,10,9,10
再執(zhí)行VC 程序來動態(tài)展示語句運行結(jié)果:9,11,9,10
此時超出預(yù)期的運行結(jié)果,必將讓學(xué)生印象深刻。進一步給出結(jié)論:如果“輸出表列”是表達式,則輸出列表中的求值順序,不同的編譯系統(tǒng)不一定相同,可以從左到右,也可從右到左,Turbo C,VC++6.0 都是按從右到左進行的,而LCC是從左到右的。上例的結(jié)果在LCC編譯器結(jié)果是:8, 10, 9, 10
3.5 新知鞏固
將本節(jié)課的新理論知識點以選擇題、填空題、判斷題等形式,來檢測學(xué)生的學(xué)習(xí)效果和知識點的掌握的情況,并在學(xué)生易出錯的地方重點講解下。最后給出課后作業(yè),確保學(xué)生獨立完成。
4.微課的應(yīng)用策略
制作微課的意義在于如何組織教與學(xué)的過程,使得微課作為課堂教學(xué)有效的資源,以達到最佳的教學(xué)效果。因此,課前教師方面應(yīng)充分備課,做到有的放矢,微課的學(xué)習(xí)讓學(xué)生能夠感知或理解相應(yīng)的知識。課堂則是學(xué)生“吸收內(nèi)化” 的過程,教師根據(jù)微課學(xué)習(xí)反饋,給予有針對性的輔導(dǎo),學(xué)生之間相互交流討論,將知識點內(nèi)化[3]。課后則是學(xué)生知識點或技能的鞏固過程,進行有效的練習(xí),達到本節(jié)課的學(xué)習(xí)目標,重點清理重難點目標。而教師應(yīng)該及時做好教學(xué)反思,通過學(xué)習(xí)平臺或課后作業(yè)等了解學(xué)生的學(xué)習(xí)情況,進而對教學(xué)過程進行調(diào)整。本文僅從C語言微課的應(yīng)用方面,談?wù)勅绾谓M織實施教學(xué)的過程:
(1)確立學(xué)習(xí)目標