




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 計(jì)算機(jī)程序設(shè)計(jì)課程學(xué)習(xí)指南計(jì)算機(jī)程序設(shè)計(jì)是一本實(shí)踐性課程,學(xué)會編程是課程的主要目的。然而,任何實(shí)踐又應(yīng)是有一定知識基礎(chǔ)的實(shí)踐,沒有知識的實(shí)踐是機(jī)械的實(shí)踐,是沒有靈魂的實(shí)踐,所以,理論課和上機(jī)實(shí)驗(yàn)課同等重要。要學(xué)好程序設(shè)計(jì),希望同學(xué)們做到:1.理解語法。不懂交通法規(guī)是不允許開車上路的。不懂語法,編寫的“程序”是不能被計(jì)算機(jī)執(zhí)行的。對語法的理解,不僅要上課聽講,而且要上機(jī)實(shí)踐。只有實(shí)踐后才能深刻領(lǐng)會語法的含義。理解了語法,才能在解決問題時應(yīng)用自如,舉一反三。理解語法不僅是使用正確的語句,而是恰當(dāng)?shù)厥褂谜Z句。有時同學(xué)們在語法上是正確的,但卻不能實(shí)現(xiàn)設(shè)想的功能,是因?yàn)闆]有恰當(dāng)?shù)厥褂谜Z句。所以,程序中
2、的每一條語句,都應(yīng)能說出為什么那樣寫。人云亦云,不能實(shí)現(xiàn)你的愿望。2.實(shí)踐實(shí)踐不下水是學(xué)不會游泳的,不上機(jī)是學(xué)不會編程的。開始有困難不要緊,可以先照例題將程序輸入計(jì)算機(jī),調(diào)試成功后,再逐句分析程序的功能,體會其中的設(shè)計(jì)思想。開始不要“求多”,不知“為什么”的程序沒有意義。有時,上課沒有聽懂或看書沒有看懂書上的語法,或存在很多疑問,經(jīng)常有同學(xué)問“這樣行不行?”,“那樣行不行?”不要緊,試試看。這樣試試,那樣試試。行,獲得經(jīng)驗(yàn);不行,收獲教訓(xùn)。有不少同學(xué)說記不住語句、語法,那也是練得少。程序設(shè)計(jì)的語法絕不能背誦,那真是紙上談兵。用多了,自然就記住了,理解了,也好記了,但不是背誦的。3.體會思想不少
3、同學(xué)學(xué)習(xí)程序設(shè)計(jì)存在的問題是能看“懂”例題,能照著習(xí)題解答“編寫”程序,但自己編程就不行了。之所以“懂”和“編寫”加引號,是因?yàn)椋矣X得那不是真懂,不是真會編。根本原因是沒有掌握程序設(shè)計(jì)的思維方式。編寫程序,其實(shí)和解數(shù)學(xué)題類似,分析題意-引用定理-進(jìn)行推導(dǎo)-得到結(jié)果(或結(jié)論)。程序設(shè)計(jì),是想通過編程讓計(jì)算機(jī)來解決問題。要計(jì)算機(jī)解決問題,就先要解決問題在計(jì)算機(jī)中的表達(dá)問題,主要就是要解決的問題的各種量如何在計(jì)算機(jī)中表示,比如物體的長、寬、高,100個人的班級、學(xué)號、姓名、性別、年齡、籍貫等信息,是用變量表示?數(shù)組表示?結(jié)構(gòu)表示?還是用類表示,我們常稱為數(shù)據(jù)結(jié)構(gòu)。解決了問題的表達(dá),然后就是在這種表
4、達(dá)基礎(chǔ)上的運(yùn)算。注意,運(yùn)算是基于上面的表達(dá)的。表達(dá)不同,做法可能就不同。運(yùn)算的步驟就是算法。算法用某種計(jì)算機(jī)語言表達(dá)就是程序,用自然語言、流程圖、偽語言表達(dá)就是算法。先寫出算法是一個程序設(shè)計(jì)的初學(xué)者應(yīng)該做到的。如果不能做到,或不愿做到,就有點(diǎn)揠苗助長了。算法是給人看的,也是人做事的步驟和依據(jù),如果人都不會做,說不清怎樣做,或者說教不會人怎樣做事,還怎么教計(jì)算機(jī)去做事?但寫算法也要知道計(jì)算機(jī)能做什么,或者讀算法的人能做什么?一般能做的只是算術(shù)運(yùn)算、比較運(yùn)算和邏輯運(yùn)算,能進(jìn)行條件判斷,依據(jù)結(jié)果進(jìn)行分支或循環(huán)。就是這些。所以要把算法寫到這些計(jì)算的詳細(xì)程度。不過當(dāng)你的編程水平提高了的時候,對簡單的問題
5、,即使不寫算法,你也能編程了,這是算法可以寫得簡略些。算法寫好了,編程就不再是一件太難的事。請大家在學(xué)習(xí)過程中,注意例題中的算法和程序的對應(yīng)關(guān)系,即使是機(jī)械的翻譯,也能把程序?qū)懗鰜?。例如遇到“如果否則”,那就用“ifelse”如果遇到“如果轉(zhuǎn).”那就是循環(huán),沒有這些特征就是順序計(jì)算。4.學(xué)會幫助一是遇到問題要想辦法解決,不能等??梢詥柾瑢W(xué),問網(wǎng)絡(luò),問老師。及時解決問題,是學(xué)習(xí)的基本策略。萬事開頭難。開始有很多問題,都是很正常的,只要及時解決了,后面問題會越來越少,而且學(xué)到了解決問題的方法,“問題”都不是問題了。如果不能及時解決問題,問題會越積越多,以至于喪失信心。相信自己,你們真的是都有能力的
6、,只要“做”。二是學(xué)會使用編程環(huán)境的幫助系統(tǒng),一般軟件在菜單欄的最后都有“幫助”菜單,選擇它可以獲得操作和語句使用的幫助,比書上還詳細(xì),還具體,還有例子。還有是輸入關(guān)鍵詞,選中它按鍵。5.學(xué)會調(diào)試某日編寫出一個正確的程序,并不說明你會編寫程序了。如果遇到錯誤的時候,你能快速地解決它,那才是本事,是一個程序員應(yīng)具備的基本能力。照書上的程序抄,抄的一字不差,只能說明你的打字水平還不錯,對學(xué)習(xí)編程無益。如果抄錯了,但你能輕而易舉地解決它,那就算有了編程的基礎(chǔ)了。初學(xué)者編譯程序時,會出現(xiàn)很多錯誤,甚至是上百的錯誤,不用怕,找到第一個錯誤,看錯誤的提示信息是什么,編譯系統(tǒng)已經(jīng)說得清清楚楚,如哪行?什么問
7、題?甚至是什么原因。你只要找到那一行的那個標(biāo)識符,改正過來,然后再編譯,再修改第一個錯誤。注意,一般每次只修改一個(第一個)錯誤,因?yàn)橛袝r一個錯誤,會導(dǎo)致多條錯誤提示信息,修改了前面的,后面自然就沒有了。即使是上百的錯誤,也是一個一個修改。不過初學(xué)者還是覺得有困難,原因有三,一是看不懂英文(多數(shù)是英文的環(huán)境),二是不了解語法,三是經(jīng)驗(yàn)不足??床欢⑽?,查字典。其實(shí),錯誤信息中使用的單詞數(shù)量是非常有限的,查一次,以后清清楚楚,一勞永逸。如果不查,學(xué)到最后(一個學(xué)期,120多天吧)這幾個詞還是不認(rèn)識,對提示信息還是糊涂的。損失太大了。少查20個單詞,少考20分,甚至掛科。學(xué)了十年的英語,可以用用了
8、。對語法不了解,明明指出了錯誤,卻不知如何改,所以理論和實(shí)踐是相輔相成的。還有,要清楚哪是正確的,哪是錯誤的。有時系統(tǒng)指出的錯誤位置是有偏差的,錯誤的位置可能是在上一行或上兩行或再上面。不清楚語法,迷信編譯系統(tǒng),常常把正確的改錯了,錯誤的還是錯,錯誤越來越多。不能它(編譯系統(tǒng))說啥就是啥,要有堅(jiān)定的信念(正確的就是正確的,不能改錯了)。對經(jīng)驗(yàn)問題,也不是問題,解決方法就是“多錯”。有同學(xué)常常驚嘆老師的對錯誤的識別能力,“此無它,唯手熟爾”,老師錯得多了,教你們的程序,不知練過多少遍,不知出現(xiàn)過多少錯啊。所以,不要怕出錯,解決錯誤之日就是你能力提高之時。6.學(xué)會跟蹤語法錯誤,編譯系統(tǒng)會指出來。而
9、邏輯錯誤,沒有人告訴你。當(dāng)你運(yùn)行程序的時候,發(fā)現(xiàn)“結(jié)果不對啊”。有同學(xué)就去對書上的程序,“一字不差啊”。首先,程序一定是有錯的,而且是你讓計(jì)算機(jī)做錯的,不要懷疑計(jì)算機(jī);其次對書上的程序不是解決問題的辦法。對邏輯錯誤,一是使用跟蹤。跟蹤是監(jiān)視每一行程序的執(zhí)行過程。每執(zhí)行一行程序,內(nèi)存中的變量的值就會有所改變,這種改變是根據(jù)原來的狀態(tài)和執(zhí)行的計(jì)算而變的。那么我們輸入了什么數(shù),賦了什么值,進(jìn)行了什么運(yùn)算,結(jié)果就是確定的了,看程序的執(zhí)行結(jié)果與算法設(shè)計(jì)時到此應(yīng)該得到的結(jié)果是否一致。如果一致,繼續(xù)執(zhí)行下一句,如果不一致,說明錯誤就在這一行??纯词遣皇沁\(yùn)算寫錯了。還有一種方法,就是在程序中多處添加多個輸出語
10、句,輸出剛計(jì)算出和將要進(jìn)行計(jì)算的變量的值。執(zhí)行程序,如果計(jì)算出的變量正確,基本說明程序到此是正確的,否則就是有錯的;如果將要計(jì)算的變量是正確的,我們確認(rèn)一件事,為下面的計(jì)算提供的數(shù)據(jù)是正確的。用這種方法,也能很快找到錯誤所在。(西安交通大學(xué) 趙英良)附錄:參考書1 鄭莉, 崔舒寧等. 面向?qū)ο蟪绦蛟O(shè)計(jì)經(jīng)典實(shí)驗(yàn)案例集. 高等教育出版社,2012.2 何欽銘. C語言程序設(shè)計(jì)經(jīng)典實(shí)驗(yàn)案例集. 高等教育出版社,2012.3 何欽銘, 顏暉. C語言程序設(shè)計(jì)(第2版). 高等教育出版社,2012.4 薩維奇(Walter Savitch)編著. 周靖譯. C+程序設(shè)計(jì)(第8版)(Problem Sol
11、ving with C+,Eighth Edition) . 清華大學(xué)出版社, 2012.5 蘇小紅等. C語言程序設(shè)計(jì). 高等教育出版社,2011.6 ??藸?Bruce Eckel) , Chuck Allison.編著. 劉宗田,袁兆山等譯. C+編程思想. 機(jī)械工業(yè)出版社, 2011.7 梅耶(Scott Meyers)編著. 侯捷譯. Effective C+:改善程序與設(shè)計(jì)的55個具體做法(第3版)(中文版). 電子工業(yè)出版社, 2011.8 亨特(Andrew Hunt),托馬斯(David Thomas)編著. 馬維達(dá)譯. 程序 員修煉之道:從小工到專家(The Pragmat
12、ic Programmer:From Journeyman to Master). 電子工業(yè)出版社, 2011.9 亨特(Andy Hunt) 編著. 崔康譯. 程序員的思維修煉:開發(fā)認(rèn)知潛 能的九堂課(Pragmatic Thinking and Learning Refactor Your Wetware ). 人民郵電出版社, 2011年.10斯特朗斯特魯普(Bjarne Stroustrup)著. 裘宗燕譯. C+程序設(shè)計(jì)語言(特別版十周年中文紀(jì)念版) . 機(jī)械工業(yè)出版社,2010.11斯特勞斯特魯普(Bjarne Stroustrup) (美)著. 王剛, 劉曉光,等譯. C+程序設(shè)
13、計(jì)原理與實(shí)踐. 機(jī)械工業(yè)出版社, 2010.12鄭莉,董淵等. C+語言程序設(shè)計(jì)(第4版). 清華大學(xué)出版社,2010.13Andrew Koenig(美)編著. 黃曉春譯. C+沉思錄(Ruminations on C+). 人民郵電出版社,2008.14李文新等. 程序設(shè)計(jì)導(dǎo)引及在線實(shí)踐. 清華大學(xué)出版社,2007.15 H.M.Deitel(美)著, 張引等譯. C+大學(xué)教程(第5版).電子工業(yè)出版社, 2007.16譚浩強(qiáng). C程序設(shè)計(jì)(第4版). 清華大學(xué)出版社,200617錢能. C+程序設(shè)計(jì)教程(第2版). 清華大學(xué)出版社,2006.18劉景,周玉龍. 高級語言C+程序設(shè)計(jì)(第二版). 高等教育出版社,2006.19 Stanley B. Lippman, Barbara E. Moo Jose LaJoie編著. 李師賢等譯. C+ Primer中文版(第4版). 人民郵電出版社,2006. 20羅建軍,崔舒寧,楊琦. 大學(xué)Visual C+
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預(yù)防醫(yī)學(xué)肝癌
- 餐飲公司學(xué)習(xí)培訓(xùn)后實(shí)施策略
- 廣州物流管理專員職位簡歷
- 趾腱筋膜炎的癥狀及護(hù)理
- 裝修業(yè)財務(wù)培訓(xùn)
- 銀行服務(wù)投訴培訓(xùn)
- 山西省晉城市2024-2025學(xué)年高一上學(xué)期期末考試歷史試題 含解析
- 跨境貿(mào)易質(zhì)量保證與責(zé)任豁免協(xié)議
- 裝卸操作安全培訓(xùn)
- 項(xiàng)目會議紀(jì)要與決策落實(shí)方案
- 2025山西國際能源集團(tuán)社會招聘258人筆試參考題庫附帶答案詳解
- 普華永道中天會計(jì)師事務(wù)所-人工智能機(jī)遇在汽車領(lǐng)域
- 2025年皖西衛(wèi)生職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫新版
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫附答案
- 腰椎穿刺的護(hù)理
- 2025屆高考英語二輪復(fù)習(xí)備考策略課件
- 2022年7月9日公務(wù)員多省聯(lián)考安徽省《申論》(安徽A卷、B卷、C卷)三套真題及參考答案
- 《工程勘察設(shè)計(jì)收費(fèi)標(biāo)準(zhǔn)》(2002年修訂本)
- 活在課堂里 課件
- 潔凈室空調(diào)凈化系統(tǒng)驗(yàn)證方案(通過BSI和華光審核)
- 2024年遼陽職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案解析
評論
0/150
提交評論