c語言程序設(shè)計范文
時間:2023-04-03 18:40:58
導(dǎo)語:如何才能寫好一篇c語言程序設(shè)計,這就需要搜集整理更多的資料和文獻(xiàn),歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。
篇1
關(guān)鍵詞:考試系統(tǒng);多媒體技術(shù);數(shù)據(jù)源;連接數(shù)據(jù)庫
中圖分類號:TP311文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2007)03-10854-03
1 課題研究的意義和目的
1.1研究意義
現(xiàn)在,多媒體技術(shù)日趨成熟,多媒體系統(tǒng)以其能輸出精彩的圖形和圖像、美妙的聲音、動感的畫面贏得了用戶和社會各界廣泛的關(guān)注和應(yīng)用。如果把按傳統(tǒng)考試方式同現(xiàn)代化的多媒體技術(shù)相結(jié)合,并且用多媒體著作工具及其它多媒體技術(shù),編制一套符合高??荚囆枨蟮南到y(tǒng)及其配套的多媒體教學(xué)軟件,利用多媒體技術(shù)生動、直觀、形象展示信息的特點,輔助教師授課和學(xué)生進(jìn)行考試,尤其對部分有限制性的實驗環(huán)節(jié),可利用活動視頻技術(shù)進(jìn)行展示,這將會解決一系列目前存在的問題。總之,該課題是在計算機輔助教學(xué)及考試上進(jìn)行的一次積極有意義的嘗試,為其他實踐性較強的課程進(jìn)行多媒體輔助教學(xué)開辟一條新的路子,具有一定的理論和現(xiàn)實意義。
1.2目的
傳統(tǒng)的考試手段主要依靠有紙試卷,幾乎沒有可重用性。本課題將實現(xiàn):用計算機輔助考試系統(tǒng),把多媒體生動、直觀的顯示出來,使學(xué)生不再將考試視為一種枯燥無味的東西,提高了考試效果,使學(xué)生在一種愉悅的心情中進(jìn)行考試,把枯燥的重復(fù)變?yōu)槌錆M樂趣、具有啟發(fā)性的考試過程,使學(xué)生能比較全面的學(xué)習(xí)知識,掌握技能,達(dá)到素質(zhì)教育的要求。
2 系統(tǒng)流程圖設(shè)計
2.1初始化流程設(shè)計
在使用Authorware創(chuàng)建任何多媒體項目的時候,都應(yīng)該先設(shè)置當(dāng)前項目文件的窗口大小,將其設(shè)置為“800×600”,然后選擇“演示居中屏幕”,同時取消對“顯示標(biāo)題欄”和“顯示菜單欄”復(fù)選框的選擇。
2.2主界面的設(shè)計
本界面采用了Photoshop7.0圖形圖像處理軟件來繪制。為了避免界面的單調(diào)和呆板,用蒙版和濾鏡技術(shù)加以美化。該界面把Photoshop中的圖層技術(shù)、圖層蒙版技術(shù)、文字效果及濾鏡等功能完美的結(jié)合了起來。并且在底部設(shè)置了一個Flas,增加視覺效果。
2.3背景音樂的交互控制
該多媒體教學(xué)以MIDI作為背景音樂,背景音樂的交互控制包括背景音樂的隨機選曲播放、停止等功能,另外當(dāng)該教學(xué)程序處于活動狀態(tài)時,能夠隨時調(diào)整背景音樂和講解聲音的大小及比例,讓使用者在一種輕松悅耳的環(huán)境中考試(調(diào)出WINDOWS的音量控制實現(xiàn)),還能夠暫停背景音樂,當(dāng)再次進(jìn)入活動狀態(tài)時則能重新播放背景音樂。
為了充分考慮用戶計算機的不同配置情況,首先利用BUDAPI.U32的BASOUNDCARD函數(shù)判斷用戶機器是否已經(jīng)安裝了聲卡,如果已經(jīng)安裝則執(zhí)行背景音樂播放,否則不允許播放任何背景音樂操作.程序如下:
IF BASOUNDCARD() THEN
MIDI:=1
TEST(MIDI,MIDILOOP (FILELOCATION^”MUSIC\\MUSIC-”^RANDOM(1,5,1)^”.MID”),STOPMIDI())
END IF
軟件中的背景音樂交互控制是通過交互響應(yīng)來實現(xiàn)的。在程序執(zhí)行過程中,用戶始終可以通過按鈕控制背景音樂的播放與暫停。在計算圖標(biāo)“播放音樂”后添加一交互圖標(biāo)并命名為“音樂控制”,并在交互圖標(biāo)右邊添加三個計算分支。設(shè)置“STOP/PLAY”分支為按鈕響應(yīng)交互,其功能是實現(xiàn)對背景音樂的控制。由于在整個程序執(zhí)行過程中它都是有效的,因此須設(shè)置其為永久按鈕,即選擇“PERPETUAL”屬性選項,同時設(shè)置“ACTIVE IF”條件為:BASOUNDCARD(),即檢測到用戶沒有安裝聲卡的情況下該按鈕及響應(yīng)分支無效。
2.4內(nèi)容的導(dǎo)航設(shè)計
該多媒體教學(xué)涉及內(nèi)容繁多,不僅包括文本、圖片、聲音和動畫,而且還有其它多媒體工具與Authorware 配合,同時,還把視頻文件導(dǎo)入,以增加實用性。為使用戶操作簡單方便,設(shè)計了合理的教學(xué)內(nèi)容導(dǎo)航。主文件與各章節(jié)之間的導(dǎo)航設(shè)計根據(jù)結(jié)構(gòu)規(guī)劃中的該章節(jié)內(nèi)容的欄目劃分,在流程設(shè)計中為這些欄目設(shè)計了導(dǎo)航,如圖1為主程序內(nèi)容導(dǎo)航的設(shè)計流程圖。
這樣的流程設(shè)計使整個主程序結(jié)構(gòu)清晰,可讀性強。由于該文件結(jié)構(gòu)是主-分結(jié)構(gòu),即主文件調(diào)用各章節(jié)模塊文件的方式,因此在主文件的章節(jié)內(nèi)容中實際存放的是一個起鏈接橋梁作用的調(diào)用腳本,而具體的考試試題題型內(nèi)容則放在各章節(jié)的模塊文件內(nèi)。
2.5各模塊的內(nèi)容流程設(shè)計
圖中的考試模式、練習(xí)模式、教學(xué)模式及退出系統(tǒng)這四部分主要程序流程圖如下圖2、圖3、圖4、圖5所示。
第五部分的原理演示則是通過熱區(qū)交互以及調(diào)入用VC6.0制作的演示內(nèi)容的庫文件,抽象的工作原理形象化,具體化。在打包的過程中采用了分步打包,首先對每部分進(jìn)行打包。通過主文件調(diào)用其它各部分,這樣避免了主文件過大,影響運行速度。
3 以完成單選題為例來看具體實現(xiàn)過程
從單選題的數(shù)據(jù)庫題庫中隨機抽取相應(yīng)題數(shù)的問題;每一題只能選擇一個答案;用戶可以按次序做答,可跳過不答,在回答過程中,可以隨時返回已做過的題目進(jìn)行修改;交卷后會給出完成情況可以查看每題的回答情況.最后回到選題主界面,并把學(xué)生所做的答案成績保存到數(shù)據(jù)庫中。
當(dāng)用戶在主界面中,選擇了“考試模式”后,系統(tǒng)就會進(jìn)入到登錄界面系統(tǒng)會提示輸入用戶名和密碼,當(dāng)輸入后,點擊“確定”后,系統(tǒng)將會進(jìn)入到題型選擇界面。在提示框中輸入用戶名和密碼,我們點擊“確定”后,就會進(jìn)入到正式的單選題型界面中,選擇“單選題”單擊。
C語言程序設(shè)計考試系統(tǒng)的選擇題從數(shù)據(jù)庫中取出選擇題,在一個界面上顯示。利用三個熱區(qū)域交互按鈕“上一題”“下一題,”“完成”,按鈕和四個熱區(qū)域設(shè)置計算圖標(biāo)用來記錄學(xué)生所選擇的答案。在學(xué)生選擇“完成”后,彈出學(xué)生做題的情況界面,然后回到選題主界面,并把學(xué)生所做的答案成績保存到數(shù)據(jù)庫中。
3.1“未命名”用來擦除以前的圖像
(1) 打開“未命名”的屬性,進(jìn)入“未命名”的屬性窗口。
(2)在“屬性窗口”中單擊擦除標(biāo)簽在設(shè)置過渡效果進(jìn)行設(shè)置。
(3)單擊“確定”按鈕
3.2 設(shè)置“單選界面”插入一個圖像
(1)雙擊“單選界面”圖標(biāo)進(jìn)入顯示圖標(biāo)窗口
(2)單擊繪圖工具箱 圖標(biāo)進(jìn)行繪制一個和窗口矩形一樣大的矩形
(3)設(shè)置矩形的顏色為“綠色”
(4)單擊顯示圖標(biāo)窗口的關(guān)閉按鈕,關(guān)閉保存對“單選界面”的設(shè)置。
3.3 設(shè)置交互“進(jìn)入”
(1)在交互圖標(biāo)的右邊拖放一個群組“單選”。
(2)設(shè)置單選的熱區(qū)為“按鈕”。
(3)單擊確定后,雙擊“選擇”。
3.3.1“未命名”用來擦除上次運行的圖形
3.3.2 在“打開數(shù)據(jù)庫”的輸入如下源程序:
hint0:="您的數(shù)據(jù)庫沒有連接上......"
--顯示連接數(shù)據(jù)庫的信息
title:="數(shù)據(jù)庫連接...."
ODBChandle:=ODBCOpen(WindowHandle,"","database","","")
--得到數(shù)據(jù)源
getrecord:="select count(sequence) from erigister"
--得到記錄的個數(shù)
record:=ODBCExecute(ODBChandle,getrecord)
if ODBChandle=0 then--測試連接數(shù)據(jù)庫是否連接成功
MessageBox(WindowHandle,hint0,title,17)
end if
ODBCClose(ODBChandle)
ODBChandle:=ODBCOpen(WindowHandle,"","database","","")
if ODBChandle=0 then
MessageBox(WindowHandle,hint0,title,17)
end if
sqlstring1:="select ssdb from erigister where sequence="^record^"" -從表中選擇單選庫表題
ssdatabase:=ODBCExecute(ODBChandle,sqlstring1)
getrecord:="select count(sequence) from "^ssdatabase^""
record:=ODBCExecute(ODBChandle,getrecord)
--ssdb數(shù)據(jù)庫的記錄個數(shù),以便產(chǎn)生隨機數(shù)
sssum:=0
number1:=1
sui:=[]
sui[1]:=Random(1,record,1)
--下面程序用來產(chǎn)生一個隨機數(shù)不能出現(xiàn)相同的題目
i:=2
repeat while i
flag:=0
repeat while flag=0
sui[i]:=Random(1,record,1)
flag1:=0
repeat with p:=1 to i-1
if sui[i]=sui[p] then flag1:=1
end repeat
if flag1=0 then flag:=1
end repeat
i:=i+1
end repeat
3.3.3 在“做選擇的背景”顯示圖標(biāo)中設(shè)計單選題的界面如上圖5.4
3.3.4 在“數(shù)據(jù)庫的操作”中輸入如下代碼:在這里,我們就要實現(xiàn)對數(shù)據(jù)庫的隨機讀取和跟蹤答案的長短來選擇界面
x:=0
ran:=sui[number1]
result:=""
record1:=Number(record)
record:=record1--得到記錄的個數(shù)
sqlstring1:="select topic from "^ssdatabase^" where sequence="^ran^""分別得到選擇題各項
sqlstring2:="select a from "^ssdatabase^" where sequence="^ran^""
sqlstring3:="select b from "^ssdatabase^" where sequence="^ran^""
sqlstring4:="select c from "^ssdatabase^" where sequence="^ran^""
sqlstring5:="select d from "^ssdatabase^" where sequence="^ran^""
sqlstring6:="select result from "^ssdatabase^" where sequence="^ran^""
get1:=ODBCExecute(ODBChandle,sqlstring1)
--get1得到選擇題目內(nèi)容
get2:=ODBCExecute(ODBChandle,sqlstring2)
--get2得到選擇項A內(nèi)容
get3:=ODBCExecute(ODBChandle,sqlstring3)
--get3得到選擇項B內(nèi)容
get4:=ODBCExecute(ODBChandle,sqlstring4)
--get4得到選擇項C內(nèi)容
get5:=ODBCExecute(ODBChandle,sqlstring5)
--get5得到選擇項D內(nèi)容
get6:=ODBCExecute(ODBChandle,sqlstring6)
--get6得到選擇題的答案
inputa:=1 --用來設(shè)置熱區(qū)域的激活條件
3.3.5空“操作”用來設(shè)置跳轉(zhuǎn)標(biāo)志
3.3.6在交互圖標(biāo)右邊拖入四個熱區(qū)域
在計算圖標(biāo)中從左到右的四個計算圖標(biāo)中輸入: result:="A" result:="b" result:="c" result:="d"在交互屬性中設(shè)置激活條件為inputa=1: ,鼠標(biāo)指針設(shè)置為標(biāo)準(zhǔn)鼠標(biāo)指針,其它的為默認(rèn)設(shè)置.其中result變量用來記錄用戶所選的答案.
3.3.7拖一個交互圖標(biāo)“未命名”在它的右邊拖兩個計算圖標(biāo)為“上一題”和“下一題”,再拖一個群組“完成”放在“下一題”右邊 ,設(shè)置熱區(qū)為按鈕。在“上一題”的激活條件中輸入number1>1,鼠標(biāo)指針設(shè)置為:標(biāo)準(zhǔn)的鼠標(biāo)指針。在“下一題”的激活條件中輸入:number1
4 結(jié)束語
根據(jù)對教師上課時課堂練習(xí)的分析,開發(fā)出該考試系統(tǒng),主要是能夠方便課堂練習(xí),同時還可用于期中期末測試,該系統(tǒng)主要是針對《C語言程序設(shè)計》課程來設(shè)計的。對該系統(tǒng)做簡單修改,即可用于其它課程。
參考文獻(xiàn):
[1]王嘉寧,朱雋.Photoshop7.0中文版新概念百例[M].中國水利水電出版社,2004,4.
[2]龔祥國.主編.Photoshop圖像處理實用教程[M].科學(xué)出版社,2002,2.
[3]王龍,金海.主編.Flash MX實戰(zhàn)入門新概念[M].中國水利水電出版社,2005,5.
[4]李恒.Authorware 6.0多媒體實例大制作》[M] 冶金工業(yè)出版社,2002,4.
[5]袁海東.Authorware 7.0教程[M].電子工業(yè)出版社,2004,9.
篇2
【關(guān)鍵詞】C語言程序設(shè)計;教學(xué)內(nèi)容;教學(xué)手段;教學(xué)方法;教學(xué)改革
C語言是一種廣泛使用的程序設(shè)計語言,它具有高級語言的特性與直接操縱計算機硬件的能力。因而,在當(dāng)前許多高校中,C語言被列為程序設(shè)計課程的首選語言,成為了計算機專業(yè)的必修課程,也越來越多地被非計算機專業(yè)所采用[3]。然而在《C語言程序設(shè)計》課程的教學(xué)中,由于C語言概念比較復(fù)雜,規(guī)則繁多,同時在實踐中又具有靈活多變運用,所以教師對于課程教學(xué)難易度的把握有困難,學(xué)生對于課程的學(xué)習(xí)與實踐亦感到迷惑,甚至產(chǎn)生一些畏難心理[2]。作為實踐性很強的C語言程序設(shè)計課程,它的學(xué)習(xí)有自身特點:光聽只看是不夠的,還必須加以練習(xí),通過大量的編程訓(xùn)練,反復(fù)夯實語言的概念基礎(chǔ),并在實踐中培養(yǎng)程序設(shè)計的基本能力,逐步理解和掌握程序設(shè)計的思維與方法。所以,C語言程序設(shè)計課程的教學(xué)重點是培養(yǎng)學(xué)生的實踐編程能力,以程序設(shè)計為中心來組織課程內(nèi)容。在筆者多年的教學(xué)實踐中,針對《C語言程序設(shè)計》課程的難點與特點,在教學(xué)內(nèi)容、教學(xué)手段、教學(xué)方法等方面做出了一些改革與嘗試,收到了較好的教學(xué)效果。
1、教學(xué)內(nèi)容的改革[1][3]
1.1課堂教學(xué)內(nèi)容的改革
目前關(guān)于C語言的教材很多,內(nèi)容主要包括數(shù)據(jù)類型、表達(dá)式、分支、循環(huán)、函數(shù)、數(shù)組、指針、結(jié)構(gòu)體、文件的概念和應(yīng)用以及指針和各種構(gòu)造類型的混合運用、基本算法等。很多教材側(cè)重于語言本身的理論體系介紹,而對于編程方面的介紹卻相對較少,這樣的安排雖然突出了知識結(jié)構(gòu)的認(rèn)識,但是也弱化了學(xué)生的程序設(shè)計能力和語言應(yīng)用能力,而這些能力對于學(xué)生學(xué)好這門課程又恰恰是至關(guān)重要的。筆者在教學(xué)中,嘗試以程序設(shè)計為向?qū)Вo以編程應(yīng)用,將案例和問題引入課堂,使學(xué)生盡快建立起程序設(shè)計的思想和方法,然后在這些框架上穿插講解相關(guān)的語言知識。在前幾次課中,簡單介紹相關(guān)的背景知識和利用編程求解問題的過程,然后引入實例,在對問題的解決過程中介紹順序、分支和循環(huán)3種控制結(jié)構(gòu)以及函數(shù)的使用,使學(xué)生對C語言有一個大概的了解。然后深入講解程序設(shè)計的思想和方法,并演示應(yīng)用C語言解決問題。通過實例程序的引入來介紹語言知識,在每節(jié)課中介紹一些程序設(shè)計的方法、技巧以及編程中的常見錯誤,并設(shè)置練習(xí)題,鼓勵學(xué)生多思考、多練習(xí),提高綜合能力,每章課程結(jié)束后, 設(shè)置綜合性的習(xí)題,包括本章的綜合以及從第一章到本章的綜合,主要是程序設(shè)計題。學(xué)生要想學(xué)會并應(yīng)用C語言進(jìn)行程序設(shè)計,除了對程序設(shè)計語言了解外,更重要的是在實踐中領(lǐng)會并掌握程序設(shè)計的基本思想和方法,要求學(xué)生從開始學(xué)習(xí)C語言起就試著編寫程序,先模仿例題中的程序,然后嘗試加以改寫,循序漸進(jìn),最后能獨立地編寫程序來解決比較復(fù)雜的問題。
1.2實驗教學(xué)內(nèi)容的改革
C語言的教學(xué)特別需要重視實踐環(huán)節(jié),包括編程和上機實驗。針對不同水平的學(xué)生,筆者在教學(xué)班中抓兩頭,學(xué)得好的學(xué)生鼓勵給大程序,難一點的實驗,學(xué)得一般的學(xué)生做基礎(chǔ)性的題目。在保留基礎(chǔ)性實驗的同時,增加一些實用性強的、難度略大的實驗,并組織學(xué)生討論得出算法流程,然后上機編程調(diào)試。
按照實驗指導(dǎo)書上的內(nèi)容,每個實驗內(nèi)容以編程題為主,學(xué)生可以先模仿課堂案例操作,然后再做實驗題,通過“模仿-改寫-編寫”三步曲的上機實踐過程,在循序漸進(jìn)的引導(dǎo)中逐步熟悉編程環(huán)境,理解和掌握程序設(shè)計的思想、方法和技巧,以及程序調(diào)試方法[4]。
實驗題分為必做題和選做題,在實驗過程中針對學(xué)生有問題的程序統(tǒng)一講解,然后再選一個有錯誤的程序讓學(xué)生自己找錯誤(開始一個月內(nèi)的時間,讓學(xué)生學(xué)會找到語法錯誤)。這樣學(xué)生能力會提高很快,在后期發(fā)現(xiàn)邏輯錯誤,也會自己先找出,然后再求助老師。實驗題量一次課(2節(jié)課)至少留6-8題實驗。
2、教學(xué)手段的改革
運用多媒體技術(shù)輔助教學(xué),是當(dāng)前課堂上很流行的一種教學(xué)手段,因為這種方式包含的信息量大、豐富,學(xué)生學(xué)習(xí)起來感覺生動,提高了學(xué)習(xí)的興趣,同時也能夠優(yōu)化教學(xué)過程。但是多媒體輔助教學(xué)的弊端也越來越被了解,比如不恰當(dāng)?shù)氖褂脮稚W(xué)生注意力,甚至影響學(xué)生對主要問題的理解。所以將多媒體教學(xué)引入C語言程序設(shè)計課程教學(xué)過程中,必須要考慮到兩者的特點與優(yōu)勢,取長補短,將傳統(tǒng)教學(xué)與多媒體教學(xué)進(jìn)行有機的結(jié)合。比如:對于C語言的概念性知識點如數(shù)據(jù)類型、變量類型、運算符、程序結(jié)構(gòu)等,可以采用多媒體教學(xué),通過課件的制作,既滿足了課堂上演示的需要,也簡化了傳統(tǒng)教學(xué)大量板書的缺點。而對于程序的編寫或案例的分析,就需要發(fā)揮傳統(tǒng)教學(xué)的優(yōu)勢,更靈活的進(jìn)行板書講解、課堂討論,使問題在師生之間的良性互動中得以解決。因此,教學(xué)中將各種手段如PPT、板書、現(xiàn)場編程并運行等多種手段有機結(jié)合,使得課堂教學(xué)達(dá)到最優(yōu)化,如果條件允許盡量現(xiàn)場編程(或事先準(zhǔn)備好的程序),學(xué)生可以學(xué)習(xí)教師的思路考慮問題,收到更好的效果,同時也能加快教學(xué)進(jìn)度。
另外,利用網(wǎng)絡(luò)資源的便利性,將大綱、電子教案、課件、練習(xí)題等放在網(wǎng)絡(luò)上,方便學(xué)生隨時查用學(xué)習(xí),同時通過飛信、QQ、Email等網(wǎng)絡(luò)交流手段與學(xué)生進(jìn)行答疑、討論等互動交流,從而擴(kuò)展了課堂教學(xué)的空間。
賞識學(xué)生,注重學(xué)習(xí)興趣的培養(yǎng)。在教學(xué)過程中,教師應(yīng)運用多種信息技術(shù)適時的輔導(dǎo),創(chuàng)設(shè)豐富的情境,發(fā)揮最佳效應(yīng),運用多種教學(xué)手段激發(fā)學(xué)生主動學(xué)習(xí)獲取知識的熱情。
篇3
關(guān)鍵詞:教學(xué)創(chuàng)新;教學(xué)法;教學(xué)設(shè)計;教學(xué)過程
我校是隸屬于“中國一航沈陽黎明航發(fā)(集團(tuán))公司”下的一所高職院校,目前社會發(fā)展對高職畢業(yè)生要求越來越高,為了跟上時代的步伐,為我國經(jīng)濟(jì)建設(shè)培養(yǎng)高素質(zhì)的應(yīng)用型人才。通過《C語言程序設(shè)計》課程教學(xué)中的教學(xué)創(chuàng)新努力提高教學(xué)質(zhì)量。
一、教學(xué)創(chuàng)新的觀念
(一)創(chuàng)新全面教學(xué)觀
創(chuàng)新全面教學(xué)觀。一是即要注重教書,又要注重育人,二是在教學(xué)中研究各門課程之間的聯(lián)系,研究同一課程不同章節(jié)之間的聯(lián)系,研究同一章節(jié)不同知識點之間的聯(lián)系?!禖語言程序設(shè)計》課程具有語言的特點,學(xué)習(xí)語言要先會字、詞、句然后構(gòu)成段落寫出文章。C語言也具有C語言的字、詞、句構(gòu)成功能編寫程序。各章是對C語言的字、詞、句的詳細(xì)講解,前一章為后面章節(jié)打基礎(chǔ),后一章應(yīng)用前面章節(jié)的知識。全面教學(xué)觀培養(yǎng)出來的學(xué)生,理論系統(tǒng),實踐能力強,學(xué)的知識較實用,且具有應(yīng)變能力。
(二)創(chuàng)新內(nèi)動教學(xué)觀
創(chuàng)新內(nèi)動教學(xué)觀。從高職教學(xué)的對象看,學(xué)生都是經(jīng)過普高畢業(yè)或職高畢業(yè)高考后錄取的,這些學(xué)生具有一定的文化基礎(chǔ)知識,學(xué)習(xí)也有一定的自覺性。內(nèi)動教學(xué)觀要求教師在施教時,要從分析研究學(xué)生心理活動入手,采用適合于學(xué)生心理特點和適應(yīng)能力的教學(xué)模式和教學(xué)方法,充分調(diào)動學(xué)生的學(xué)習(xí)積極性和創(chuàng)造性?!禖語言程序設(shè)計》課程是一門能開發(fā)計算機軟件的語言,實踐性較強,要有一定的英文基礎(chǔ),一定的邏輯思維的能力。青年人好學(xué)心勝,只要教師由淺入深,循循善進(jìn),一定能提高學(xué)生的學(xué)習(xí)興趣。
(三)教師創(chuàng)新意識觀
創(chuàng)新師資是高職教學(xué)創(chuàng)新的基本條件,教師的強烈創(chuàng)新意識,是教學(xué)創(chuàng)新必要保證,創(chuàng)新師資要具有對教學(xué)進(jìn)行改革創(chuàng)新的欲望。才能進(jìn)行創(chuàng)新教學(xué)。創(chuàng)新師資要具有勇敢的創(chuàng)新精神,不僅意識到教學(xué)需要創(chuàng)新,而且積極投身于教學(xué)創(chuàng)新活動,在這一活動中,他們勇于排困克難,開拓進(jìn)取,不達(dá)目的,誓不罷休。創(chuàng)新師資具有全面的創(chuàng)新能力,這些教師不僅具有扎實的理論基礎(chǔ)和專業(yè)知識,以及很強的實踐動手能力,而且還具有很強的發(fā)現(xiàn)問題和解決問題的能力。他們往往是教學(xué)創(chuàng)新的探索者和先行者。
二、教學(xué)創(chuàng)新中應(yīng)用的教學(xué)方法及內(nèi)容
在教學(xué)創(chuàng)新中應(yīng)用了三步教學(xué)法:課堂教學(xué)―機房教學(xué)―實驗教學(xué)。以課堂教學(xué)內(nèi)容為主線,機房授課講解實例歸納總結(jié),機房實驗加深學(xué)生對主題的理解和學(xué)生的動手能力。每步驟教學(xué)的具體內(nèi)容如下:
(一)課堂教學(xué)
課堂教學(xué):講理論知識點,按照教學(xué)大綱提煉出要講授內(nèi)容的主線,通過分析主要實例規(guī)納總結(jié)知識點,用問題引出法要求學(xué)生獨立思考,提高學(xué)生的邏輯思維能力、理解問題的能力及解決問題的能力。
(二)機房教學(xué)
機房教學(xué):通過課件講授,減少寫板書的時間。進(jìn)入C語言編輯環(huán)境,通過演示實例,直觀、形象地看知識點的應(yīng)用過程,每條語句功能的實現(xiàn),加深對課堂教學(xué)內(nèi)容的理解。討論講授知識點的應(yīng)用范圍,提出問題進(jìn)行互動。根據(jù)不同的層次的學(xué)生提出的多個問題,讓學(xué)生根據(jù)老師提出的問題,不同的層次讓學(xué)生做不同理解性的、邏輯性的編程練習(xí)。提高學(xué)生的實際應(yīng)用能力,學(xué)生可根據(jù)自己能力練習(xí)。
(三)實驗教學(xué)
實驗教學(xué):實驗內(nèi)容分為二部分:分析程序和獨立編程。要求學(xué)生實驗課前一定要預(yù)習(xí),對于分析程序部分,學(xué)生寫出分析程序的功能、程序執(zhí)行過程中各變量值的變化,程序的運行結(jié)果。對于獨立編程部分,學(xué)生根據(jù)問題要求給出解決問題的方法做編程練習(xí)。
三、教學(xué)創(chuàng)新中教學(xué)過程的設(shè)計
(一)講授教學(xué)設(shè)計
無論是在教室講課,還是機房講課,每次上課開始,先講本次課重點主線,抓學(xué)生的注意力,對重點內(nèi)容一次講授,多次強調(diào),多次練習(xí),給出學(xué)生一些思考時間、練習(xí)時間、理解時間。對于難點內(nèi)容的分析講解,根據(jù)學(xué)生理解情況和時間安排決定深度。對于非重點內(nèi)容,為了使所傳授的知識有個完整性,擴(kuò)大學(xué)生的知識面,要抓住基本概念講,高職教育按照專業(yè)學(xué)習(xí)的要求,以必須和夠用為度,以實際應(yīng)用為重點。
機房授課先講授知識點的應(yīng)用,每次還要提出一個問題及要求,讓同學(xué)們上機實踐,時間要靈活掌握。有時課堂教學(xué)講的重點內(nèi)容,同學(xué)難理解的,也應(yīng)在機房授課時抽出一定的時間演示講解。
(二)實驗教學(xué)設(shè)計
實驗教學(xué)重點驗證學(xué)生的分析能力、邏輯思維能力和實際應(yīng)用能力。對難理解的實驗內(nèi)容通過演示相似例子講解,通過演示和練習(xí),力求學(xué)生掌握實驗的主要內(nèi)容,實驗教學(xué)過程重點抓輔導(dǎo)到位和檢查監(jiān)督到位。提高學(xué)生的實際動手能力。
(三)輔助教學(xué)設(shè)計
認(rèn)真制做生動活潑、重點突出的教學(xué)課件,對學(xué)生作業(yè)詳細(xì)批改,重點總結(jié),統(tǒng)一解答與各別輔導(dǎo)相結(jié)合,要求學(xué)生一定要各章的知識點。
四、教學(xué)創(chuàng)新課堂教學(xué)過程舉例
(一)講授教學(xué)重點主線
課堂講授教學(xué)重點主線,例如:講C語言程序設(shè)計的第五章:函數(shù)。先講授本次課的主線:函數(shù)的定義,函數(shù)的調(diào)用、函數(shù)的聲明。這三點為本次課主線,展開講函數(shù)的定義格式并做具體說明;函數(shù)聲明的作用及位置,通常什么情況下可以省略函數(shù)聲明;函數(shù)的調(diào)用的三種形式,通過分析例題,分析主函數(shù)中調(diào)用子函數(shù)采用的調(diào)用方式、及傳遞的參數(shù)。講函數(shù)的具體應(yīng)用過程等內(nèi)容。
(二)根據(jù)主線提出問題
給出問題:定義一個比較二個數(shù)大小的函數(shù),解決輸入多個數(shù)據(jù),完成輸出最大值的問題。用什么樣的調(diào)用方式實現(xiàn)從輸入的三個數(shù)或四個數(shù)中找出其中的最大值并輸出?要求學(xué)生自己去定義一個函數(shù),自己決定采用什么方式去調(diào)用函數(shù),實現(xiàn)程序功能。
(三)學(xué)生對問題的求解及驗證
根據(jù)不同層次的學(xué)生,給出不同的問題,提出不同的要求,讓學(xué)生們自己選擇解決問題的方法,練習(xí)編寫程序。對于理解能力強的學(xué)生,完成從輸入的四個數(shù)中找出其中的最大值并輸出。差一點的完成從輸入的三個數(shù)中找出其中的最大值并輸出。再差一些學(xué)生的完成從輸入的二個數(shù)中找出其中的最大值并輸出。并要求上機實現(xiàn)。學(xué)生一定要掌握函數(shù)的定義,函數(shù)的調(diào)用的正確形式及使用。
五、總結(jié)
高職學(xué)院的教學(xué)創(chuàng)新不但要有創(chuàng)新觀念,必須具有創(chuàng)新師資。創(chuàng)新師資是高職教學(xué)創(chuàng)新的必要條件,沒有創(chuàng)新師資,高職教學(xué)創(chuàng)新將是一句空話。教學(xué)活動是由教師來完成的,教學(xué)創(chuàng)新理所當(dāng)然地要由教師來進(jìn)行的。因此,作為高等職業(yè)技術(shù)學(xué)院的教師,我深深的體會到要進(jìn)行教學(xué)創(chuàng)新,必須從我們每個教師做起,教師要有強烈的創(chuàng)新意識,勇敢的創(chuàng)新精神,全面的創(chuàng)新能力,還要積極實踐,才能全面實現(xiàn)高職院校的教學(xué)創(chuàng)新。才能盡快培養(yǎng)出具備一定專業(yè)基礎(chǔ)理論和專業(yè)知識,具有較強的實踐技能,面向生產(chǎn)、管理和服務(wù)的高技能應(yīng)用型人才。
參考文獻(xiàn):
篇4
關(guān)鍵詞:C語言程序設(shè)計;以應(yīng)用為本位;啟發(fā)式教學(xué)
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2013)10-2412-03
C語言功能豐富,應(yīng)用面廣,當(dāng)下,很多高校依然把C語言作為非計算機專業(yè)學(xué)生的一門通識平臺課開設(shè)。然而,在C語言課程的開設(shè)過程中,教師和學(xué)生不同程度地存在著缺位和誤區(qū),教與學(xué)的效果不盡如人意。在C語言的教學(xué)過程中,不少任課教師因循守舊,教學(xué)目標(biāo)不清,教學(xué)方法單一,教學(xué)觀念陳舊,使C語言的課堂蛻化為單純的語法規(guī)則的灌輸,使C語言的學(xué)習(xí)變?yōu)楹唵蔚恼Z法知識的學(xué)習(xí),學(xué)生普遍反映難學(xué)厭學(xué)。C語言程序設(shè)計課程一般面向的都是大學(xué)一年級的新生,他們剛剛結(jié)束高中生活步入大學(xué)校園,對一切充滿了新鮮感和不適應(yīng)感,學(xué)習(xí)觀念、學(xué)習(xí)目的和學(xué)習(xí)方法有待轉(zhuǎn)變和調(diào)整,學(xué)習(xí)的主體意識和自覺性有待增強和提高。針對這些問題和現(xiàn)象,筆者在自己的教學(xué)過程中進(jìn)行一些了探索和實踐,取得了一定的效果。
1 教師自覺轉(zhuǎn)變教學(xué)觀念,提高自身素質(zhì)
縱觀C語言程序設(shè)計課程的教學(xué),現(xiàn)在最典型影響面最大的教學(xué)模式就是由教師和學(xué)生構(gòu)成一個教學(xué)體,教師在講臺上自我表演,學(xué)生充當(dāng)看客或聽眾【1】。所謂知識也好、信息也好,都是一個從教師到學(xué)生的單向流動。在這種以教師為主導(dǎo)、以教材為核心、以課堂為中心的教學(xué)模式下,教學(xué)蛻化成為一種單純的知識傳授,學(xué)生學(xué)習(xí)的積極性和主動性的調(diào)動,學(xué)生創(chuàng)新能力和創(chuàng)新思維的培養(yǎng),都無從談起。面對這樣的現(xiàn)狀和背景,教師教學(xué)觀念的轉(zhuǎn)變和自身素質(zhì)的提高顯得尤為重要。本著對學(xué)生負(fù)責(zé),對學(xué)校負(fù)責(zé)的態(tài)度,教師應(yīng)在自身責(zé)任感的驅(qū)使下,主動了解先進(jìn)的教育思想和教學(xué)理念,像教學(xué)互動性、學(xué)生主體性和知識建構(gòu)性等等;認(rèn)真思考大學(xué)教育的功能,比如授人以魚還是授人以漁;結(jié)合教學(xué)實際,轉(zhuǎn)變教學(xué)觀念,改變傳統(tǒng)的教與學(xué)的地位,由過去的“以教師為中心”轉(zhuǎn)變?yōu)椤敖處熤鲗?dǎo),以學(xué)生為主體”,營造民主的教學(xué)氛圍;改變課堂老師單向灌輸、學(xué)生被動聽講的授課模式,引入多元化的教學(xué)方法,比如啟發(fā)式,探究式,引導(dǎo)學(xué)生獨立思考,鼓勵學(xué)生主動參與學(xué)習(xí)。
2 引導(dǎo)學(xué)生轉(zhuǎn)變學(xué)習(xí)觀念,培養(yǎng)學(xué)生學(xué)習(xí)的主體意識
C語言程序設(shè)計課程的開設(shè)面對的多數(shù)是大學(xué)一年級的新生,而對于剛?cè)胄5拇髮W(xué)生來說,受中學(xué)養(yǎng)成的學(xué)習(xí)習(xí)慣的影響,學(xué)習(xí)的自主意識淡薄,學(xué)習(xí)還習(xí)慣性地全部寄托在老師身上,對老師的依附心理嚴(yán)重。同時,面對大學(xué)里比中學(xué)多得多的自由學(xué)習(xí)時間不知如何有效地管理和支配,對新的學(xué)習(xí)環(huán)境和新的學(xué)習(xí)生活有不同程度的不適應(yīng)和困惑。面對這樣一個處在比較特殊階段的學(xué)生群體,承擔(dān)C語言程序設(shè)計課程的任課教師要有針對性對學(xué)生進(jìn)行引導(dǎo)和管理。首先,任課教師從一開始就讓學(xué)生明確一個觀點,即C語言是學(xué)生自己學(xué)會的,而不是老師教會的。俗話說,“師傅領(lǐng)進(jìn)門,修行在個人”,盡管教師的教在教學(xué)活動中起著主導(dǎo)作用,但更重要的是學(xué)生的學(xué),學(xué)習(xí)的主體是學(xué)生本人,只有學(xué)生充分發(fā)揮自己學(xué)習(xí)的自覺性和主動性,教師的教學(xué)思想才能得到很好地貫徹,教學(xué)效果才能得到很大的提高,整個學(xué)習(xí)活動也才會成功。其次,強化學(xué)生的責(zé)任意識。對絕大多數(shù)學(xué)生來說,如果單從年齡判斷,步入大學(xué)校園也往往意味著步入成年人的行列。而成年人也就意味著要對自己負(fù)完全責(zé)任了。教師在教學(xué)過程中要不斷強化學(xué)生對這一點變化的認(rèn)知,讓他們知道要對自己負(fù)責(zé),對自己的學(xué)習(xí)負(fù)責(zé),而不應(yīng)再完全依賴教師或家長的監(jiān)督。最后,教師的指導(dǎo)和管理。學(xué)習(xí)觀念的轉(zhuǎn)變,新的學(xué)習(xí)習(xí)慣的養(yǎng)成,不是一蹴而就的事情,需要在實際的學(xué)習(xí)活動中逐步完成。課前的預(yù)習(xí)、課堂的參與、課后的作業(yè)、實驗的完成、期末的考試等是C語言教學(xué)活動不可或缺的環(huán)節(jié),每一個環(huán)節(jié)里需要學(xué)生完成的任務(wù),任課教師從一開始都給出一個明確的要求并嚴(yán)格按照要求去管理,將大大有益于轉(zhuǎn)變學(xué)生的學(xué)習(xí)觀念,培養(yǎng)學(xué)生學(xué)習(xí)的主體意識。
3 激發(fā)學(xué)生的學(xué)習(xí)興趣,調(diào)動學(xué)生學(xué)習(xí)的積極性
在C語言程序設(shè)計課程的教學(xué)過程中,往往有學(xué)生反映C語言比較抽象,課堂教學(xué)又枯燥無味,很容易喪失學(xué)習(xí)的興趣和熱情。如何激發(fā)學(xué)生學(xué)習(xí)C語言的興趣并始終保有這種興趣,也常常是教授C語言課程的老師很頭疼且又不能回避的問題。“興趣是最好的老師”,每位教師都深知學(xué)生的學(xué)習(xí)興趣對教學(xué)活動成功的重要性,但C語言程序設(shè)計課程側(cè)重思維訓(xùn)練的特點又決定了在這方面留給任課教師的空間是有限的。筆者在自己的教學(xué)實踐中做了一些嘗試。
1)演示典型的完整的C語言應(yīng)用,培養(yǎng)學(xué)生的學(xué)習(xí)興趣
學(xué)生在學(xué)習(xí)C語言程序設(shè)計課程之初,對該門課程的學(xué)習(xí)目的和學(xué)習(xí)目標(biāo)多數(shù)是模糊的,對C語言的認(rèn)識也多半是空白,任課教師適當(dāng)?shù)囊龑?dǎo)很容易引起學(xué)生學(xué)習(xí)的興趣和探究的欲望,因此該門課程的開篇很重要。筆者摒棄了以往通過文字抽象地介紹C語言的產(chǎn)生、C語言的特點和C語言的應(yīng)用的做法,直接從演示典型的完整的C語言的應(yīng)用開始。演示的程序有難有易,涉及的范圍涵蓋實際生活中的應(yīng)用、有趣的數(shù)學(xué)問題、圖形動畫、游戲等。筆者一度選擇了圖書管理系統(tǒng)、文本編輯器、學(xué)生成績管理系統(tǒng)、兔子產(chǎn)子問題、百錢百雞問題、圖形時鐘、撲克牌的自動發(fā)牌、猜數(shù)游戲、五子棋游戲等應(yīng)用,引起了學(xué)生濃厚的學(xué)習(xí)興趣。
2)營造輕松的學(xué)習(xí)氛圍,創(chuàng)造愉快的學(xué)習(xí)體驗,強化學(xué)生的學(xué)習(xí)興趣
要引起學(xué)生對C語言一時的興趣不是一件難事,但要讓學(xué)生在整個C語言程序設(shè)計課程的教學(xué)過程中始終抱有這樣的學(xué)習(xí)興趣就不是一件易事了。哪位任課教師做到了這一點,他的教學(xué)活動無疑就是成功的。C語言比較抽象,課堂教學(xué)容易枯燥無味,是一個不爭的事實。為此,在實際的教學(xué)活動中,選擇難易適中貼近生活的問題,比如利息的計算、持有的股票價值的計算、學(xué)生成績的管理、募捐活動的模擬等;涉及C語言的語法特性時,盡量使用生活化的直白的語言,少用專業(yè)術(shù)語;課堂教學(xué)的開展過程中鼓勵學(xué)生積極參與,對學(xué)生提出的任何有意義的問題都及時地給予肯定;面對問題,對學(xué)生做出的任何有價值的回答都及時地給予表揚,都有助于營造輕松的學(xué)習(xí)氛圍,有助于讓學(xué)生體驗到成功的歡樂,有一種成就感,有助于強化學(xué)生學(xué)習(xí)的學(xué)習(xí)興趣和熱情。
4 踐行以應(yīng)用為本位的教學(xué)思路,有選擇性地采用以知識為本位的教學(xué)思路
C語言程序設(shè)計課堂教學(xué)的組織有兩種思路兩種模式。一種是以知識為本位的教學(xué)思路下形成的“建筑模式” 【2】,課堂教學(xué)以講授語法為主,先是提出語法概念,然后解釋該語法概念,最后舉例說明其應(yīng)用,強調(diào)先系統(tǒng)學(xué)習(xí)理論打下寬厚的理論基礎(chǔ),然后再進(jìn)行應(yīng)用,講究的是理論的系統(tǒng)性與嚴(yán)密性。另一種是以應(yīng)用能力為本位的教學(xué)思路下形成的“生物模式”,課堂教學(xué)以程序設(shè)計為中心,以編程為目的,從應(yīng)用的角度切入,先是提出問題,然后引導(dǎo)學(xué)生分析解決問題,最后著重介紹涉及的C語言的語法特性,強調(diào)結(jié)合應(yīng)用學(xué)習(xí)必要的理論知識,隨著應(yīng)用的展開,編程難度的逐步提高,算法和語法的學(xué)習(xí)同步趨向深入,有利于學(xué)生能力的培養(yǎng)。
C語言系人工設(shè)定的具有確定內(nèi)涵的概念和知識體系[3],同時C語言程序設(shè)計又是一門實踐性很強的學(xué)科。為此,在C語言程序設(shè)計課堂教學(xué)的組織上,筆者始終踐行以應(yīng)用為本位的教學(xué)思路,同時根據(jù)課程內(nèi)容的特點有選擇性采用以知識為本位的教學(xué)思路,比如C語言中的基本數(shù)據(jù)類型、運算符和表達(dá)式、文件等基本概念和語法知識,在教學(xué)中只需把規(guī)定的內(nèi)容闡述清楚,使學(xué)生理解并接受,同時又不破壞這些理論知識的系統(tǒng)性,就適宜采用以知識為本位的教學(xué)思路。
5 根據(jù)課程內(nèi)容特征,選擇靈活多樣的教學(xué)方法
教學(xué)方法是在教學(xué)過程中,教師為了實現(xiàn)教學(xué)目的、完成教學(xué)任務(wù)而采取的教與學(xué)相互作用的活動方式的總稱。C語言程序設(shè)計課程的教學(xué)目的是使學(xué)生掌握用C語言進(jìn)行程序設(shè)計的基本思想和方法,并具有靈活應(yīng)用這些思想和方法分析解決實際問題的能力。實現(xiàn)這一教學(xué)目的要完成的教學(xué)任務(wù)包括C語言基本語法的介紹,結(jié)構(gòu)化、模塊化程序設(shè)計思想和方法的引入,基本程序設(shè)計訓(xùn)練以及程序調(diào)試方法的演示等。面對這些多樣的教學(xué)目標(biāo)和任務(wù),靈活多樣的教學(xué)方法的選擇和恰當(dāng)應(yīng)用成為必須。筆者在自己的教學(xué)實踐中,結(jié)合課程內(nèi)容的特點,有選擇性地應(yīng)用了如下的教學(xué)方法。
1)啟發(fā)式教學(xué),引導(dǎo)學(xué)生思考,在應(yīng)用中學(xué)習(xí)。
在C語言程序設(shè)計的課堂教學(xué)中,根據(jù)課程內(nèi)容的特點,精心設(shè)計任務(wù)或場景,引導(dǎo)學(xué)生發(fā)現(xiàn)問題、思考問題,使學(xué)生在啟發(fā)誘導(dǎo)下獲取知識,解決學(xué)習(xí)中的疑難問題。比如,在引入數(shù)組時,筆者設(shè)計了這樣一個任務(wù),即編寫一個C語言成績管理程序,要求能夠統(tǒng)計出學(xué)生C語言成績的平均分、最高分、最低分以及各個分?jǐn)?shù)段的人數(shù)(為了說明問題的方便,假設(shè)當(dāng)前要處理的有10個學(xué)生的成績)。第一步,引導(dǎo)學(xué)生描述出10個學(xué)生的成績。根據(jù)之前的學(xué)習(xí)經(jīng)驗,學(xué)生很容易想到用10個float類型的簡單變量表示,比如score1,score2,、、、,score10。第二步,為節(jié)省時間,直接給出用這10個相互獨立的簡單變量實現(xiàn)的程序,引導(dǎo)學(xué)生觀察。在學(xué)生感嘆程序復(fù)雜之余,帶領(lǐng)學(xué)生讀程序,引導(dǎo)學(xué)生發(fā)現(xiàn),當(dāng)前的程序無論是成績的錄入、求學(xué)生成績的最高分、最低分,還是統(tǒng)計各個分?jǐn)?shù)段的人數(shù),對每位學(xué)生成績的處理方法都是一樣的,存在大量的相似的操作。同時提出問題,這些相似的操作能不能用循環(huán)結(jié)構(gòu)描述和實現(xiàn),讓學(xué)生思考。誘導(dǎo)學(xué)生分析發(fā)現(xiàn),要想用循環(huán)結(jié)構(gòu)描述這些相似的操作,學(xué)生成績的描述必須有一個統(tǒng)一的表示方法。適時地給出score[i]這一表示方法,指出讓i從0到9變化表示10個學(xué)生的成績,和學(xué)生一塊用該表示形式改寫之前程序的關(guān)鍵部分。讓學(xué)生比較改寫前后的兩個程序,很容易得出結(jié)論,用score[i]描述批量數(shù)據(jù),方便和循環(huán)結(jié)合起來使用,數(shù)據(jù)的處理更為有效。最后指出score[i]這一描述形式就是數(shù)組,接下來介紹數(shù)組的定義完善改寫后的程序。
和學(xué)生一塊模擬執(zhí)行該程序,由之前的知識積累學(xué)生知道,形參m、n和實參a、b對應(yīng)的是不同的存儲單元,m、n和temp是自動變量,從變量的作用域和生存周期的角度,容易得出一個讓學(xué)生意外的結(jié)論,該swap函數(shù)中形參m、n值的交換影響不到實參a、b。在學(xué)生詫異之余,啟發(fā)學(xué)生思考,誘導(dǎo)學(xué)生嘗試給出不同的解決方法。往往有學(xué)生提出定義a、b為全局變量,誠然這不失為一種解決方法,在鼓勵學(xué)生的同時,再次誘導(dǎo)學(xué)生發(fā)現(xiàn)問題的關(guān)鍵并在此基礎(chǔ)上找解決方法。和學(xué)生一塊梳理思路,發(fā)現(xiàn)swap函數(shù)中形參m、n值的交換傳遞不到實參a、b,一方面是因為彼此對應(yīng)的是不同的存儲單元,另一方面是由于變量的作用域和生存周期的問題。學(xué)生提出的定義a、b為全局變量的解決方法顯然是從后者考慮的,現(xiàn)在有意識地誘導(dǎo)學(xué)生只從前者考慮,讓學(xué)生大膽假設(shè)在什么樣的前提下形參m、n值的交換即是實參a、b值的交換。毋庸置疑,只有當(dāng)形參m、n和實參a、b對應(yīng)的是相同的內(nèi)存單元時。在學(xué)生給出了這一假設(shè)之后,啟發(fā)學(xué)生思考該假設(shè)能不能成立以及如何成立。和學(xué)生一塊分析,要使形參m、n和實參a、b對應(yīng)的是相同的內(nèi)存單元,表面上看它們不能是相同的類型,但實現(xiàn)又要求形參m、n操作的對象是實參a、b,顯然形參m、n操作的對象和實參a、b應(yīng)該是相同類型,同時形參m、n指向的是和實參a、b相同的內(nèi)存單元,學(xué)生相對容易想到形參m、n應(yīng)該是指向?qū)崊、b的指針變量,問題由此迎刃而解。最后結(jié)合該任務(wù)的完成引導(dǎo)學(xué)生總結(jié),在主調(diào)函數(shù)和被調(diào)函數(shù)之間雙向傳遞數(shù)據(jù)變化,全局變量和指針變量都是不錯的解決方法。
2)注重當(dāng)堂實踐,現(xiàn)場編程互動,在學(xué)習(xí)中應(yīng)用。
C語言程序設(shè)計是一門實踐性很強的課程,在踐行以應(yīng)用為本位的教學(xué)思路的過程中,筆者不僅重視實驗課這一實踐環(huán)節(jié),更是把實踐延伸到課堂教學(xué)中。在帶領(lǐng)學(xué)生對特別設(shè)計的問題做了充分的分析之后,引導(dǎo)學(xué)生當(dāng)堂實踐,或者師生現(xiàn)場編程互動,不僅可以調(diào)動學(xué)生學(xué)習(xí)的積極性,更能培養(yǎng)學(xué)生解決實際問題的能力。
參考文獻(xiàn):
[1] 李克東.教育技術(shù)學(xué)研究方法[M].北京:北京師范大學(xué)出版社,2003:132-137.
篇5
1.1理論教學(xué)
對于大多數(shù)課程而言,從宏觀上將課程知識點及其關(guān)聯(lián)講授給學(xué)生非常必要,這便于學(xué)生更加系統(tǒng)深刻地理解所學(xué)內(nèi)容。作為教材講解C語言程序設(shè)計的知識點結(jié)構(gòu)。知識點之間的關(guān)聯(lián)可以層層細(xì)化,教師首先從宏觀上給學(xué)生介紹C語言程序的整體組成結(jié)構(gòu)。教師對涉及的知識點進(jìn)行歸類,共包含預(yù)處理命令、數(shù)據(jù)類型、運算符、語句和函數(shù)等5部分,從宏觀上梳理C語言與程序設(shè)計課程的知識點是非常必要和重要的,這樣可以避免學(xué)生“只見樹木,不見森林”,最后只學(xué)到一堆零散的知識點,只有從宏觀上把握各個知識點在知識體系中的位置和作用,才能學(xué)得深、記得牢。對于程序語言課程,如果僅僅介紹語法的運用,學(xué)生往往對知識點理解不深刻。我們在教學(xué)實踐中的體會是:在講解C語言語法的基礎(chǔ)上,適當(dāng)?shù)仄饰鼍幊陶Z言在計算機中的運行機制,會讓學(xué)生的理解更加透徹。因此,我們的課堂教學(xué)方法分為如下兩部分。
1)課件講解。課件講解包括兩部分,即知識點要點總結(jié)和知識點運行機制剖析。知識點要點總結(jié)就是告訴學(xué)生該知識點如何使用;而知識點運行機制剖析則告訴學(xué)生該程序在計算機內(nèi)存中的執(zhí)行過程。由于絕大部分高校在開設(shè)C語言程序設(shè)計之前都會開設(shè)計算機文化基礎(chǔ)等課程,因此學(xué)生有足夠的計算機基礎(chǔ)知識來理解C語言程序的運行機制。
2)實例演示。作為一門編程語言,C語言需要在實踐中理解和掌握,因此,課堂教學(xué)中,在具體的編程環(huán)境(如VC++6.0)下演示十分必要。通過在具體的軟件環(huán)境下編程,告訴學(xué)生應(yīng)該做什么和不應(yīng)該做什么,并總結(jié)該知識點的注意事項。相比傳統(tǒng)的脫離編程環(huán)境,只在PPT或黑板上進(jìn)行板書的教學(xué)模式,該方法的教學(xué)效果要好得多。在課堂教學(xué)中,具體的教學(xué)步驟如下:①使用PPT或者板書列出該知識點的注意要點;②在編程環(huán)境(如VC++6.0)下演示該知識點的用法,給出正確的和錯誤的使用方法,并進(jìn)行對比;③通過幻燈片動畫或Flas等形式演示程序在計算機內(nèi)存中的執(zhí)行過程,讓學(xué)生更加深刻地理解程序的運行機制。
3)教學(xué)難點與重點——“復(fù)合知識點”。從C語言的教學(xué)內(nèi)容來講,數(shù)組、函數(shù)和指針是教學(xué)的重點章節(jié),這些章節(jié)之間相互關(guān)聯(lián)的部分又是重點中的難點,如數(shù)組和函數(shù)結(jié)合,數(shù)組名做函數(shù)參數(shù),數(shù)組和指針結(jié)合,指向數(shù)組的指針變量,函數(shù)和指針結(jié)合,指向函數(shù)的指針變量等。在教學(xué)過程中要反復(fù)強調(diào)各個知識點的注意事項,如果基本知識點能夠理解透徹,上述難點內(nèi)容也就迎刃而解了。
1.2上機實踐教學(xué)
在實踐教學(xué)中,教師可以通過實際教學(xué)案例循序漸進(jìn)地強化學(xué)生對C語言知識點的理解。上機實踐的教學(xué)內(nèi)容通常分為兩部分:基本知識點練習(xí)和綜合訓(xùn)練。首先通過基本知識點的練習(xí),讓學(xué)生掌握該知識點的使用,即鞏固課堂所學(xué)內(nèi)容;然后通過一個綜合性的大作業(yè),訓(xùn)練學(xué)生綜合應(yīng)用C語言知識點的能力,例如,通過編寫“學(xué)生課程成績統(tǒng)計系統(tǒng)”考查學(xué)生對數(shù)組、結(jié)構(gòu)體、指針、函數(shù)、文件等知識的綜合掌握情況。對于初學(xué)編程語言的學(xué)生,往往沒有養(yǎng)成良好的編程習(xí)慣,出錯的可能性較大,而出錯之后進(jìn)行調(diào)試又將耗費較長的時間,這勢必對學(xué)生的學(xué)習(xí)熱情產(chǎn)生負(fù)面影響。因此,一開始就給學(xué)生制定科學(xué)的編程步驟和規(guī)范,使學(xué)生養(yǎng)成良好的編程習(xí)慣,將大大減少程序出錯的可能。下面是按照上述五步編寫的一個完整的C語言程序,用來比較兩個整數(shù)的大小。按照上述五步進(jìn)行編程,經(jīng)過一段時間的訓(xùn)練之后,學(xué)生出現(xiàn)語法錯誤的可能性大大降低,此時學(xué)生更多的精力將集中在程序算法的設(shè)計和實現(xiàn)上。
1.3考試形式
對于C語言程序設(shè)計的考核方式,我們采用知識點考核和編程實踐相結(jié)合的方式。知識點考核偏重于C語言基本語法,用于檢驗學(xué)生對知識點的掌握是否全面,此項考核約占總成績的40%;編程實踐考核用于檢驗學(xué)生的實際動手能力,學(xué)生將在規(guī)定的時間內(nèi)根據(jù)題目在機器上編程,此項考核約占總成績的60%。為了實現(xiàn)知識點的考核,我們將考試與計算機二級C語言上機考試緊密結(jié)合,采用題庫平臺進(jìn)行上機考試,學(xué)生直接在機器上答題并提交,知識點考核多采取客觀題,如填空題、程序修改題以及讀程序題等,編程題在實戰(zhàn)編程中考核。C語言程序設(shè)計課程的重要特點就是實踐性強,學(xué)習(xí)該課程的目的就是為了編寫程序。因此從考試的角度講,進(jìn)行編程實踐是最合適的方式,通過上機編程來考核學(xué)生的學(xué)習(xí)情況也是最公正和客觀的方式。
2C語言程序設(shè)計教學(xué)實踐結(jié)果分析
中國礦業(yè)大學(xué)(北京)每年都有40多個班級同時開設(shè)C語言程序設(shè)計課程,因此該課程教學(xué)質(zhì)量的高低將直接影響全校理工科學(xué)生對C語言的理解和掌握。中國礦業(yè)大學(xué)(北京)C語言程序設(shè)計教學(xué)團(tuán)隊經(jīng)過長期的探索總結(jié)出一套行之有效的C語言教學(xué)方法,我們將上述方法在學(xué)校越崎實驗班中進(jìn)行了試點。如圖2所示,采用上述教學(xué)法的越崎實驗班的C語言程序設(shè)計課程考試成績要明顯好于其他班級,其中90分以上的學(xué)生占10.7%,80分以上的學(xué)生占總?cè)藬?shù)的53.6%。另外,學(xué)生的學(xué)習(xí)積極性比采用上述方法前得到明顯提高,很多學(xué)生都對計算機編程產(chǎn)生了濃厚興趣,實踐證明我們提出的上述方法是行之有效的。
3結(jié)語
篇6
關(guān)鍵詞:C語言;程序設(shè)計;教學(xué)方法
中圖分類號:G642文獻(xiàn)標(biāo)識碼:B
1引言
隨著大學(xué)的擴(kuò)招,越來越多的普通學(xué)生進(jìn)入大學(xué)學(xué)習(xí),大學(xué)也從精英教育向普通教育過渡。不論理科還是文科,C語言程序設(shè)計成為很多大學(xué)生學(xué)習(xí)計算機知識的入門課程之一。這使我們這些長期從事程序設(shè)計教學(xué)的人員,遭遇到了前所未有的挑戰(zhàn)。
如何挑選教材,如何安排教學(xué)內(nèi)容,如何選擇適當(dāng)?shù)陌咐鹊仁俏覀儽仨氁鎸Φ膯栴}。本文就這些問題作一些探討。
2以往的教學(xué)經(jīng)驗
多年來,我一直在教學(xué)第一線教授C語言程序設(shè)計,在以往的教學(xué)中,我要求自己做到以下幾點:
第一,講課內(nèi)容要符合初學(xué)者的認(rèn)知規(guī)律,從簡單到復(fù)雜,循序漸進(jìn)。
第二,通過實例講解相關(guān)的概念,重點在培養(yǎng)學(xué)生的程序設(shè)計能力。
第三,算法要盡量簡單,有利于學(xué)生的理解。
第四,授課涉及的內(nèi)容,要講解透徹、詳盡。
譚浩強老師的《C程序設(shè)計》是我在教學(xué)中長期選用的教材,因為它能夠很好地滿足自己的教學(xué)思想和要求。
該教材的編寫順序和內(nèi)容,非常符合初學(xué)者的認(rèn)知規(guī)律,難點分散,內(nèi)容的安排較合理,每一章都講解了新的概念,但又注意到不引入太多的新概念;為了避免從概念到概念,從理論到理論,教材中使用了大量通俗易懂的實例,并使用很多有意義的圖表來分析和講解概念,方便同學(xué)們對概念的理解;該書的內(nèi)容重點突出,對C語言中最基本和常用的部分進(jìn)行了詳細(xì)的分析和講解,為學(xué)生以后更深層次的學(xué)習(xí)打下了牢固的基礎(chǔ)。
學(xué)生們普遍反映《C程序設(shè)計》是一本非常好的教材,不但幫助他們掌握了程序設(shè)計的理念,還能真正動手編寫一些實用程序。只不過,我以前的學(xué)生,大部分是錄取分?jǐn)?shù)超過一本的,《C程序設(shè)計》的難度和深度對他們很適合。最近幾年,由于擴(kuò)招和學(xué)校合并等原因,學(xué)生的水平越發(fā)參差不齊,給教學(xué)工作帶來了不少難度,也使自己更多地思考和嘗試搞好程序設(shè)計教學(xué)的方法。
3選擇適當(dāng)?shù)慕滩?/p>
有關(guān)C語言程序設(shè)計的教材,真可謂是百花齊放,百鳥爭鳴了,筆者并不認(rèn)為這是一件壞事情,恰恰相反,如果每個作者經(jīng)過自己多年的教學(xué)和科研,都對程序設(shè)計課程的教學(xué)方法有自己獨特的想法,同行們可以互相交流,取人之長補己之短,何樂而不為呢?但不論如何,由于教材比較多(也確實有些教材水平不高),給教師們選擇教材帶來了難度。為此,譚浩強老師總結(jié)了自己多年的教學(xué)和寫作經(jīng)驗,根據(jù)讀者的不同需求將C語言教材分為三種版本,以適應(yīng)不同的學(xué)生。
第一本就是發(fā)行了1000多萬冊的新世紀(jì)計算機基礎(chǔ)教育叢書之《C程序設(shè)計》,已經(jīng)發(fā)行第三版了,該教材全面細(xì)致、深入淺出地介紹了使用C語言進(jìn)行程序設(shè)計的方法,語言生動案例豐富,不僅講解了C語言的語法,還通過大量的例題講解了構(gòu)造程序和設(shè)計算法的基本要領(lǐng);第二本是普通高等教育“十一五”國家級規(guī)劃教材,“中國高等院校計算機基礎(chǔ)教育課程體系規(guī)劃教材”之《C程序設(shè)計教程》,這本書以《C程序設(shè)計》為基礎(chǔ),科學(xué)地減少了部分內(nèi)容,更加突出了教學(xué)重點,采用了既通俗又精練的寫法;第三本也是普通高等教育“十一五”國家級規(guī)劃教材,高等院校計算機應(yīng)用技術(shù)規(guī)劃教材應(yīng)用型教材系列之《C語言程序設(shè)計(第二版)》,與前兩本相比,內(nèi)容更加精練。三本書均采用了“提出問題―解決問題―歸納分析”的寫作思想,在講解程序時,包括了提出問題、解題思路、編寫程序、運行結(jié)果、程序說明和深入思考等幾部分內(nèi)容。
筆者在教學(xué)工作中接觸了很多學(xué)生,有號稱“小清華”的本科學(xué)生,有普通本科學(xué)生,還有夜大的學(xué)生,實踐證明,將學(xué)生準(zhǔn)確分類,選擇適合他們的教學(xué)內(nèi)容和教材是非常重要的。上述第一本教材適合學(xué)生基礎(chǔ)好、學(xué)時較多(一般應(yīng)超過56學(xué)時)、對程序設(shè)計的應(yīng)用要求比較高的專業(yè)的學(xué)生,例如軟件工程、信息安全等專業(yè);而第二本教材適合學(xué)生基礎(chǔ)一般、學(xué)時中等(一般為48學(xué)時)、對程序設(shè)計的應(yīng)用要求不太高的專業(yè),例如通信工程、計算機審計等專業(yè);第三本教材適合學(xué)生基礎(chǔ)一般、學(xué)時較少(32學(xué)時左右)、對程序設(shè)計的應(yīng)用要求很低的專業(yè),例如管理科學(xué)等,對這些專業(yè),只要求學(xué)生能看得懂程序,了解計算機是怎么解決問題的就達(dá)到教學(xué)目標(biāo)了。
而對于一些重點院校,尤其是學(xué)生的自學(xué)能力非常強的學(xué)校,如果教師自己的水平也足夠高,有很深的程序設(shè)計功底,不妨選擇吳文虎老師的《程序設(shè)計基礎(chǔ)》,這也是一本非常好的教材。
4靈活安排教學(xué)內(nèi)容
教材不是講稿,任課教師需要根據(jù)各自專業(yè)的特點,對教學(xué)內(nèi)容做適當(dāng)?shù)娜∩?不需要面面俱到。盡管譚浩強老師的三種教材已經(jīng)根據(jù)學(xué)生的不同層次,將教學(xué)內(nèi)容做了重新取舍,但是教師的工作就是要因材施教,而不能照本宣科。
例如,對于位運算的內(nèi)容,信息安全專業(yè)的學(xué)生必須掌握,該專業(yè)需要了解計算機低層的運算,才能理解密碼學(xué)具體的實現(xiàn)方法以及網(wǎng)絡(luò)安全的實現(xiàn)細(xì)節(jié),而對于軟件工程專業(yè),位運算可以少講,甚至不講。
又例如,盡管譚老師的《C程序設(shè)計》中寫的最好的內(nèi)容是它對指針的解釋和描述,想當(dāng)年,我自己就是在閱讀了很多書都不得要領(lǐng)的情況下,通過學(xué)習(xí)《C程序設(shè)計》才理解什么是指針的。譚老師將C語言中的精髓―“指針”的概念描述十分清楚、透徹,尤其是對指針使用時一些細(xì)節(jié)問題的描述,使我非常受益。但是,并不是所有的專業(yè)都需要將這部分內(nèi)容的全部作為教授的內(nèi)容,有些專業(yè)可以作適當(dāng)?shù)恼{(diào)整,例如那些偏文科的專業(yè):會計學(xué)、審計學(xué)等。對于這些專業(yè),只要通過簡單的案例將指針的概念交代清楚就行了,畢竟這是C語言的精髓。
再比如,不論任何專業(yè),遞歸的概念對于大多數(shù)低年級學(xué)生來說是很難掌握的,注意,這里說的是掌握,那么,我們只要求他們能看得懂遞歸程序就可以了。也就是說,要明白遞歸是自己調(diào)用自己,而不是讓他們學(xué)會編寫解決類似迷宮、八皇后或者是背包問題的程序,這些內(nèi)容可以放到高年級學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)課程的時候?qū)W習(xí)。
5精選與學(xué)生專業(yè)相關(guān)的案例
譚老師教材中的案例都是經(jīng)過精心挑選的,有很多有趣的問題,例如國王的小麥、猴子吃桃、漢諾塔等等,這些對于學(xué)生們學(xué)習(xí)程序設(shè)計都是很好的例子。但是一本教材的容量畢竟是有限的,作為教師,應(yīng)該花一些時間,挑選更多的案例,幫助學(xué)生們舉一反三。程序設(shè)計思想的形成可以通過閱讀大量的程序,并經(jīng)過自己的思考和提練,最后達(dá)到掌握思想的目的。
挑選什么樣的程序作為案例,就是教師需要考慮的問題。我認(rèn)為,除了教材上一些基本的案例,教師需要選擇與專業(yè)背景有關(guān)的案例。
例如,針對信息安全專業(yè)可以選擇凱撒密碼的實現(xiàn)方法、HILL密碼的實現(xiàn)方法、異或運算實現(xiàn)加解密、簡單的暴力破解口令、大整數(shù)的算術(shù)運算、素數(shù)的產(chǎn)生和使用、簡單身份驗證系統(tǒng)的實現(xiàn),等等。這些案例既可以作為教學(xué)的例子,也可以作為實踐環(huán)節(jié)的實現(xiàn)內(nèi)容。
使用與專業(yè)相關(guān)的案例進(jìn)行教學(xué)和實踐,不但可以極大地激發(fā)學(xué)生的學(xué)習(xí)興趣,還使他們學(xué)到了運用所學(xué)知識解決問題的方法及動手能力。
6結(jié)束語
C語言程序設(shè)計的教學(xué)不僅僅是教一門語言,也是教程序設(shè)計方法,教材的選擇,課程內(nèi)容的安排,乃至案例的選擇不但要符合教學(xué)的要求,更要適合學(xué)生的特點,還要兼顧不同的專業(yè)要求。
參考文獻(xiàn):
[1] 譚浩強. C程序設(shè)計[M]. 3版. 北京:清華大學(xué)出版社,2005.
篇7
關(guān)鍵詞:教學(xué)模式;任務(wù)驅(qū)動;c語言程序設(shè)計;教學(xué)實踐
0 引言
《C語言程序設(shè)計》作為計算機程序設(shè)計的基礎(chǔ),是理工類本科學(xué)生的一門必修課,尤其是C語言對計算機硬件具有很好的編程能力,使其在工科教學(xué)中的生命力越來越強。我們學(xué)院在C語言的教學(xué)上基本上還是采取傳統(tǒng)的教學(xué)模式:按照C語言教材自身的內(nèi)容上課、上機,采取筆試形式考試。這樣的教學(xué)模式使得學(xué)生過分注重C的語法、語句等規(guī)則,而忽視了對編程思路的培養(yǎng),學(xué)生獨立分析問題和解決問題的能力沒有很大的提高,給學(xué)生參加全國等級考試以至后續(xù)課程的學(xué)習(xí)留下了隱患。下面就作者在C語言教學(xué)過程中的經(jīng)驗談?wù)勏敕ā?/p>
1 傳統(tǒng)教學(xué)模式
傳統(tǒng)教學(xué)模式是以教師作為課堂的中心,以廣大學(xué)生為講授對象,以課本作為講授的主線。雖然現(xiàn)在教學(xué)環(huán)境大都采用多媒體大屏幕,操作方便,易于控制教學(xué)內(nèi)容和節(jié)奏,能在規(guī)定課時內(nèi)呈現(xiàn)較多信息量;但是學(xué)生往往處于被動學(xué)習(xí)狀態(tài),教學(xué)內(nèi)容難以適應(yīng)學(xué)生的個體差異,所有學(xué)生被迫按照老師的講授速度進(jìn)行學(xué)習(xí),不利于培養(yǎng)思維能力與創(chuàng)造能力。
上機實踐課上通常老師會事先布置幾道編程題,但是學(xué)生上機目標(biāo)不是很明確,問的問題多數(shù)是屬于同一類問題。老師不停地在機房各處一一解答,既浪費時間,也沒取到很好的效果。學(xué)生在機房沒有緊迫感,甚至有些學(xué)生覺得無事可做,就會打游戲等。這種上機方式不利于培養(yǎng)學(xué)生的動手能力和自我解決問題的能力。
學(xué)生學(xué)不好C語言主要是因為C語言教學(xué)的重點不是放在如何解決問題上,而是把大部分的時間放在講解語法規(guī)則和語句格式上,其后果就是學(xué)生一拿到任務(wù)后首先琢磨如何定義變量,用什么語句,而不是對問題進(jìn)行合理的分析,考慮最佳算法,這樣當(dāng)然覺得很難而且也設(shè)計不出好的程序。學(xué)生參加全國等級考試的通過率很低也就不足為怪了。
2 “任務(wù)驅(qū)動式”教學(xué)模式
采用“任務(wù)驅(qū)動式”的教學(xué)方法,知識及技能的傳授以完成典型“任務(wù)”為主,有利于提高學(xué)生利用計算機進(jìn)行自主學(xué)習(xí)與解決問題的能力。
2.1 教學(xué)內(nèi)容的改革
我們把通過全國計算機二級考試作為學(xué)習(xí)c語言的目標(biāo),針對等級考試大綱來確定教學(xué)計劃以及教學(xué)內(nèi)容。為此,我們從第一堂課起就強調(diào)并要求學(xué)生通過全國二級考試,既讓學(xué)生明確短期學(xué)習(xí)目標(biāo),又放眼長遠(yuǎn)的努力方向,以激發(fā)學(xué)生進(jìn)行自主學(xué)習(xí)的主動性。我們將教學(xué)內(nèi)容分離為幾個相對獨立的模塊,即結(jié)構(gòu)模塊、數(shù)組模塊、指針模塊、函數(shù)模塊和文件模塊。模塊的內(nèi)容要循序漸進(jìn),把握好由易到難,由簡單到復(fù)雜的教學(xué)過程,否則容易使學(xué)生一開始就產(chǎn)生一種畏懼情緒,失去學(xué)習(xí)興趣。然后,力求概念準(zhǔn)確,分散難點。各模塊的教學(xué)目標(biāo)要十分明確,教學(xué)量適中,讓學(xué)生很容易把握住教學(xué)要點,理解和掌握教學(xué)內(nèi)容。
2.2 設(shè)計好實驗任務(wù)
實驗任務(wù)的設(shè)計包括任務(wù)的提出與分解、最終達(dá)到的目標(biāo)、解決問題的方法等。目的性要強,任務(wù)要明確,這樣才能很好地緩解計算機基礎(chǔ)課程實驗教學(xué)中學(xué)生無事可做,玩游戲、上網(wǎng)聊天等現(xiàn)象。要培養(yǎng)學(xué)生限時編程的良好習(xí)慣,要求學(xué)生在規(guī)定的時間內(nèi)編寫和調(diào)試好給定的程序。通過這些基本功的訓(xùn)練,學(xué)生在具備了扎實的計算機程序設(shè)計能力后,就較容易通過全國計算機二級考試。
在程序設(shè)計語言教學(xué)中,算法是程序設(shè)計的靈魂,學(xué)生編寫不出程序的首要原因是設(shè)計不出―個合適的算法。因此,在教學(xué)中應(yīng)對常用的算法結(jié)合典型實例進(jìn)行詳細(xì)地講解,強調(diào)算法的步驟,讓學(xué)生對算法有比較深刻地了解,并鼓勵學(xué)生從不同角度去思考問題,對于同一個問題的解決用多種方法來實現(xiàn)。這樣有助于拓展學(xué)生的思維,增加學(xué)生對學(xué)習(xí)C語言的興趣。
例如:計算n!
我們可以采用遞歸法:
2.3 學(xué)習(xí)成績評價方式的改革
采用“筆試+上機考試”的評價方法可以提前讓學(xué)生體驗全國等級考試的過程。同時,兩種形式考試都通過才算這門課程通過,也能促使學(xué)生在學(xué)習(xí)c語言的基本知識之外加強編程實踐,讓學(xué)生學(xué)到c語言的語法規(guī)則的同時也掌握了程序設(shè)計的方法。
篇8
由于時間的關(guān)系,我們的這次實習(xí)課程老師并沒有給我們詳細(xì)的介紹,只是給我們簡單的介紹了幾個比較重要的實際操作。包括了程序模塊處理.簡單界面程序.高級界面程序.程序的添加修改.用程序做一元線性回歸處理以及用c語言程序來畫粒度分布圖等這幾樣比較重要的時間操作。
上機實驗是學(xué)習(xí)程序設(shè)計語言必不可少的實習(xí)環(huán)節(jié),特別是c語言靈活、簡潔,更需要通過編程的實習(xí)來真正掌握它。對于程序設(shè)計語言的學(xué)習(xí)目的,可以概括為學(xué)習(xí)語法規(guī)定、掌握程序設(shè)計方法、提高程序開發(fā)能力,這些都必須通過充分的實際上機操作才能完成。
學(xué)習(xí)c程序設(shè)計語言除了課堂講授以外,必須保證有不少于課堂講授學(xué)時的上機時間。因為學(xué)時所限,課程不能安排過多的統(tǒng)一上機實驗,所以希望學(xué)生有效地利用課程上機實驗的機會,盡快掌握用c語言開發(fā)程序的能力,為今后的繼續(xù)學(xué)習(xí)打下一個良好的基礎(chǔ)。為此,我們結(jié)合課堂講授的內(nèi)容和進(jìn)度,安排了12次上機實驗。課程上機實驗的目的,不僅僅是驗證教材和講課的內(nèi)容、檢查自己所編的程序是否正確,課程安排的上機實驗的目的可以概括為如下幾個方面:
1.熟悉程序開發(fā)環(huán)境、學(xué)習(xí)計算機系統(tǒng)的操作方法
一個c語言程序從編輯、編譯、連接到運行,都要在一定的外部操作環(huán)境下才能進(jìn)行。所謂 環(huán)境 就是所用的計算機系統(tǒng)硬件、軟件條件,只有學(xué)會使用這些環(huán)境,才能進(jìn)行程序開發(fā)工作。通過上機實驗,熟練地掌握c語言開發(fā)環(huán)境,為以后真正編寫計算機程序解決實際問題打下基礎(chǔ)。同時,在今后遇到其它開發(fā)環(huán)境時就會觸類旁通,很快掌握新系統(tǒng)的使用。
2.學(xué)習(xí)上機調(diào)試程序
完成程序的編寫,決不意味著萬事大吉。你認(rèn)為萬無一失的程序,實際上機運行時可能不斷出現(xiàn)麻煩。如編譯程序檢測出一大堆錯誤。有時程序本身不存在語法錯誤,也能夠順利運行,但是運行結(jié)果顯然是錯誤的。開發(fā)環(huán)境所提供的編譯系統(tǒng)無法發(fā)現(xiàn)這種程序邏輯錯誤,只能靠自己的上機經(jīng)驗分析判斷錯誤所在。程序的調(diào)試是一個技巧性很強的工作,對于初學(xué)者來說,盡快掌握程序調(diào)試方法是非常重要的。有時候一個消耗你幾個小時時間的小小錯誤,調(diào)試高手一眼就看出錯誤所在。
通過這次為數(shù)不多的幾天計算機實習(xí)學(xué)習(xí),我們了解了一些關(guān)于c語言的知識,理解鞏固了我們c語言的理論知識,著對我們將來到社會工作將會有莫大的幫助。同時它讓我知道,只要你努力,任何東西都不會太難。
3.加深對課堂講授內(nèi)容的理解
課堂上要講授許多關(guān)于c語言的語法規(guī)則,聽起來十分枯燥無味,也不容易記住,死記硬背是不可取的。然而要使用c語言這個工具解決實際問題,又必須掌握它。通過多次上機練習(xí),對于語法知識有了感性的認(rèn)識,加深對它的理解,在理解的基礎(chǔ)上就會自然而然地掌握c語言的語法規(guī)定。對于一些內(nèi)容自己認(rèn)為在課堂上聽懂了,但上機實習(xí)中會發(fā)現(xiàn)原來理解的偏差,這是由于大部分學(xué)生是初次接觸程序設(shè)計,缺乏程序設(shè)計的實習(xí)所致。C語言程序設(shè)計實習(xí)心得體會(3篇)C語言程序設(shè)計實習(xí)心得體會(3篇)。
篇9
關(guān)鍵詞:《C語言程序設(shè)計》;教學(xué)改革;案例教學(xué);師生互動;多媒體
中圖分類號:G642文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2009)25-7182-02
Practicing on Teaching of "C Programming"
QIAO Zheng-hong
(Sci. & Tech., Institute of Science, PLA University, Nanjing 211101, China)
Abstract: C Programming is a basic course in public, it is also a practical course with highly experimental demand. Old measure of teaching in C do not adapt the student' s need, the measure of reforming teaching is introducted, such as Case Study, Teacher-student interaction, Rational use of multimedia, which gets rather good response.
Key words: C Programming; reform of teaching; case study; Teacher-student interaction; multimedia
1 引言
我校為非計算機專業(yè)的學(xué)生設(shè)置了兩門計算機公共基礎(chǔ)課程:一是“大學(xué)計算機基礎(chǔ)”,二是“計算機程序設(shè)計基礎(chǔ)”,要求所有學(xué)生必須選修。其中“計算機程序設(shè)計基礎(chǔ)”課程選用目前流行的C語言作為教學(xué)語言。
C語言是我校學(xué)生學(xué)習(xí)程序設(shè)計的入門語言,學(xué)生分析問題、解決問題的能力和程序設(shè)計思想的形成都與C語言有著密切的聯(lián)系。C語言既具有高級語言的優(yōu)點,又具有低級語言的許多特點,既可以用來編寫系統(tǒng)軟件,又可以用來編寫應(yīng)用軟件。C語言語法限制不嚴(yán)格,程序設(shè)計自由度大,在使用時會出現(xiàn)一些“副作用”,再加上現(xiàn)行在教學(xué)過程中存在的一些弊端,所以在學(xué)習(xí)中學(xué)生普遍反映“難學(xué)”、“不懂”、“沒興趣”,這也是在C語言教學(xué)中普遍遇到的問題。
2 現(xiàn)行教學(xué)過程中存在的問題
2.1 以書本為中心,忽視學(xué)生能力的培養(yǎng)
以書本為中心的教學(xué)模式,采用從概念到概念的注入式教學(xué),偏重于C語言語法知識的詳細(xì)講解,而對程序設(shè)計思想、程序設(shè)計方法和程序設(shè)計風(fēng)格的介紹很少,對編程能力的培養(yǎng)不足,導(dǎo)致學(xué)生學(xué)不深、學(xué)不透、學(xué)不精,不會編寫和調(diào)試程序,不會測試程序的正確性,編寫的程序可讀性很差,遇到稍微復(fù)雜的程序就讀不懂,更不用說運用學(xué)到的概念去解決實際問題了。
2.2 以教師為主體,忽視學(xué)生的能動作用
以教師為主體的教學(xué)方法中,由于片面強調(diào)和突出教師的主導(dǎo)作用,忽視和壓抑了學(xué)生的能動作用;片面地強調(diào)知識的傳授和灌輸,忽視了學(xué)生創(chuàng)新能力的培養(yǎng);注重“知識型”人才,忽略了“智能型”人才的培養(yǎng)。在教學(xué)的過程中,教師只注重講解概念、語法和程序,不注意調(diào)動學(xué)生的學(xué)習(xí)熱情,學(xué)生被動接受灌輸?shù)闹R,學(xué)習(xí)熱情低,即使掌握了這些內(nèi)容,也不能靈活運用,達(dá)不到舉一反三的目的。
2.3 多媒體教學(xué)過分強調(diào)表現(xiàn)形式,忽略了內(nèi)容本身
在現(xiàn)代化的教學(xué)過程中,利用投影儀、計算機、網(wǎng)絡(luò)等現(xiàn)代設(shè)備開展多媒體輔助教學(xué),具有較好的教學(xué)效果。但是在課件制作上過分強調(diào)表現(xiàn)形式,忽略了內(nèi)容本身,往往造成喧賓奪主,達(dá)不到預(yù)期的效果;另外在課堂上,教師過分依賴課件演示,忽視與學(xué)生溝通,影響學(xué)生參與教學(xué)活動的積極性。
針對以上存在的不足,我們在對C 語言教學(xué)過程中,開展了一系列的教學(xué)改革,在教學(xué)中采用案例教學(xué)法,強化師生互動,積極培養(yǎng)學(xué)生學(xué)習(xí)興趣,并合理使用現(xiàn)代教育手段,取得了良好的教學(xué)效果。
3 教學(xué)改革方法
3.1 采用實例教學(xué),突出能力培養(yǎng)
為了改變以書本為中的注入式教學(xué)方式,我們探索采用了實例教學(xué)法,以程序設(shè)計的需要帶動語言知識的學(xué)習(xí),在每個知識點上以引例開頭,激發(fā)學(xué)生的好奇心和求知欲,從而促進(jìn)學(xué)生成為教學(xué)主體,引導(dǎo)學(xué)生進(jìn)行自主學(xué)習(xí)、合作學(xué)習(xí)、研究性學(xué)習(xí),增強學(xué)生的綜合應(yīng)用能力,從而提高了教學(xué)質(zhì)量,取得了良好的效果。
在實際教學(xué)實施過程中,我們采用了項目遞進(jìn)驅(qū)動教學(xué)法,改變滿堂灌的做法,將學(xué)生的眼手腦全部調(diào)動起來。精心設(shè)計實例,給學(xué)生一個比較實際的切入點,通過教師的演示使學(xué)生感覺能夠入手,然后再將此實例不斷修改、擴(kuò)充,引導(dǎo)學(xué)生參與到程序的編寫過程中,并將學(xué)生設(shè)計的程序展示,讓學(xué)生來評判優(yōu)劣、吸收優(yōu)點、修改錯誤,引導(dǎo)學(xué)生進(jìn)行程序優(yōu)化。比如在進(jìn)行if語句的教學(xué)時,針對符號函數(shù)的求解,我們給出多種可能實現(xiàn)的程序段,讓學(xué)生分析哪些程序段能夠完成計算,哪些不能完成計算,對不能完成計算的程序段如何進(jìn)行修正等。通過這些程序的分析,使他們加深了對if語句的理解,掌握了if與else的配對關(guān)系,并靈活運用去解決其他問題。
3.2 強化師生互動,激發(fā)學(xué)習(xí)學(xué)習(xí)熱情,發(fā)揮學(xué)生主觀能動性
在C語言教學(xué)中,我們大力強化師生互動,充分發(fā)揮學(xué)生的主觀能動性,注重培養(yǎng)學(xué)生獨立學(xué)習(xí)、獨立思考、勇于創(chuàng)新的能力。師生互動教學(xué)我們采用了“問答式”、“討論式”等多種形式。每一種方式都有其特點和特定的適用范圍,在實際教學(xué)中我們根據(jù)具體情況加以靈活運用。
“問答式”就是教師事先設(shè)計好問題,啟發(fā)學(xué)生思考,引導(dǎo)學(xué)生在問題解決中構(gòu)造算法進(jìn)而掌握相關(guān)的概念、語法、功能及應(yīng)用。例如:要求學(xué)生編程實現(xiàn)輸入三角形的三條邊a,b,c,計算以這三個數(shù)為邊長的三角形面積。我們可以適當(dāng)進(jìn)行提示提問:①輸入的三條邊能否構(gòu)成三角形?②已知三邊長,三角形面積該如何求呢?這就要結(jié)合中學(xué)時的數(shù)學(xué)知識,對于問題①用數(shù)學(xué)語言來描述為:兩邊之和大于第三邊。那么用程序語言該如何描述呢,應(yīng)該采用哪一種程序結(jié)構(gòu)?順序、選擇還是循環(huán)?程序結(jié)構(gòu)知道了,下一步就是根據(jù)數(shù)學(xué)公式計算面積。這樣,逐步對學(xué)生進(jìn)行提示和引導(dǎo),可以使學(xué)生的思維一直處于活躍狀態(tài)。
“討論式”就是教師預(yù)先設(shè)定討論題目和要求,由學(xué)生分組討論的一種互動教學(xué)方式。它適用于課程中的重點難點問題。如在鏈表的教學(xué)中,我們就如何利用鏈表實現(xiàn)棧、隊列,用鏈表實現(xiàn)與用數(shù)組實現(xiàn)各有什么優(yōu)劣等問題時就采用“討論式”教學(xué)方法。課前教師將問題提出來,讓學(xué)生自己去思考。學(xué)生自由組合形成若干各小組,每個小組應(yīng)有一位秘書,負(fù)責(zé)全程記錄討論過程,最后每個小組要出一份討論報告,然后由每個小組推選一位學(xué)生上臺講解本組的實現(xiàn)方案,其他組的同學(xué)可自由提問,最后由教師對方案的可行性、是否有創(chuàng)新、須改進(jìn)之處一一進(jìn)行分析講評。這種方式有利于培養(yǎng)學(xué)生的思維能力和協(xié)作能力,激發(fā)學(xué)生學(xué)習(xí)熱情。
3.3 合理使用多媒體,提高教學(xué)效率
在教學(xué)中結(jié)合形象直觀的事例或圖形講解概念,可以充分發(fā)揮學(xué)生的形象思維能力,不但易于理解和掌握,而且印象深刻,能有效地提高學(xué)習(xí)效率。因此在C語言教學(xué)中我們可利用多媒體代替?zhèn)鹘y(tǒng)的板書,將文本、圖像、聲音、動畫結(jié)合起來,使抽象的內(nèi)容變得形象生動,學(xué)生通過多種感官來獲取知識,形成相關(guān)的概念。但是濫用多媒體教學(xué),不但達(dá)不到預(yù)期的教學(xué)效果,反而會分散學(xué)生的注意力,削弱教師在教學(xué)過程中的主導(dǎo)作用,甚至影響學(xué)生的學(xué)習(xí)積極性。在C語言多媒體教學(xué)實踐中,我們著重解決好以下問題。
3.3.1 課件內(nèi)容與形式的關(guān)系
在制作C語言課件時,我們要根據(jù)課程的教學(xué)內(nèi)容的性質(zhì)和特點選擇恰當(dāng)?shù)募夹g(shù)手段和表現(xiàn)形式,充分利用了各種媒體信息為教學(xué)內(nèi)容服務(wù)。在課件制作上,不需要花時間、花精力對課件進(jìn)行包裝,刻意追求特技效應(yīng)。在課堂教學(xué)中,過多的畫面切換,容易造成學(xué)生在學(xué)習(xí)過程中應(yīng)接不暇,對所學(xué)內(nèi)容生吞活剝,能力的培養(yǎng)無從談起。實踐證明,附加信息和無關(guān)信息過多,雖然從心里上加深刺激了學(xué)生的感知能力,但卻顯得主次部分,容易分散學(xué)生的注意力。因此我們要求課件制作要務(wù)實,不必特別美觀,也不必有很高的技術(shù)含量,涵蓋的知識點也不必很多,只要能使抽象、難懂的內(nèi)容變得直觀、易懂,有利于學(xué)生更好地接受所學(xué)的知識就夠了。
3.3.2 注意發(fā)揮教師的主導(dǎo)作用
雖然教學(xué)課件事先已經(jīng)做好,但不是說在課堂上教師只充當(dāng)“解說員”、“演示員”就可以了,這樣可能會出現(xiàn)學(xué)生看了很多,聽了很多,卻不知道要學(xué)什么,什么是重點難點,而事與愿違。其實,多媒體輔助教學(xué)作為一種現(xiàn)代化的教學(xué)手段,是用來提高課堂教學(xué)效率、突破重難點、解決一些傳統(tǒng)板書教學(xué)不容易理解的問題。作為教師應(yīng)把握住自己在教學(xué)中的主導(dǎo)地位和作用,通過教學(xué)過程的設(shè)計和靈活多變的操作,使多媒體發(fā)揮最佳教學(xué)功能。
4 結(jié)束語
采用這些教學(xué)方法,有提出問題、解決問題、擴(kuò)展問題、再解決問題、對解決問題方法的評價、優(yōu)化等幾個環(huán)節(jié),實際上是一個螺旋式滾動向前的過程,在這個螺旋式不斷向前的過程中,能夠非常自然地調(diào)動學(xué)生參與的積極性,而且通過問題的擴(kuò)展,通過一個問題的多種解決方法,使學(xué)生在課堂上真正地成為“主體”,教師扮演“主導(dǎo)”角色。當(dāng)然,在改進(jìn)和探索教學(xué)方法的同時,我們還要充分利用機房、網(wǎng)絡(luò)和課外環(huán)境,啟發(fā)和調(diào)動學(xué)生的學(xué)習(xí)積極性,培養(yǎng)和提高學(xué)生的自學(xué)能力。
參考文獻(xiàn):
[1] 中國高等院校計算機基礎(chǔ)教育改革課題研究組.中國高等院校計算機基礎(chǔ)教育課程體系2006[M]. 北京:清華大學(xué)出版社,2006.
篇10
關(guān)鍵詞:C語言程序;調(diào)試技術(shù);探究與分析
近些年來,筆者在研究C語言程序設(shè)計過程中,發(fā)現(xiàn)許多人對于自身編輯的C語言程序運行中出現(xiàn)的錯誤的處理方法存在許多問題,無法有效判斷程序錯誤的原因以及其對應(yīng)的調(diào)試方法,文章主要從兩方面分析C語言程序設(shè)計調(diào)試技術(shù)。
一、運行錯誤的判斷與調(diào)試
一般情況下,C語言程序運行錯誤被分為兩種:邏輯錯誤與程序設(shè)計錯誤,前者是指編譯時沒有錯誤提示,可以運行,但實際的運行結(jié)果與程序預(yù)期結(jié)果之間有偏差;后者是指程序設(shè)計中存在的問題,在編譯與連接程序時也沒有被發(fā)現(xiàn),程序設(shè)計錯誤的主要表現(xiàn)為:計算機突然死機、自行熱啟動或輸出信息混亂等[1]。
文章主要介紹兩種常見的運行錯誤調(diào)試方法:
①程序算法設(shè)計不合理
有一種邏輯錯誤主要是由于C語言程序設(shè)計時的算法不合理而引起的,例如對邊界及特殊情況未作預(yù)先處理,例如下述循環(huán):
While(count)
x
…
count=count-1;
y
該循環(huán)的設(shè)計構(gòu)思是進(jìn)行count次循環(huán),但是在該循環(huán)中,while旁邊的判斷條件恒為真,程序就會進(jìn)入“死循環(huán)”,這顯然是由于算法設(shè)計錯誤而導(dǎo)致的,但是編譯器對于該類錯誤的敏感度較低,只有程序運行出現(xiàn)異常的時候才可能被發(fā)現(xiàn)[3]。再舉一個例子:根據(jù)海倫公式計算三角面積的時候,首先需要對給出的三條邊長是否符合“三角形任何兩邊的和大于第三邊”的定理,若不符合這一定理則運算結(jié)果毫無意義;而程序員在設(shè)計一般實系數(shù)一元二次方程的程序時,必須設(shè)定處理復(fù)數(shù)情況的程序,避免出現(xiàn)運行錯誤[4]。若采用手算的方法是不需要先考慮到這方面,可以在出現(xiàn)問題后再根據(jù)實際情況提出解決措施。但是C語言程序是為計算機設(shè)計的,計算機不具備人腦自行應(yīng)變的能力,因此,在程序設(shè)計的過程中必須事先將可能發(fā)生的一切問題都考慮到,特別是客戶委托程序員設(shè)計的或是作為商品出售的軟件更要注意這一問題。
②程序輸入時的打字錯誤
還有一種常見的邏輯錯誤是在C語言程序輸入過程中,由于程序員不小心打錯字導(dǎo)致的,例如將判斷條件中的“>=”輸為“>”,將相等判斷“==”輸為“=”等。存在此類錯誤的程序在運行過程中出現(xiàn)的錯誤表現(xiàn)具有多樣化,且很難將該錯誤出現(xiàn)的原因與打字錯誤聯(lián)系起來[5]。
數(shù)據(jù)輸入中存在的字符錯誤或字符的格式錯誤等都會影響程序的運行結(jié)果,尤其是在數(shù)據(jù)量大,且數(shù)據(jù)輸入采用人工輸入的工作中,極其容易發(fā)生這種錯誤。筆者以多年工作經(jīng)驗建議當(dāng)數(shù)據(jù)輸入量較大時,采用文件記錄的方式,再通過讀寫文件來進(jìn)行數(shù)據(jù)輸入,這樣就能夠通過編輯數(shù)據(jù)文件來檢測數(shù)據(jù)中存在的錯誤,并且在重新計算或調(diào)試過程中就不需要反復(fù)輸入[6]。這種方法非常適用于科學(xué)或工程計算應(yīng)用程序中的數(shù)據(jù)計算。
還有一種方式就是采用自行編寫的、比較完善的數(shù)據(jù)校驗輸入模塊來取代C語言中的scanf()函數(shù)來輸入數(shù)據(jù)。這種方法多用于數(shù)據(jù)處理、事務(wù)管理等復(fù)雜的應(yīng)用程序開發(fā),常常需要將數(shù)據(jù)輸入與用戶界面等模塊相結(jié)合,對編程技能有較高的要求。
二、C語言程序設(shè)計基本調(diào)試方法
文章主要針對C語言程序設(shè)計基本調(diào)試方法的四種方法進(jìn)行介紹。
1.標(biāo)準(zhǔn)數(shù)據(jù)校驗
在程序編譯、連接完畢之后,下一階段就是運行調(diào)試。運行調(diào)試階段首先需要使用若干組已知結(jié)果的標(biāo)準(zhǔn)數(shù)據(jù)對程序進(jìn)行檢驗。在此過程中標(biāo)準(zhǔn)數(shù)據(jù)的選取對檢驗結(jié)果具有重要影響,因此,標(biāo)準(zhǔn)數(shù)據(jù)的選擇需要選取具有代表性且比較簡潔的數(shù)據(jù),主要是為了簡化對檢驗結(jié)果正確性分析的不足[7]。此外,對重要的臨界數(shù)據(jù)也需要進(jìn)行檢驗。
2.程序跟蹤
對于復(fù)雜的大型程序而言,上述檢驗一次性通過是不可能完成的。一般情況下,程序存在各種各樣的問題(程序存在問題是一個普遍現(xiàn)象,一個錯誤也沒有的程序在實際中較少),因此,需要對程序進(jìn)行嚴(yán)謹(jǐn)?shù)母櫿{(diào)試。
程序跟蹤是調(diào)試工作中的一種方法。程序跟蹤的方法是通過讓程序一句一句的執(zhí)行,通過觀察程序執(zhí)行過程中的數(shù)據(jù)以及程序的流程變化來分析其中存在的錯誤。例如在Turbo C中,可以采用兩種程序跟蹤的方法,一種是通過利用集成環(huán)境中分步執(zhí)行、斷點設(shè)置以及變量內(nèi)容顯示等功能觀察程序的合理性;還有一種方法是傳統(tǒng)方法,其主要通過在程序中直接設(shè)置斷點、打印重要變量來觀察程序有無錯誤存在。
3.邊界檢查
在數(shù)據(jù)檢查過程中,要重視邊界可能存在的特殊情況,例如以下循環(huán):
While(count
x
…
y
需要檢查設(shè)計數(shù)據(jù)count等于0、負(fù)數(shù)、999及1000等情況。若程序中存在if-else或switch等語言組成的分支時,也需要設(shè)計相應(yīng)的判斷數(shù)據(jù),且對分支中的路徑進(jìn)行檢測。
4.簡化循環(huán)次數(shù)
在調(diào)試程序的過程中,可以通過簡化程序來實現(xiàn)提升調(diào)試速度的目的,例如減少循環(huán)次數(shù)、減小數(shù)組規(guī)模、屏蔽部分次要程序段等方法。但是在簡化程序的過程中,要注意不能太過簡化,否則無法代表程序真實的運行狀況。舉個例子來說,對于一個求解N元一次方程組的程序來說,僅通過將N設(shè)置為2的檢測是遠(yuǎn)遠(yuǎn)不夠的,不能確定該程序是否在數(shù)值較大的方程組中也能得出正確的數(shù)據(jù)。若在N=5或6的情況下程序計算正確,則可以確保程序出錯的可能性較小。
結(jié)束語
計算機技術(shù)的不斷發(fā)展促使現(xiàn)代人們工作、學(xué)習(xí)以及生活方式發(fā)生巨大改變,且隨著計算機軟件功能的不斷強大,使得計算機軟件廣泛應(yīng)用于各個領(lǐng)域中。但是在C語言程序應(yīng)用過程中,程序錯誤的出現(xiàn)威脅著程序軟件的正常運行。因此,提高程序安全性成為程序員有待解決的問題。文章主要針對C語言程序設(shè)計調(diào)試技術(shù)展開分析,首先介紹了C語言運行錯誤的判斷與調(diào)試,分析了2種常見邏輯錯誤判斷與調(diào)試方法,然后針對4種C語言程序設(shè)計基本調(diào)試方法進(jìn)行闡述,旨在提高C語言程序設(shè)計調(diào)試技術(shù)水平。
參考文獻(xiàn)
[1]張秀美,趙旭霞.程序調(diào)試技術(shù)在C語言函數(shù)教學(xué)中的應(yīng)用[J].教育教學(xué)論壇,2014,22(11):85-86.
[2]崔光佐,程旭,佟冬等.面向處理器的系統(tǒng)級模擬、仿真及調(diào)試技術(shù) ――基于軟硬件協(xié)同設(shè)計的新方法[J].計算機研究與發(fā)展,2011,38(3):361-367.
[3]李從宇,王寶光.嵌入式DSP系統(tǒng)C語言硬件編程技術(shù)[J].測控技術(shù),2013,26(4):68-70.
[4]姚放吾,金鑫.基于Monitor的C語言源代碼調(diào)試器的設(shè)計與實現(xiàn)[J].計算機技術(shù)與發(fā)展,2014,21(6):55-58.
[5]吳興華.基于C語言軟件開發(fā)的效率、移植及調(diào)試[J].數(shù)字技術(shù)與應(yīng)用,2013,14(12):172-172.