需要注重理論知識(shí)和實(shí)踐應(yīng)用的結(jié)合,是計(jì)算機(jī)基礎(chǔ)課程中非常重要的一門學(xué)科,理論與實(shí)踐相結(jié)合可以更好地掌握知識(shí)。參加培訓(xùn)后應(yīng)當(dāng)總結(jié)心得體會(huì),為今后的學(xué)習(xí)提供參考。小編為你整理c語(yǔ)言程序設(shè)計(jì)培訓(xùn)心得體會(huì)精選。歡迎你的查閱和借鑒。
在這為期半個(gè)月的時(shí)間內(nèi),通過(guò)我們小組各成員之間的相互討論和合作,我們完成了學(xué)生信息管理系統(tǒng)的程序設(shè)計(jì),更值得高興的是我們的程序得到了大家的喜愛(ài),在每次的簡(jiǎn)報(bào)中都得到了較好的成績(jī)。
雖然在上個(gè)學(xué)期中,我們已經(jīng)學(xué)習(xí)了《C 語(yǔ)言程序設(shè)計(jì)》這門課,但是我所學(xué)的知識(shí)最多也就是在做作業(yè)的時(shí)候才會(huì)用到,平時(shí)沒(méi)有什么練習(xí)的機(jī)會(huì),這次的課程設(shè)計(jì)是我第一次通過(guò)自己構(gòu)思,和同學(xué)討論并且不斷查閱資料來(lái)設(shè)計(jì)一項(xiàng)程序。這次設(shè)計(jì),不僅鞏固了我以前所學(xué)的知識(shí),還讓我對(duì)c語(yǔ)言有了更深一步的了解,掌握了更多的技巧和技能。
C語(yǔ)言是計(jì)算機(jī)程序設(shè)計(jì)的重要理論基礎(chǔ),在我們以后的學(xué)習(xí)和工作中都有著十分重要的地位。要學(xué)好這種語(yǔ)言,僅僅學(xué)習(xí)課本上的知識(shí)是不夠的,還要經(jīng)常自己動(dòng)手,有較強(qiáng)的實(shí)踐能力。只有多動(dòng)手,經(jīng)常編寫(xiě)程序,才能發(fā)現(xiàn)我們學(xué)習(xí)上的漏洞和自己的不足,并在實(shí)踐中解決這些問(wèn)題,不斷提高自己轉(zhuǎn)化知識(shí)的能力。
在我們小組有解決不了的問(wèn)題時(shí),我們會(huì)主動(dòng)查閱相關(guān)的資料,或向其他同學(xué)詢問(wèn),這不僅豐富了我們的知識(shí),還增進(jìn)了我們同學(xué)之間的友誼。為了增大信息的安全性,需要用文件來(lái)存儲(chǔ)信息,由于我們?cè)谏险n時(shí)不注重對(duì)文件的運(yùn)用,所以在這方面有較大的困難。我先將書(shū)本認(rèn)認(rèn)真真地看了一遍,又做了一下課后習(xí)題來(lái)驗(yàn)證和增進(jìn)自己的理解,終于,經(jīng)過(guò)我們的不懈努力,我們小組的程序有了突破,成功地實(shí)現(xiàn)了用文件來(lái)保存并查看學(xué)生的信息。
這次設(shè)計(jì)中,我的收獲還有就是學(xué)會(huì)了用流程圖來(lái)表達(dá)自己的想法,并根據(jù)流程圖來(lái)逐步實(shí)現(xiàn)程序的功能。開(kāi)始的時(shí)候,我畫(huà)流程圖很是困難,需要一個(gè)多小時(shí)才能清楚的根據(jù)自己的想法畫(huà)出圖來(lái),后來(lái)畫(huà)多了,就更加了解它的功能,十分得心應(yīng)手,能夠比較快而準(zhǔn)確的畫(huà)出來(lái)。
在這次課程設(shè)計(jì)中,我們首先對(duì)系統(tǒng)的整體功能進(jìn)行了構(gòu)思,然后用結(jié)構(gòu)化分析方法進(jìn)行分析,將整個(gè)系統(tǒng)清楚的劃分為幾個(gè)模塊,再根據(jù)每個(gè)模塊的功能編寫(xiě)代碼。而且盡可能的將模塊細(xì)分,最后在進(jìn)行函數(shù)的調(diào)用。我們?cè)诤瘮?shù)的編寫(xiě)過(guò)程中,我們不僅用到了for循環(huán)、while循環(huán)和switch語(yǔ)句,還用到了函數(shù)之間的調(diào)用(包括遞歸調(diào)用)。由于我們是分工編寫(xiě)代碼,最后需要將每個(gè)人的代碼放到一起進(jìn)行調(diào)試。因?yàn)槲覀兠總€(gè)人寫(xiě)的函數(shù)的思想不都一樣,所以在調(diào)試的過(guò)程中也遇到了困難,但經(jīng)過(guò)我們耐心的修改,終于功夫不負(fù)有心人,我們成功了!
在參考書(shū)上,我們不僅參考了曾經(jīng)學(xué)過(guò)的高敬陽(yáng)主編的《c語(yǔ)言程序設(shè)計(jì)》,還找到了由譚浩強(qiáng)主編的第三版《c語(yǔ)言》進(jìn)行參考。
當(dāng)然,我們的程序還有一些不完善的地方,比如說(shuō),當(dāng)輸入的數(shù)據(jù)不符合我們定義的數(shù)據(jù)的格式的時(shí)候,程序會(huì)出現(xiàn)一些錯(cuò)誤,有時(shí)會(huì)出現(xiàn)主菜單的死循環(huán);在一次程序運(yùn)行中,只能行使一種權(quán)限,要想再行使另一種權(quán)限,就只能退出程序,然后再運(yùn)行程序。
三周的小學(xué)期即將結(jié)束,時(shí)間雖短,但是我收獲了很多。最后,謝謝老師和同學(xué)們的指導(dǎo),更要感謝我們小組成員之間的合作與交流。
通過(guò)本次教師發(fā)展在線的C語(yǔ)程培訓(xùn)中,我受益匪淺,幾位教授的精彩演講,讓我找到了自己的不足和日后教學(xué)中的改革方向和內(nèi)容。同時(shí),也讓我感覺(jué)到了,有今天各位教授的良好教學(xué)效果,這其中包含了他們的艱辛、背后的大量付出和無(wú)私奉獻(xiàn)。
我是一直從事C類語(yǔ)言的教學(xué)工作,對(duì)C語(yǔ)言的教學(xué)已有5年教齡,在這幾年的教學(xué)過(guò)程中,我們也一直在尋找好的教學(xué)方法和新的教學(xué)理念。通過(guò)本次學(xué)習(xí),我總結(jié)要教好《C語(yǔ)言程序設(shè)計(jì)》這門課,最基本要把握好以下幾個(gè)方面:
(一)要重視實(shí)踐環(huán)節(jié),上機(jī)調(diào)試成績(jī)非常重要。
學(xué)習(xí)一門語(yǔ)言,就是要按照它的語(yǔ)法來(lái)編程。要編程,當(dāng)然就要上機(jī)操作來(lái)驗(yàn)證你程序的正確性。所以上機(jī)非常重要,通過(guò)執(zhí)行你所寫(xiě)的程序,完成你所寫(xiě)程序的目標(biāo),最終達(dá)到你的目的。而且通過(guò)執(zhí)行程序,你會(huì)發(fā)現(xiàn)程序中的錯(cuò)誤,從而使你了解你所學(xué)知識(shí)中的不足,同時(shí),要學(xué)會(huì)根據(jù)編譯時(shí)提示的錯(cuò)誤來(lái)改正程序中發(fā)生的錯(cuò)誤,以便下次不會(huì)再犯同樣的錯(cuò)誤。
(二)基本語(yǔ)法學(xué)習(xí)雖然枯草乏味,但是它相當(dāng)于高樓大廈的一磚一瓦,一定要下硬功夫讓學(xué)生掌握熟練。
C語(yǔ)言的語(yǔ)法部分。這部分內(nèi)容是學(xué)好C語(yǔ)言的基礎(chǔ),只有學(xué)好了這些語(yǔ)法,才會(huì)寫(xiě)程序,看程序。所以對(duì)一個(gè)初學(xué)者來(lái)說(shuō),這部分內(nèi)容是非常重要的,所以要扎實(shí)地熟悉每一個(gè)語(yǔ)法,并能根據(jù)這些語(yǔ)法來(lái)編程。
(三)學(xué)習(xí)要抓住重點(diǎn),難點(diǎn)部分要多講、多學(xué)、多練。
通過(guò)這次學(xué)習(xí)使得我對(duì)C語(yǔ)言的重點(diǎn),難點(diǎn),以及易出錯(cuò)的地方把握的更精準(zhǔn)了。當(dāng)然,這只是針對(duì)我個(gè)人而言。在C語(yǔ)言學(xué)習(xí)過(guò)程,重點(diǎn)就是數(shù)組,指針,以及結(jié)構(gòu)體了。難點(diǎn)也是它們了,不過(guò)數(shù)組和結(jié)構(gòu)體還是挺簡(jiǎn)單,所以在此主要就指針?lè)矫嬲務(wù)勛约旱目捶ā?/p>
下面談?wù)勍ㄟ^(guò)這次學(xué)習(xí),結(jié)合我們學(xué)校的教學(xué)情況,打算對(duì)該課程的教學(xué)進(jìn)行如下幾個(gè)方面的改革:
(一)理論教學(xué)內(nèi)容的組織
C語(yǔ)言的重點(diǎn)知識(shí)包括:結(jié)構(gòu)化程序設(shè)計(jì)方法、流程圖的組織、三種程序設(shè)計(jì)結(jié)構(gòu)、三種基本數(shù)據(jù)類型和三種自定義數(shù)據(jù)類型;難點(diǎn)包括:結(jié)構(gòu)程序設(shè)計(jì)方法、算法的分析、流程圖的組織與設(shè)計(jì)、函數(shù)、指針等。
根據(jù)知識(shí)內(nèi)容和每年的新學(xué)時(shí)安排,我們將理論教學(xué)內(nèi)容分為授課內(nèi)容和自學(xué)內(nèi)容兩大模塊。
(1)授課內(nèi)容
C語(yǔ)言的授課內(nèi)容分為兩階段:
①基礎(chǔ)準(zhǔn)備階段 這部分內(nèi)容確保學(xué)生“實(shí)用、夠用”,主要包括三種基本數(shù)據(jù)類型(只要求掌握常用的int,float,char);三種常用運(yùn)算符及其表達(dá)式(賦值、算術(shù)、邏輯(包括關(guān)系));三種程序設(shè)計(jì)結(jié)構(gòu)(順序、選擇、循環(huán))。
②實(shí)訓(xùn)項(xiàng)目驅(qū)動(dòng)階段 這部分內(nèi)容主要是“實(shí)訓(xùn)實(shí)戰(zhàn)”,主要包括數(shù)組、函數(shù)、指針和結(jié)構(gòu)體。通過(guò)第一階段的學(xué)習(xí),學(xué)生已經(jīng)具備了一些程序設(shè)計(jì)的基礎(chǔ)知識(shí),在這一階段將通過(guò)一個(gè)實(shí)訓(xùn)項(xiàng)目的完成來(lái)熟悉主要內(nèi)容,同時(shí)鞏固第一階段的成果。
(2)自學(xué)內(nèi)容
課本中的內(nèi)容上課沒(méi)重點(diǎn)介紹或者說(shuō)就是沒(méi)提到的,劃為自學(xué)內(nèi)容。但這些內(nèi)容,我們并不是在課堂要求學(xué)生回去自學(xué):要求過(guò)高,規(guī)矩過(guò)多,這樣效果不佳。而是讓學(xué)生在實(shí)驗(yàn)中發(fā)現(xiàn)問(wèn)題后,帶著問(wèn)題去學(xué)習(xí),去找答案。
例:整型 我們只介紹int基本類型,當(dāng)學(xué)生想計(jì)算n!時(shí),學(xué)生測(cè)試5!=120時(shí),他可能會(huì)去測(cè)試20!、50!,這時(shí),存放階乘的變量Factorial再定義為int,結(jié)果就是0了,這時(shí)問(wèn)題就來(lái)了,他就會(huì)去尋找正確的處理方法(long int)。
(二)實(shí)驗(yàn)教學(xué)的安排與設(shè)計(jì)
教學(xué)改革方案確定后,我們對(duì)本課程實(shí)驗(yàn)教學(xué)上從多方面進(jìn)行了教學(xué)更新。我們考慮到學(xué)生處于了解計(jì)算機(jī)語(yǔ)言及編程的初級(jí)階段,有許多最基礎(chǔ)的內(nèi)容有待掌握,所以本課程的實(shí)驗(yàn)教學(xué)不太適合完全以項(xiàng)目開(kāi)發(fā)的形式進(jìn)行,注重的是加強(qiáng)模塊化實(shí)訓(xùn)。
(1)上好第一節(jié)實(shí)驗(yàn)課
我們常說(shuō)“上好第一節(jié)課”,那么第一節(jié)實(shí)驗(yàn)節(jié)的重要性也不言而喻。這節(jié)課對(duì)培養(yǎng)學(xué)生的學(xué)習(xí)興趣、增強(qiáng)學(xué)生的學(xué)習(xí)信心、鍛煉學(xué)生的自主學(xué)習(xí)等多方面影響很大。
第一次實(shí)驗(yàn)項(xiàng)目是—熟悉Turbo C的運(yùn)行環(huán)境,主要是掌握一些在TC中的一些鍵盤操作方式。一般是教師給學(xué)生提供程序代碼(三個(gè)),但我們?cè)趯W(xué)生不知情的情況下,給學(xué)生兩個(gè)有語(yǔ)法錯(cuò)誤的和一個(gè)正確的程序。這樣,當(dāng)學(xué)生運(yùn)行正確的程序時(shí),知道計(jì)算機(jī)可以幫我們處理問(wèn)題,原來(lái)程序就是這樣寫(xiě)的;當(dāng)學(xué)生運(yùn)行錯(cuò)誤的程序,首先他會(huì)詫異(老師給的程序原來(lái)是錯(cuò)的),于是要求他們自己修改,尤其是有時(shí)一個(gè)致命錯(cuò)誤導(dǎo)致的10多個(gè)errors,被學(xué)生修改后,沒(méi)有了errors或所剩無(wú)幾,這時(shí)學(xué)生表現(xiàn)的很興奮、很有成就感,從而加強(qiáng)了本課程的學(xué)習(xí)興趣和信心。
(2)分兩階段進(jìn)行
實(shí)驗(yàn)內(nèi)容與理論教學(xué)內(nèi)容相互應(yīng),在基礎(chǔ)準(zhǔn)備階段,這方面教學(xué)方法上主要是加強(qiáng)操練。通過(guò)各種大小程序、多重訓(xùn)練和一個(gè)問(wèn)題的多種解法來(lái)加強(qiáng)語(yǔ)法知識(shí)點(diǎn)的掌握和訓(xùn)練,開(kāi)闊學(xué)生編程的思路,掌握編程基礎(chǔ)。同時(shí),在這過(guò)程中我們嚴(yán)格把關(guān),讓學(xué)生課后認(rèn)真準(zhǔn)備,每次進(jìn)實(shí)驗(yàn)室時(shí),應(yīng)有寫(xiě)好的完整代碼,上機(jī)調(diào)試,發(fā)現(xiàn)問(wèn)題同時(shí)解決問(wèn)題,要求認(rèn)真完成實(shí)驗(yàn)內(nèi)容,并在課后書(shū)寫(xiě)實(shí)驗(yàn)報(bào)告。鼓勵(lì)學(xué)生多寫(xiě)程序,要加強(qiáng)實(shí)踐環(huán)節(jié),首先要從量上有個(gè)劃分。在實(shí)訓(xùn)項(xiàng)目驅(qū)動(dòng)階段。本階段實(shí)訓(xùn)項(xiàng)目的設(shè)計(jì)非常重要,原則是既要使學(xué)生有切入點(diǎn)能夠動(dòng)手又要使各章的內(nèi)容之間有聯(lián)系點(diǎn)。
(三)案例教學(xué)法
C語(yǔ)言的教學(xué),教師一般受傳統(tǒng)應(yīng)試教育的影響,狠抓理論考試,忽略了程序設(shè)計(jì)能力的培養(yǎng),把授課重點(diǎn)放在程序設(shè)計(jì)語(yǔ)言的基本語(yǔ)法的講授和掌握上,所選的編程實(shí)例大多用于語(yǔ)法規(guī)則的驗(yàn)證和說(shuō)明,僅從程序設(shè)計(jì)語(yǔ)言的使用這個(gè)單一的角度進(jìn)行教學(xué),而使得大多數(shù)學(xué)生在學(xué)完本課程后,“吃不透、用不活”,表現(xiàn)為學(xué)生在程序調(diào)試時(shí),對(duì)程序中出現(xiàn)的邏輯錯(cuò)誤經(jīng)常不知所措,在開(kāi)發(fā)較大的應(yīng)用程序時(shí),不知道如何入手。
采用案例教學(xué)法,以程序設(shè)計(jì)為主線,以編程應(yīng)用為驅(qū)動(dòng),通過(guò)案例和問(wèn)題引出教材內(nèi)容,重點(diǎn)講解程序設(shè)計(jì)的思想和方法,穿插講解相關(guān)的語(yǔ)言知識(shí)。使教學(xué)效果既有深度又有廣度,學(xué)生實(shí)際動(dòng)手能力大為增強(qiáng)。
以上是我個(gè)人結(jié)合我院C語(yǔ)言程序設(shè)計(jì)的教學(xué)情況,自己總結(jié)了幾點(diǎn)看法和一些改革措施,拿出來(lái)和大家一起分享,請(qǐng)大家多提寶貴意見(jiàn)。通過(guò)這次學(xué)習(xí),我將會(huì)靈活運(yùn)用幾位教授的教學(xué)經(jīng)驗(yàn),根據(jù)我院的教學(xué)對(duì)象,調(diào)整一些上課方法和措施,望能更好的提高教學(xué)質(zhì)量。
在科技高度發(fā)展的今天,計(jì)算機(jī)在人們之中的作用越來(lái)越突出。而c語(yǔ)言作為一種計(jì)算機(jī)的語(yǔ)言,我們學(xué)習(xí)它,有助于我們更好的了解計(jì)算機(jī),與計(jì)算機(jī)進(jìn)行交流,因此,c語(yǔ)言的學(xué)習(xí)對(duì)我們尤其重要。
在這個(gè)星期里,我們專業(yè)的學(xué)生在專業(yè)老師的帶領(lǐng)下進(jìn)行了c語(yǔ)言程序?qū)嵺`學(xué)習(xí)。在這之前,我們已經(jīng)對(duì)c語(yǔ)言這門課程學(xué)習(xí)了一個(gè)學(xué)期,對(duì)其有了一定的了解,但是也僅僅是停留在了解的范圍,對(duì)里面的好多東西還是很陌生,更多的在運(yùn)用起來(lái)的時(shí)候還是感到很棘手,畢竟,萬(wàn)事開(kāi)頭難嘛。
由于時(shí)間的關(guān)系,我們的這次實(shí)踐課程老師并沒(méi)有給我們?cè)敿?xì)的介紹,只是給我們簡(jiǎn)單的介紹了幾個(gè)比較重要的實(shí)際操作。包括了程序模塊處理、簡(jiǎn)單界面程序、高級(jí)界面程序、程序的添加修改,用程序做一元線性回歸處理以及用c語(yǔ)言程序來(lái)畫(huà)粒度分布圖等這幾樣比較重要的時(shí)間操作。
上機(jī)實(shí)驗(yàn)是學(xué)習(xí)程序設(shè)計(jì)語(yǔ)言必不可少的實(shí)踐環(huán)節(jié),特別是c語(yǔ)言靈活、簡(jiǎn)潔,更需要通過(guò)編程的實(shí)踐來(lái)真正掌握它。對(duì)于程序設(shè)計(jì)語(yǔ)言的學(xué)習(xí)目的,可以概括為學(xué)習(xí)語(yǔ)法規(guī)定、掌握程序設(shè)計(jì)方法、提高程序開(kāi)發(fā)能力,這些都必須通過(guò)充分的實(shí)際上機(jī)操作才能完成。
學(xué)習(xí)c程序設(shè)計(jì)語(yǔ)言除了課堂講授以外,必須保證有不少于課堂講授學(xué)時(shí)的上機(jī)時(shí)間。因?yàn)閷W(xué)時(shí)所限,課程不能安排過(guò)多的統(tǒng)一上機(jī)實(shí)驗(yàn),所以希望學(xué)生有效地利用課程上機(jī)實(shí)驗(yàn)的機(jī)會(huì),盡快掌握用c語(yǔ)言開(kāi)發(fā)程序的能力,為今后的繼續(xù)學(xué)習(xí)打下一個(gè)良好的基矗為此,我們結(jié)合課堂講授的內(nèi)容和進(jìn)度,安排了12次上機(jī)實(shí)驗(yàn)。課程上機(jī)實(shí)驗(yàn)的目的,不僅僅是驗(yàn)證教材和講課的內(nèi)容、檢查自己所編的程序是否正確,課程安排的上機(jī)實(shí)驗(yàn)的目的可以概括為如下幾個(gè)方面:
1、加深對(duì)課堂講授內(nèi)容的理解
課堂上要講授許多關(guān)于c語(yǔ)言的語(yǔ)法規(guī)則,聽(tīng)起來(lái)十分枯燥無(wú)味,也不容易記住,死記硬背是不可取的。然而要使用c語(yǔ)言這個(gè)工具解決實(shí)際問(wèn)題,又必須掌握它。通過(guò)多次上機(jī)練習(xí),對(duì)于語(yǔ)法知識(shí)有了感性的認(rèn)識(shí),加深對(duì)它的理解,在理解的基礎(chǔ)上就會(huì)自然而然地掌握c語(yǔ)言的語(yǔ)法規(guī)定。對(duì)于一些內(nèi)容自己認(rèn)為在課堂上聽(tīng)懂了,但上機(jī)實(shí)踐中會(huì)發(fā)現(xiàn)原來(lái)理解的偏差,這是由于大部分學(xué)生是初次接觸程序設(shè)計(jì),缺乏程序設(shè)計(jì)的實(shí)踐所致。
學(xué)習(xí)c語(yǔ)言不能停留在學(xué)習(xí)它的語(yǔ)法規(guī)則,而是利用學(xué)到的知識(shí)編寫(xiě)c語(yǔ)言程序,解決實(shí)際問(wèn)題。即把c語(yǔ)言作為工具,描述解決實(shí)際問(wèn)題的步驟,由計(jì)算機(jī)幫助我們解題。只有通過(guò)上機(jī)才能檢驗(yàn)自己是否掌握c語(yǔ)言、自己編寫(xiě)的程序是否能夠正確地解題。
通過(guò)上機(jī)實(shí)驗(yàn)來(lái)驗(yàn)證自己編制的程序是否正確,恐怕是大多數(shù)同學(xué)在完成老師作業(yè)時(shí)的心態(tài)。但是在程序設(shè)計(jì)領(lǐng)域里這是一定要克服的傳統(tǒng)的、錯(cuò)誤的想法。因?yàn)樵谶@種思想支配下,可能你會(huì)想辦法去"掩蓋"程序中的錯(cuò)誤,而不是盡可能多地發(fā)現(xiàn)程序中存在的問(wèn)題。自己編好程序上機(jī)調(diào)試運(yùn)行時(shí),可能有很多你想不到的情況發(fā)生,通過(guò)解決這些問(wèn)題,可以逐步提高自己對(duì)c語(yǔ)言的理解和程序開(kāi)發(fā)能力。
2、熟悉程序開(kāi)發(fā)環(huán)境、學(xué)習(xí)計(jì)算機(jī)系統(tǒng)的操作方法
一個(gè)c語(yǔ)言程序從編輯、編譯、連接到運(yùn)行,都要在一定的外部操作環(huán)境下才能進(jìn)行。所謂"環(huán)境"就是所用的計(jì)算機(jī)系統(tǒng)硬件、軟件條件,只有學(xué)會(huì)使用這些環(huán)境,才能進(jìn)行程序開(kāi)發(fā)工作。通過(guò)上機(jī)實(shí)驗(yàn),熟練地掌握c語(yǔ)言開(kāi)發(fā)環(huán)境,為以后真正編寫(xiě)計(jì)算機(jī)程序解決實(shí)際問(wèn)題打下基矗同時(shí),在今后遇到其它開(kāi)發(fā)環(huán)境時(shí)就會(huì)觸類旁通,很快掌握新系統(tǒng)的使用。
3、學(xué)習(xí)上機(jī)調(diào)試程序
完成程序的編寫(xiě),決不意味著萬(wàn)事大吉。你認(rèn)為萬(wàn)無(wú)一失的程序,實(shí)際上機(jī)運(yùn)行時(shí)可能不斷出現(xiàn)麻煩。如編譯程序檢測(cè)出一大堆錯(cuò)誤。有時(shí)程序本身不存在語(yǔ)法錯(cuò)誤,也能夠順利運(yùn)行,但是運(yùn)行結(jié)果顯然是錯(cuò)誤的。開(kāi)發(fā)環(huán)境所提供的編譯系統(tǒng)無(wú)法發(fā)現(xiàn)這種程序邏輯錯(cuò)誤,只能靠自己的上機(jī)經(jīng)驗(yàn)分析判斷錯(cuò)誤所在。程序的調(diào)試是一個(gè)技巧性很強(qiáng)的工作,對(duì)于初學(xué)者來(lái)說(shuō),盡快掌握程序調(diào)試方法是非常重要的。有時(shí)候一個(gè)消耗你幾個(gè)小時(shí)時(shí)間的小小錯(cuò)誤,調(diào)試高手一眼就看出錯(cuò)誤所在。
通過(guò)這次為數(shù)不多的幾天計(jì)算機(jī)實(shí)踐學(xué)習(xí),我們了解了一些關(guān)于c語(yǔ)言的知識(shí),理解鞏固了我們c語(yǔ)言的理論知識(shí),著對(duì)我們將來(lái)到社會(huì)工作將會(huì)有莫大的幫助。同時(shí)它讓我知道,只要你努力,任何東西都不會(huì)太難!
C語(yǔ)言是在國(guó)內(nèi)外廣泛使用的一種計(jì)算機(jī)語(yǔ)言。其語(yǔ)言功能豐富、表達(dá)能力強(qiáng)、使用靈活方便、既具有高級(jí)語(yǔ)言的優(yōu)點(diǎn),又具有低級(jí)語(yǔ)言的許多特點(diǎn),適合編寫(xiě)系統(tǒng)軟件。其功能強(qiáng)大,不僅用在計(jì)算機(jī)上廣泛用在電子,機(jī)械等方面上,而且,所有的windows,Unix,Linux,Mac,os/2,無(wú)一例外,哪一個(gè)不是C語(yǔ)言寫(xiě)的?很多新型的語(yǔ)言如,C++,Java,C#,J#,perl…都是衍生自C語(yǔ)言。掌握了C語(yǔ)言,可以說(shuō)你就掌握了很多門語(yǔ)言。
學(xué)習(xí)C程序這門課一年了,這是我們學(xué)的第一門專業(yè)課,在大學(xué)里C語(yǔ)言不但是計(jì)算機(jī)專業(yè)的必修課程而且也是非計(jì)算機(jī)專業(yè)學(xué)習(xí)計(jì)算機(jī)基礎(chǔ)的一門必修課程。所以作為我這個(gè)計(jì)算機(jī)專業(yè)的學(xué)生來(lái)說(shuō)當(dāng)然十分重要,老師在第一節(jié)課說(shuō)過(guò),C語(yǔ)言是計(jì)算機(jī)的基礎(chǔ),大多數(shù)軟件都需要用C語(yǔ)言來(lái)編寫(xiě),通過(guò)一個(gè)年的學(xué)習(xí),使我由初步掌握簡(jiǎn)單的應(yīng)試知識(shí)到完成高難度的深入編程,如我們?cè)诰帉?xiě)一個(gè)較大的程序時(shí)應(yīng)該把它分開(kāi)成幾個(gè)小程序來(lái)看,這樣會(huì)容易得多。同時(shí),我覺(jué)得C語(yǔ)言應(yīng)該是操作和理論相結(jié)合的課程,在不斷地編寫(xiě)中去思考,兩者是不可分割的。
在學(xué)習(xí)一年C語(yǔ)言的過(guò)程中我也在慢慢探索怎樣才能學(xué)好C語(yǔ)言,并總結(jié)了一點(diǎn)經(jīng)驗(yàn):
要了解C語(yǔ)言就要從語(yǔ)法規(guī)為基礎(chǔ)來(lái)學(xué)習(xí)起,首先要是要了解它的結(jié)構(gòu),比如變量,首先要了解變量的定義方式(格式),其意義是什么(定義變量有什么用);其次就是要我要怎么去運(yùn)用它(我要用什么型式去應(yīng)用它)。在C語(yǔ)言的命令行中所有的`語(yǔ)句都是有它自己的一定格式和形式出現(xiàn)在我們面前,所以我們?cè)趯W(xué)習(xí)某種語(yǔ)句或命令時(shí)你首先要了解的就是它的規(guī)則是什么、有什么用、怎么實(shí)現(xiàn)等。這些都是語(yǔ)法基礎(chǔ)也是C語(yǔ)言的基礎(chǔ)如果把它們都了解很好了,那么你編起程序來(lái)就很得心應(yīng)手了。比如說(shuō)IFELSE和SWITCHCASE這兩種條件語(yǔ)句都是用來(lái)判斷執(zhí)行功能的,那我要什么時(shí)侯用IF什么時(shí)侯用SWITCH呢?如果你很好地了解它們的結(jié)構(gòu)和作用的話那么就知道:若它的條件分支是多個(gè)而且條件的值是整數(shù)或是一個(gè)字符值時(shí)就會(huì)選SWITCH而不會(huì)選IF。
因?yàn)槿绻麠l件分支太多時(shí)要用IF語(yǔ)句,這樣一定會(huì)出現(xiàn)IF的嵌套,如果IF的嵌套越多時(shí)程序的開(kāi)銷就會(huì)隨著增大,這樣對(duì)整個(gè)程序的運(yùn)行效率就大在降底。而SWITCH就不同,它只要比較一次就可以找出條件的結(jié)果比起嵌套IF它的效率就大大的提高了很多。不過(guò)SWITCH也有它的約束條件,就是它的條件值一定要是一個(gè)整型數(shù)或是一個(gè)字符值,所以碰到它不能解決的問(wèn)題時(shí)我們也會(huì)通常使用IF語(yǔ)句,畢竟IF語(yǔ)句它使用起來(lái)也比較方便用的范圍也比較廣。所以說(shuō)了解語(yǔ)法規(guī)則是很重要的,如果沒(méi)有一個(gè)良好的語(yǔ)法基礎(chǔ)是很難編出一個(gè)好的程序!學(xué)習(xí)好基礎(chǔ)后我們就可以開(kāi)始來(lái)編程了。
說(shuō)到我學(xué)習(xí)C語(yǔ)言時(shí),真是用千言萬(wàn)語(yǔ)呀!記得剛開(kāi)始學(xué)的時(shí)候,我的C語(yǔ)言學(xué)的并不是很好,學(xué)期都過(guò)了快一半了,對(duì)C語(yǔ)言還是一知半解的,我是第四小組的組長(zhǎng),組長(zhǎng)的職位給我了很大的壓力,我一直認(rèn)為做學(xué)問(wèn)都要做到這一點(diǎn),要么做到最好,要么就不去做它,本著這樣一個(gè)心太,我下了一個(gè)決心就是要學(xué)好C語(yǔ)言,開(kāi)始我用了最笨的方法,就是一個(gè)厚厚的本子,一支筆,一本C語(yǔ)言書(shū),天天有事沒(méi)事抄程序,不管什么程序,我都不放過(guò),一個(gè)一個(gè)的抄,抄了有好幾個(gè)本,回到宿舍就在機(jī)子上調(diào)程序,一個(gè)月過(guò)去了,老師讓做C語(yǔ)言項(xiàng)目,是一個(gè)學(xué)生成績(jī)管理系統(tǒng),在當(dāng)時(shí)這樣一個(gè)項(xiàng)目對(duì)我們來(lái)說(shuō)真是難度不小,可是我本著一個(gè)試一試的心太去做了,一個(gè)打死我都不敢相信的奇跡出現(xiàn)了,這個(gè)程序我寫(xiě)出來(lái)了,而且?guī)缀跏且粴夂铣?,而且只用了一個(gè)晚上的時(shí)間,寫(xiě)了足足有六頁(yè)的代碼,看著寫(xiě)在本子上的代碼我有點(diǎn)不相信,這怎么可能呢,當(dāng)晚我沒(méi)有睡著覺(jué),高興啊,誰(shuí)能睡的著。做這個(gè)項(xiàng)目讓我明白了一些道理,再大的程序也是有不同的小程序組成的,因?yàn)槲姨焯斐绦?,抄的全是小程序,做這個(gè)大點(diǎn)的程序的時(shí)候我發(fā)現(xiàn)全是一個(gè)一個(gè)的小程序,抄了一個(gè)月的程序,當(dāng)然能很順利的就寫(xiě)出來(lái)了。
后來(lái)我明白了,抄程序是最笨的方法但我認(rèn)為它是進(jìn)步最快的方法,抄程序是積累經(jīng)驗(yàn)的時(shí)候,而做項(xiàng)目才是真正把所學(xué)為所用的時(shí)候,可以說(shuō)只有你做一個(gè)大點(diǎn)的項(xiàng)目出來(lái)才能真正是說(shuō)明你學(xué)到了東西,你會(huì)用所學(xué)的東西,要不然就算你學(xué)的再多,不會(huì)用也沒(méi)用啊,我還發(fā)現(xiàn)有很多同學(xué),在學(xué)飛C語(yǔ)言的時(shí)候比我學(xué)的要好,可是他們卻做不出來(lái)項(xiàng)目,就是說(shuō)學(xué)會(huì)了但是不會(huì)用,那我說(shuō)還不如不學(xué)呢。有點(diǎn)浪費(fèi)時(shí)間。做學(xué)問(wèn)特別是計(jì)算機(jī)一定要做的精準(zhǔn),比如說(shuō)一個(gè)語(yǔ)句一個(gè)關(guān)鍵字,你一定要把它幾乎所有的用方法都能清楚明白,比如說(shuō)print語(yǔ)句,對(duì)于它你一定要明白什么時(shí)候用“‘,這些你都要非常的清楚明白,要不然說(shuō)不定那一天你用會(huì)碰上麻煩事,一句話要學(xué)精了,語(yǔ)法掌握住了,接下來(lái)就是寫(xiě)程序了,其實(shí)抄程序并不是說(shuō)一直沒(méi)有目的去抄,你會(huì)發(fā)現(xiàn)當(dāng)你抄一段時(shí)間以后就不用再抄了,因?yàn)榇蟛糠侄际且粯拥哪阋豢淳椭涝趺磳?xiě)了,當(dāng)你一看到程序就知道它什么功能,那里有錯(cuò)的時(shí)候,那你的成績(jī)可是進(jìn)步不小啊,這并不需要太多的時(shí)間,只要你用心一個(gè)月足夠了。
跟大家說(shuō)幾點(diǎn)經(jīng)驗(yàn)
1、在學(xué)習(xí)的時(shí)候一定要注意這幾點(diǎn),不會(huì)的一定要問(wèn)明白,不管誰(shuí)能讓他教會(huì)你知識(shí)就是你的了,要學(xué)會(huì)讓知識(shí)為我所用。在看書(shū)的時(shí)候一定要做好標(biāo)記,特別是不懂的地方一定要標(biāo)明是什么意思。
2、在學(xué)習(xí)語(yǔ)言的時(shí)候一定要記住動(dòng)手,不要只說(shuō)不做,這樣會(huì)行成眼高手低,不管什么樣的程序都要親手做過(guò)才能說(shuō)會(huì)了,不要整天說(shuō)我不會(huì)學(xué)不會(huì),其實(shí)是你不想學(xué),只是你下決心抄一個(gè)月程序,我保證我能有大的進(jìn)步,其實(shí)當(dāng)你抄到一周到兩周的時(shí)候你就會(huì)特想抄,因?yàn)槟銜?huì)發(fā)現(xiàn)程序你能看懂了,能幫別人調(diào)程序了,有一種成就感呀!它會(huì)讓你更加努力的去學(xué)習(xí)。
3、再一點(diǎn)是我建議大家在上課的時(shí)候少看課本,課本要在下課的時(shí)候看特別是上課前一定要先看看課本,上課的時(shí)候呢就不要看了,不要老師講到那個(gè)問(wèn)題了你馬上在書(shū)上找,這樣不好,會(huì)影響你的注意力,其實(shí)還真不如注意聽(tīng)老師講呢?因?yàn)槟阋且贿吢?tīng)一邊看課本,你是看到了書(shū)上的答案但是老師的思路你沒(méi)有聽(tīng)到,而要是你不看的話,你聽(tīng)明白了思路,一定是想迫切的看到結(jié)果,這個(gè)時(shí)候看課本才是記的最死的時(shí)候,學(xué)習(xí)要的是就是個(gè)效率嗎?
4、提醒大家學(xué)習(xí)要講效率,我發(fā)現(xiàn)有很多同學(xué)天天學(xué)習(xí),每天最早到教室,走的又最晚,別人玩他在學(xué),別人學(xué)他也學(xué),可是別的一天30%的學(xué)習(xí)時(shí)間卻比他們一天50%以上的學(xué)習(xí)時(shí)間的效率要高上不僅僅是幾倍的問(wèn)題,所以我要說(shuō)的是不要對(duì)別人說(shuō)你天天在學(xué)習(xí),要說(shuō)你天天在進(jìn)步,學(xué)習(xí)不是要你學(xué)習(xí)了多久是,是要你學(xué)了多少東西的,你學(xué)一小時(shí)還沒(méi)有別人學(xué)一分鐘的效率高,難道自己不是浪費(fèi)時(shí)間嗎?不想學(xué)的時(shí)候就不要學(xué),出去玩一會(huì)兒再來(lái)學(xué)說(shuō)不定會(huì)有更好的效果。希望這些經(jīng)驗(yàn)?zāi)芨蠹曳窒硪幌拢詈筮€是要跟大家強(qiáng)調(diào)一點(diǎn),抄程序是學(xué)好C語(yǔ)言的最好最快的方法。
首先我要告訴大家的是:第一,學(xué)習(xí)無(wú)捷徑!對(duì)于學(xué)習(xí)編程而言,你現(xiàn)在的付出將來(lái)都是有回報(bào)的。但是,學(xué)習(xí)C語(yǔ)言也需要方法。
事實(shí)上學(xué)習(xí)編程是一件很好玩、很有趣、很有意思也很有前途的事情!那么學(xué)習(xí)C語(yǔ)言有什么好的方法呢?小編覺(jué)得主要有以下幾個(gè)方面:
1) 分清主次
學(xué)習(xí)C語(yǔ)言最忌諱的就是不分主次,這是絕大多數(shù)學(xué)習(xí)C語(yǔ)言的同學(xué)都會(huì)犯的錯(cuò)誤!我們剛開(kāi)始學(xué)習(xí)的時(shí)候只需要將那些最重要的、最核心的學(xué)會(huì)就已經(jīng)很好了!先將最精髓的東西提煉出來(lái),再將整個(gè)C語(yǔ)言學(xué)一遍,從全局上把握C語(yǔ)言。對(duì)于那些次要的,有需要再學(xué),沒(méi)有需要也可以不學(xué)。
2) 一定要多上機(jī),多“敲”代碼
編程是一門實(shí)踐性的學(xué)科,絕對(duì)不是理論。如果不動(dòng)手“敲”代碼的話,永遠(yuǎn)都學(xué)不會(huì)編程。很多問(wèn)題只有在“敲代碼”的時(shí)候才能發(fā)現(xiàn),才會(huì)有更加深刻的體會(huì)、領(lǐng)悟和理解。而不是靠死記硬背書(shū)中的注意點(diǎn),那樣真的很痛苦。我在學(xué)習(xí)編程的時(shí)候從來(lái)都不會(huì)刻意記憶什么注意點(diǎn),這些知識(shí)點(diǎn)都是在不?!扒么a”的過(guò)程中,自然而然地融入我的身體中的。
你們一定要記住一句話:“程序是寫(xiě)出來(lái)的,不是看書(shū)看出來(lái)的!”
3) 要“敲代碼”,必學(xué)盲打
盲打是學(xué)習(xí)編程最基本的技能。就算你C語(yǔ)言學(xué)得很好,達(dá)到了“思想在鍵盤上飛舞”的境界,但是如果你不會(huì)盲打,那你想“飛”也“飛”不起來(lái)!所以,不會(huì)盲打會(huì)非常影響你的學(xué)習(xí)效率。
4) 要學(xué)會(huì)記筆記
編程需要不斷地積累。我們一定要學(xué)會(huì)模仿別人優(yōu)秀的代碼、優(yōu)秀的算法,然后將它記下來(lái)。一定要站在巨人的肩膀上學(xué)習(xí)。但是我們的記憶能力是有限的,時(shí)間長(zhǎng)了難免會(huì)遺忘,所以一定要學(xué)會(huì)記筆記。一有心得、體會(huì)、感悟就寫(xiě)下來(lái),這些都是很珍貴的。
我們?cè)谟浌P記的時(shí)候,如果眼前沒(méi)有計(jì)算機(jī)則可以先寫(xiě)在紙上,但事后一定要將它整理成電子版。整理成電子版看起來(lái)會(huì)很方便、舒適,還可以隨意地增添和刪改,保存時(shí)間也長(zhǎng)。
經(jīng)過(guò)了一段時(shí)間的學(xué)習(xí),我覺(jué)得對(duì)c語(yǔ)言已經(jīng)有了一個(gè)初步的認(rèn)識(shí)。能夠做到利用c語(yǔ)言編織出一些非常簡(jiǎn)單的程序,和讀懂大部分的程序代碼,明白程序要表達(dá)的意思。
下面是對(duì)C語(yǔ)言中有許多重要知識(shí)的總結(jié):
1、 一些基本的函數(shù)和基本數(shù)據(jù)類型的應(yīng)用。其中,基本數(shù)據(jù)類型分為整型、浮點(diǎn)型、字符型、枚舉類型。基本函數(shù)包括輸入輸出函數(shù)。
2、把運(yùn)算符的優(yōu)先順序排列清楚,要分清楚哪個(gè)先運(yùn)算,哪個(gè)后運(yùn)算。
3、在編程之前要考慮好程序的算法,寫(xiě)出流程圖,這樣才能更加快速的、有效的編程。
4、要分清楚各個(gè)變量的生存期和作用域,不能發(fā)生混淆,以致發(fā)生錯(cuò)誤。
5、 數(shù)組和指針是c語(yǔ)言的經(jīng)典之處,可以通用,并且互相轉(zhuǎn)換,具有非常強(qiáng)大的功能,但是使用不當(dāng)?shù)脑?,?huì)造成程序出錯(cuò),打亂原有程序的規(guī)律,使可讀性明顯變差。
6、結(jié)構(gòu)體也是常用的一種數(shù)據(jù)類型,它的功能也比較強(qiáng)大,相對(duì)于指針而言,結(jié)構(gòu)體掌握起來(lái)比較容易理解和使用。
7、對(duì)于文件的操作是非常關(guān)鍵的,把輸入的數(shù)據(jù)保存起來(lái),下次還能夠使用,這才是關(guān)鍵問(wèn)題。所以對(duì)文件操作是否成功,使程序是否編制成功的重要因素。
我認(rèn)為c語(yǔ)言是一門很基礎(chǔ)的語(yǔ)言,所有的計(jì)算機(jī)語(yǔ)言都是相通的,只要一門學(xué)會(huì)了,其他語(yǔ)言就會(huì)很容易學(xué)會(huì)。但是c語(yǔ)言是基礎(chǔ)中的基礎(chǔ),掌握好c語(yǔ)言對(duì)于今后別的語(yǔ)言的學(xué)習(xí)是非常有好處的。雖然學(xué)會(huì)了c語(yǔ)言的大部份基礎(chǔ)知識(shí),但是要掌握好c語(yǔ)言并不是一件簡(jiǎn)單的事情,大家要多加練習(xí)和敲代碼才能夠把C語(yǔ)言學(xué)好。