出版時間:2005-1 出版社:清華大學出版社,北京交通大學出版社 作者:趙宏 頁數(shù):289
前言
從20世紀70年代的結構化程序設計,到90年代的面向?qū)ο蠹夹g,程序設計技術在不斷發(fā)展。目前國內(nèi)各高校開設的程序設計課程種類繁多,選取的第一門程序設計課程也不相同?! 〗逃?003年頒發(fā)了計算機基礎教育白皮書“關于進一步加強高校計算機基礎教學的幾點意見”,在教育部1997年155號文件的基礎上對計算機基礎教學的目標重新定位,提出了適應新形勢的課程體系。按照教育部新課程體系的要求,程序設計基礎課程作為理工科大學生的必修課,既要講結構化程序設計,也要講面向?qū)ο蟪绦蛟O計。 本書以解決實際問題的程序設計思想作為出發(fā)點進行編寫,并選擇C/C++語言為背景進行講解,突出程序設計方法,介紹常用的數(shù)組、鏈表等數(shù)據(jù)結構,講解了遞歸、遞推、排序、查找等算法的設計。學習目標是理解和掌握程序設計的基本概念和方法,具備運用程序設計語言、數(shù)據(jù)結構和算法進行基本的結構化程序設計和面向?qū)ο蟪绦蛟O計的能力?! ”窘滩闹饕厣幸韵聨c?! ∫弧⒔虒W內(nèi)容既注重基礎理論又突出實用性。突出結構化程序設計和面向?qū)ο蟪绦蛟O計的基本原理、概念和方法,特別強調(diào)培養(yǎng)學生分析問題、解決問題和動手實踐的能力,重點突出,精選例題和習題,由淺入深逐步展開進行講解?! 《?、充分體現(xiàn)教師的教學思想。參加編寫的教師均是多年從事計算機基礎課教學和科研工作的一線教師,積累了一定的經(jīng)驗,教材編寫時突出程序設計方法,把教師的教學思想融入教材中,由淺入深、循序漸進,語言和語法的講解完全融會貫通在程序設計及實例中。 三、重點內(nèi)容突出。舍棄一些次要內(nèi)容,如位運算、多級指針、多維數(shù)組與指針等,使該教材通俗易懂。與該書配套的《計算機程序設計基礎輔導與實驗教程》中對每章都編寫了補充閱讀內(nèi)容,作為本書的擴展?! ∷?、教學資源豐富。構建了包括教材、實驗教材、電子教案、源程序文件包、網(wǎng)絡教程等在內(nèi)的立體化教學資源?! ∪珪?2章,其中前8章為結構化程序設計,主要包括程序設計概述、程序設計初步知識、程序的控制結構、模塊化程序設計、構造數(shù)據(jù)類型、指針、動態(tài)數(shù)據(jù)結構、文件;第9章為結構化程序設計到面向?qū)ο蟪绦蛟O計的過渡:最后3章圍繞面向?qū)ο蟪绦蛟O計的封裝性、繼承性、多態(tài)性,講解了類和對象、構造和析構函數(shù)、靜態(tài)成員、友元、繼承與派生、多態(tài)性與虛函數(shù)等內(nèi)容?! ”緯舜罅康某绦蚶樱⒏接羞\行結果。凡在程序開頭帶有程序名編號的,都是完整的程序,這些程序都在VisualC++6.0環(huán)境下調(diào)試通過。
內(nèi)容概要
本書是根據(jù)教育部非計算機專業(yè)計算機基礎課程教學指導分委員會提出的高等學校計算機基礎課程教學基本要求組織編寫的。 為適應新的人才培養(yǎng)的要求,結合程序設計技術和信息技術的發(fā)展,對程序設計基礎課程教學內(nèi)容和體系結構進行了重大改革。以C/C++語言為背景,全面介紹了結構化程序設計和面向?qū)ο蟪绦蛟O計的基本原理和方法,內(nèi)容由淺入深,循序漸進,每章都有豐富的例題和習題,有配套的實驗教材指導學生上機實踐,以及豐富的數(shù)字化資源。 本書可作為高等學校各專業(yè)的程序設計基礎課程教材,也可用于網(wǎng)絡化教學以及培訓機構和讀者自學程序設計課程的教材。
書籍目錄
第1篇 結構化程序設計 第1章 概述 1.1 計算機語言和計算機程序設計 1.2 程序設計方法 1.3 程序的實現(xiàn)環(huán)境 1.4 C語言與C++的發(fā)展 1.5 本章小結 思考題 習題 第2章 程序設計初步 2.1 程序的基本結構 2.2 數(shù)據(jù)類型 2.3 算術運算符和算術表達式 2.4 賦值運算符和賦值表達式 2.5 數(shù)據(jù)類型的轉換 2.6 數(shù)據(jù)的輸出和輸入 2.7 數(shù)學函數(shù) 2.8 簡單程序設計 2.9 本章小結 思考題 習題 第3章 程序控制結構 3.1 選擇結構程序設計 3.2 循環(huán)結構程序設計 3.3 本章小結 思考題 習題 第4章 模塊化程序設計 4.1 模塊化程序設計概述 4.2 函數(shù)的聲明、定義和調(diào)用 4.3 函數(shù)的多級調(diào)用 4.4 變量的作用域和存儲類別 4.5 計算機隨機模擬方法 4.6 編譯預處理 4.7 本章小結 思考題 習題 第5章 構造數(shù)據(jù)類型 5.1 數(shù)組概述 5.2 一維數(shù)組 5.3 數(shù)組做函數(shù)的參數(shù) 5.4 一維數(shù)組的應用 5.5 多維數(shù)組 5.6 字符數(shù)組與字符串 5.7 結構體類型 5.8 共用體類型 5.9 本章小結 思考題 習題 第6章 指針 6.1 變量的地址和指針 6.2 指針變量的定義及引用 6.3 指針與函數(shù) 6.4 指針與數(shù)組 6.5 字符指針 6.6 指針數(shù)組 6.7 本章小結 思考題 習題 第7章 動態(tài)數(shù)據(jù)結構 7.1 從靜態(tài)數(shù)據(jù)結構到動態(tài)數(shù)據(jù)結構 7.2 動態(tài)內(nèi)存分配 7.3 鏈表 …… 第8章 文件 第2篇 面向?qū)ο蟪绦蛟O計 第9章 從結構化程序設計到面向?qū)ο蟪绦蛟O計 第10章 類和對象 第11章 繼承與派生類 第12章 多態(tài)性附錄A 運算符的優(yōu)先級和結合性附錄B ASCII字符集 附錄C 常用庫函數(shù) 參考文獻
章節(jié)摘錄
上述問題促使人們開始對程序設計方法進行研究,1969年Dilkstra首先提出了結構化程序設計的思想與概念,強調(diào)從程序結構上來研究與改變傳統(tǒng)的設計方法,經(jīng)計算機科學工作者的實踐,結構化程序設計得到了普遍應用,程序設計也逐步走向規(guī)范化和工程化。面向?qū)ο蟪绦蛟O計是在結構化程序設計基礎上發(fā)展起來的一種新的程序設計方法。在本章中主要介紹結構化程序設計方法,面向?qū)ο蟪绦蛟O計將在第9-12章進行講解。1.2.1 結構化程序設計基本思想 結構化程序設計(面向過程程序設計)支持自頂向下、逐步細化和模塊化的結構化分析方法?! ≡谇蠼庖粋€問題時一般不能立即寫出詳細的算法或程序,但可以很容易寫出一級算法,即求解問題的輪廓,然后對一級算法逐步求精,把它的某些步驟擴展成更詳細的步驟。細化過程中,一方面加入詳細算法,一方面明確數(shù)據(jù),直到根據(jù)這個算法可以寫出程序為止。自頂向下、逐步求精的方法符合人類解決復雜問題的思維方式,用先全局后局部、先整體后細節(jié)、先抽象后具體的逐步求精過程開發(fā)出的程序?qū)哟谓Y構清晰,容易閱讀、理解和測試。 程序設計中還常采用模塊化的設計方法,當任務比較復雜時,往往按問題的需要,將其分解為若干個子任務,這些子任務還可以劃分為更小、更簡單的子任務。這樣,對于大程序?qū)⑵浠麨榱憔帉?,由多個人共同進行程序的開發(fā),或者是獨立設計重復使用的程序段,使其可以被計算機重復執(zhí)行,而設計人員又不必重復編寫,避免了重復設計,消除了因交叉設計而產(chǎn)生的錯誤。這樣劃分的程序段落被稱為程序模塊,這種程序設計的方式被稱為模塊化程序設計。以這種方式設計的程序,可以使其達到層次分明、結構簡潔而又嚴謹?shù)哪康?,從而提高程序設計的速度和質(zhì)量?! 〕绦蛑械淖幽K在C語言中通常用函數(shù)來實現(xiàn),一個子模塊用一個函數(shù)實現(xiàn),完成一個功能。每個子模塊的大小要適度。 1.2 2.3 種基本結構 結構化程序設計用3種基本結構,通過組合和嵌套就能實現(xiàn)任何單入口、單出口的程序。這3種基本結構是順序結構、選擇結構和循環(huán)結構?! ?.順序結構 按照順序依次執(zhí)行A、B程序塊。順序結構是最簡單的一種基本結構,見圖1—1?! ?.選擇結構 又稱分支結構,見圖1-2。根據(jù)給定的條件P進行判斷,由判斷的結果決定執(zhí)行兩個分支中的哪一個分支。當P為真時執(zhí)行A程序塊,否則執(zhí)行B程序塊。無論條件P是否成立,A和B程序塊只能有一個被執(zhí)行到,執(zhí)行之后就離開了該選擇結構。當B為空,條件P為假時不執(zhí)行任何操作。
編輯推薦
《計算機程序設計基礎》可作為高等學校各專業(yè)的程序設計基礎課程教材,也可用于網(wǎng)絡化教學以及培訓機構和讀者自學程序設計課程的教材。
圖書封面
評論、評分、閱讀與下載