王曉燕
摘要:C語言是江蘇省對口單招計(jì)算機(jī)專業(yè)的考試科目,中職學(xué)生在C語言學(xué)習(xí)上缺乏學(xué)習(xí)興趣,建構(gòu)主義理論提出,知識(shí)并不是教師通過課堂教授給學(xué)生的,而是學(xué)生在既定情境過程中,通過教師與同學(xué)的幫助,利用相關(guān)的學(xué)習(xí)輔助資料,經(jīng)過意義構(gòu)建的方式來獲得的。學(xué)生獲得知識(shí)量的多少與學(xué)習(xí)者構(gòu)建能力有著密切的關(guān)系,而不與學(xué)生的記憶能力與背誦能力有著直接的關(guān)系。想要學(xué)生獲得源源不斷的動(dòng)力就需要讓學(xué)生對所學(xué)知識(shí)產(chǎn)生興趣,只有當(dāng)學(xué)生對所學(xué)知識(shí)展現(xiàn)出較大興趣時(shí),才會(huì)以更加集中的思想來進(jìn)行學(xué)習(xí)與分析,從而主動(dòng)去構(gòu)建知識(shí)。在教學(xué)實(shí)踐中采用多種教學(xué)方法培養(yǎng)學(xué)生程序設(shè)計(jì)興趣。
關(guān)鍵詞:學(xué)習(xí)興趣;創(chuàng)設(shè)情境;設(shè)置陷阱
一、什么是學(xué)習(xí)興趣
從教育心理學(xué)的角度來說,興趣是一個(gè)人傾向于認(rèn)識(shí)、研究獲得某種知識(shí)的心理特征,是可以推動(dòng)人們求知的一種內(nèi)在力量。學(xué)習(xí)興趣分為直接學(xué)習(xí)興趣與間接學(xué)習(xí)興趣兩種。前者是由所學(xué)材料或?qū)W習(xí)活動(dòng)──學(xué)習(xí)過程本身直接引起的。后者是由學(xué)習(xí)活動(dòng)的結(jié)果引起的。間接學(xué)習(xí)興趣具有明顯的自覺性。當(dāng)一個(gè)人意識(shí)到學(xué)習(xí)的社會(huì)意義或與自己的關(guān)系時(shí),學(xué)習(xí)興趣就隨之產(chǎn)生。學(xué)生對某一學(xué)科有興趣,就會(huì)持續(xù)地專心致志地鉆研它,從而提高學(xué)習(xí)效果。
二、對口單招學(xué)生學(xué)習(xí)興趣缺乏原因
對口單招是普通高校面向中等職業(yè)學(xué)校的招生,難度低于普通高考,為中職學(xué)生考入高等學(xué)校提供一次機(jī)會(huì),近幾年對口單招招生規(guī)模逐步擴(kuò)大。2010年,江蘇省對口單招計(jì)算機(jī)應(yīng)用專業(yè)把C語言程序設(shè)計(jì)列入考試科目,共占分值150分(總分1 000分),所占分值比例較大,對學(xué)生高考成績起著至觀重要的作用。C語言課程教學(xué)難度較大,主要表現(xiàn)在以下幾個(gè)方面。第一,教學(xué)內(nèi)容難度大。C語言課程的基本概念抽象、理論性較強(qiáng),涉及語法復(fù)雜,擁有大量數(shù)據(jù)類型與運(yùn)算符,不同數(shù)據(jù)類型相對應(yīng)的規(guī)則數(shù)量較多,并且十分容易混淆。第二,C語言課程教學(xué)需要進(jìn)行一定的實(shí)踐訓(xùn)練。在C語言課程教學(xué)中,不單單要開展基礎(chǔ)的理論教學(xué),同時(shí)還須要給予學(xué)生一定的實(shí)驗(yàn)課程實(shí)踐訓(xùn)練與項(xiàng)目設(shè)計(jì),讓學(xué)生能夠以理論指導(dǎo)實(shí)踐,用實(shí)踐檢驗(yàn)理論。第三,在中等院校接受教育的學(xué)生學(xué)習(xí)基礎(chǔ)參差不齊,學(xué)習(xí)能力較弱,并且學(xué)生在進(jìn)入中職院校學(xué)習(xí)后程度不一,給C語言課程教學(xué)帶來了一定的阻礙,普遍表現(xiàn)為:有畏難情緒,從而喪失學(xué)習(xí)興趣。
三、 培養(yǎng)中職學(xué)生C語言學(xué)習(xí)興趣的策略
(一)創(chuàng)設(shè)情境,激發(fā)學(xué)生學(xué)習(xí)興趣
生動(dòng)的情景可培養(yǎng)學(xué)生學(xué)習(xí)的興趣。在講循環(huán)結(jié)構(gòu)程序設(shè)計(jì)時(shí),展示一個(gè)故事:
很久以前有一位十分貪婪又十分吝嗇的財(cái)主,經(jīng)常克扣工人的工資。有一天,一個(gè)聰明人看不過去財(cái)主的惡行,決定為大家出一口氣。于是他來到財(cái)主家中,要與財(cái)主做一筆交易。交易的內(nèi)容為財(cái)主第一天給他0.01元,第二天給他0.02元,第三天給他0.04元,第四天給他0.08元,以此類推,往后每一天的錢都是前一天的兩倍,要持續(xù)給一個(gè)月。而他在這一個(gè)月里每天都給財(cái)主100元。財(cái)主一聽,覺得這個(gè)交易,自己肯定賺錢,二話不說就同意了。看到這兒有同學(xué)說:“財(cái)主就是精明,這個(gè)人是個(gè)笨蛋。”剛開始財(cái)主每天都樂呵呵的,可是越往后,財(cái)主需要付出的錢越多,后來把所有家產(chǎn)都輸給了那個(gè)聰明人。對于故事的結(jié)果,同學(xué)都很詫異。于是提出讓學(xué)生編程計(jì)算一個(gè)月后財(cái)主付了多少錢,學(xué)生都興趣盎然開始了編程。
(二)設(shè)置陷阱激發(fā)學(xué)生學(xué)習(xí)興趣
例如,“=”和“==”
給出下面的程序段:
a=0;
if(a=0)
printf(“ a=0”);
else
printf(“ a=1”);
請學(xué)生分析運(yùn)行結(jié)果。
上面程序的運(yùn)行結(jié)果為a=1, 因?yàn)樵贑語言中“ =”是賦值號(hào), 關(guān)系運(yùn)算符為“ ==”,在if(a=0)語句中,括號(hào)中的a=0是賦值表達(dá)式, 把0賦給a,于是“a=0”這個(gè)賦值表達(dá)式的值為0,也就是為假,程序轉(zhuǎn)到else分支中執(zhí)行, 輸出“a=1”。
再給出下面的程序段:
a=0;
if(a==0)
printf(“ a=0”);
else
printf(“ a=1”);
請學(xué)生分析運(yùn)行結(jié)果。
在if(a= =0)語句中, 括號(hào)中的a==0是關(guān)系表達(dá)式,由于a==0為真,所以執(zhí)行if分支,輸出a=0。
(三)通過實(shí)例教學(xué)而不是枯燥的理論激發(fā)學(xué)生興趣
1.選擇結(jié)構(gòu)問題:if-else結(jié)構(gòu)與if語句的等價(jià)性。
中職學(xué)生對if-else結(jié)構(gòu)理解存在困難,設(shè)計(jì)以下兩個(gè)程序。
問題1:假設(shè)month=2,以下程序段的運(yùn)行結(jié)果是什么?if后的邏輯表達(dá)式執(zhí)行了幾次?
兩個(gè)程序的運(yùn)行結(jié)果都為february,這時(shí)學(xué)生露出疑惑的表情,這兩個(gè)程序運(yùn)行結(jié)果相同,這兩個(gè)程序是等價(jià)的嗎?
問題1中if后的邏輯表達(dá)式執(zhí)行次數(shù)為2,問題2中if后的邏輯表達(dá)式執(zhí)行次數(shù)為4,這是由于程序設(shè)計(jì)語言中“if- else”結(jié)構(gòu)執(zhí)行時(shí),在當(dāng)if后面的表達(dá)式成立時(shí),將執(zhí)行if下面的語句,執(zhí)行結(jié)束后會(huì)退出整個(gè)if語句, 不會(huì)再去執(zhí)行else下面的語句。由于問題2中沒有else結(jié)構(gòu),問題2中的if語句都要執(zhí)行一遍,所以問題1和問題2的執(zhí)行過程是不同的。
通過具體實(shí)例對比,讓學(xué)生認(rèn)識(shí)兩個(gè)程序的邏輯關(guān)系及執(zhí)行過程的不同,學(xué)生對這兩個(gè)程序的異同表現(xiàn)出興趣,從而主動(dòng)探究學(xué)習(xí)。
2.函數(shù)調(diào)用的參數(shù)傳遞。
函數(shù)調(diào)用的參數(shù)傳遞也是C語言程序設(shè)計(jì)的一個(gè)難點(diǎn),很多學(xué)生畏難而退,為激發(fā)學(xué)生學(xué)習(xí)興趣,設(shè)計(jì)以下兩個(gè)程序。
交換兩個(gè)數(shù)的函數(shù)為:swap(inta,int b)
學(xué)生發(fā)現(xiàn)上面兩個(gè)程序很相似,但是下面的程序把變量換成了指針,運(yùn)行結(jié)果顯示:兩數(shù)成功實(shí)現(xiàn)了交換。學(xué)生這時(shí)表現(xiàn)出興趣:想知道為什么指針版的交換程序就能實(shí)現(xiàn)交換。
第一個(gè)程序沒有完成交換的原因:C函數(shù)的所有參數(shù)均以“傳值調(diào)用方式”進(jìn)行傳遞,函數(shù)將獲得參數(shù)值的一份拷貝,這樣函數(shù)可以放心修改這份拷貝,而不修改調(diào)用程序?qū)嶋H傳遞給它的參數(shù)。
第二個(gè)程序完成交換的原因:當(dāng)用指針做函數(shù)參數(shù)時(shí),實(shí)際傳遞的該數(shù)據(jù)的地址(指針),也就是傳遞給函數(shù)的實(shí)際是這個(gè)指針(地址)的一份拷貝。函數(shù)得到地址,就會(huì)按地址找到要相應(yīng)的數(shù)據(jù)執(zhí)行交換操作,而不是只是對這個(gè)數(shù)據(jù)的拷貝執(zhí)行交換操作。
綜上所述,學(xué)習(xí)興趣應(yīng)在程序設(shè)計(jì)教學(xué)過程有目的、有計(jì)劃地培養(yǎng),從而增強(qiáng)學(xué)生的求知欲,強(qiáng)化學(xué)生內(nèi)在學(xué)習(xí)動(dòng)機(jī),從而提高C程序設(shè)計(jì)的學(xué)習(xí)效果。