出版時間:2009-3 出版社:清華大學出版社 作者:溫秀梅,丁學鈞,李建華 主編 頁數(shù):285
內(nèi)容概要
本書在體系結(jié)構(gòu)的安排上,將C++語言的基礎(chǔ)知識和一般的編程思想有機地結(jié)合起來,對于典型例題進行了詳細的分析解釋,除在每章后附有習題外,還在附錄中整合了實驗設(shè)計。 本書由3個部分組成。第1部分(第1~8章)是對C++語言基本特性的介紹,有些是和C語言有類似的地方。第2部分(第9~12章)是關(guān)于C++語言面向?qū)ο蟮幕舅枷爰霸O(shè)計方法。這些是C語言中所沒有的。正是這一部分,使得許多人認為C++語言太復雜,為了使普通讀者易于理解,我們力爭把這些內(nèi)容寫得簡明扼要,通俗易懂,而又比較完整。第3部分是本書的附錄部分,包括有重要的實驗內(nèi)容設(shè)計及Visual C++ 6.0環(huán)境介紹,這是掌握一種編程語言的重要環(huán)節(jié)。 本著少而精的原則,全書版面清晰、結(jié)構(gòu)緊湊,知識信息含量高,特別適合作為非計算機專業(yè)本科生教學或計算機應用培訓班的教材,同時,還可以作為自學或函授學習的參考書。
書籍目錄
第1章 緒論 1.1 C++語言發(fā)展史簡介 1.2 程序設(shè)計概述 1.2.1 程序設(shè)計的發(fā)展歷程- 1.2.2 結(jié)構(gòu)化程序設(shè)計 1.2.3 面向?qū)ο蟪绦蛟O(shè)計 1.3 基本語法成分 1.3.1 字符集 1.3.2 標識符 1.3.3 關(guān)鍵字 1.3.4 運算符 1.3.5 分隔符 1.3.6 空白符 1.4 一個簡單的C++程序第2章 基本數(shù)據(jù)類型、運算符與表達式 2.1 數(shù)據(jù)類型概述 2.2 常量與變量 2.2.1 常量 2.2.2 變量 2.3 基本類型 2.3.1 整型 2.3.2 實型 2.3.3 字符型 2.3.4 布爾類型 2.3.5 void類型 2.4 運算符和表達式 2.4.1 賦值運算符和賦值表達式 2.4.2 算術(shù)運算符和算術(shù)表達式 2.4.3 關(guān)系運算符和關(guān)系表達式 2.4.4 邏輯運算符和邏輯表達式 2.4.5 條件運算符和條件表達式 2.4.6 逗號運算符和逗號表達式 2.5 類型轉(zhuǎn)換 2.5.1 自動類型轉(zhuǎn)換 2.5.2 強制類型轉(zhuǎn)換 習題第3章 結(jié)構(gòu)化程序設(shè)計 3.1 C++語言輸入輸出流 3.1.1 C++語言無格式輸入輸出 3.1.2 C++語言格式輸入輸出 3.2 結(jié)構(gòu)化程序設(shè)計概述 3.3 順序結(jié)構(gòu)程序設(shè)計 3.3.1 順序結(jié)構(gòu) 3.3.2 程序舉例 3.4 選擇結(jié)構(gòu)程序設(shè)計 3.4.1 用if語句實現(xiàn)選擇結(jié)構(gòu)設(shè)計 3.4.2 用switch語句實現(xiàn)選擇結(jié)構(gòu)設(shè)計 3.5 循環(huán)結(jié)構(gòu)程序設(shè)計 3.5.1 while語句 3.5.2 do-whiIe語句 3.5.3 for語句 3.5.4 跳轉(zhuǎn)語句break和continue 3.5.5 循環(huán)的嵌套 3.6 程序設(shè)計舉例 習題第4章 數(shù)組 4.1 一維數(shù)組 4.1.1 一維數(shù)組的定義 4.1.2 一維數(shù)組元素的引用 4.1.3 一維數(shù)組的初始化 4.1.4 一維數(shù)組程序舉例 4.2 二維數(shù)組 4.2.1 二維數(shù)組的定義 4.2.2 二維數(shù)組元素的引用 4.2.3 二維數(shù)組的初始化 4.2.4 二維數(shù)組程序舉例 4.3 字符數(shù)組 4.3.1 字符數(shù)組的定義 4.3.2 字符數(shù)組的初始化 4.3.3 字符數(shù)組的使用 4.3.4 字符數(shù)組程序舉例 4.3.5 字符串處理函數(shù) 4.3.6 字符串程序舉例 習題第5章 函數(shù) 5.1 函數(shù)的定義 5.1.1 定義函數(shù) 5.1.2 函數(shù)原型 5.2 函數(shù)的調(diào)用 5.2.1 調(diào)用函數(shù) 5.2.2 參數(shù)傳遞機制 5.2.3 函數(shù)返回值 5.2.4 函數(shù)調(diào)用中的數(shù)據(jù)流 5.3 函數(shù)的嵌套調(diào)用 5.4 遞歸函數(shù) 5.5 作用域與生命期 5.5.1 作用域 5.5.2 全局變量和局部變量 5.5.3 生命期 習題第6章 指針 6.1 指針的基本概念 6.1.1 指針的概念 6.1.2 指針變量的定義 6.1.3 指針變量運算符 6.1.4 指針的初始化與賦值 6.1.5 指針的運算 6.2 指針與數(shù)組 6.2.1 指向數(shù)組的指針 6.2.2 指針與字符數(shù)組 6.2.3 多級指針與指針數(shù)組 6.2.4 指針與多維數(shù)組 6.2.5 數(shù)組指針 6.3 指針與函數(shù) 6.3.1 指針作為函數(shù)參數(shù) 6.3.2 函數(shù)調(diào)用中數(shù)組的傳遞 6.3.3 函數(shù)指針 習題第7章 編譯預處理命令 7.1 宏定義 7.1.1 不帶參數(shù)的宏定義 7.1.2 帶參數(shù)的宏 7.2 文件包含 7.3 條件編譯 習題第8章 結(jié)構(gòu)體、共用體和枚舉類型 8.1 結(jié)構(gòu)體類型 8.2 定義結(jié)構(gòu)體類型變量 8.2.1 先聲明結(jié)構(gòu)體類型再定義變量 8.2.2 聲明結(jié)構(gòu)體類型的同時定義變量 8.2.3 直接定義結(jié)構(gòu)體類型變量 8.2.4 結(jié)構(gòu)體變量的初始化 8.3 結(jié)構(gòu)體變量成員的引用 8.4 結(jié)構(gòu)體數(shù)組 8.4.1 結(jié)構(gòu)體數(shù)組的定義 8.4.2 結(jié)構(gòu)體數(shù)組的初始化 8.4.3 結(jié)構(gòu)體數(shù)組應用舉例 8.5 結(jié)構(gòu)體指針 8.5.1 指向結(jié)構(gòu)體變量的指針 8.5.2 指向結(jié)構(gòu)體數(shù)組的指針 8.5.3 用結(jié)構(gòu)體變量和指向結(jié)構(gòu)體的指針作為函數(shù)參數(shù) 8.6 用指針處理鏈表 8.6.1 鏈表的概述 8.6.2 動態(tài)內(nèi)存分配 8.6.3 建立單向動態(tài)鏈表 8.6.4 輸出鏈表 8.6.5 對鏈表的刪除操作 8.6.6 對鏈表的插人操作 8.7 共用體 8.7.1 共用體的概念 8.7.2 共用體類型和共用體類型變量的定義 8.7.3 共用體變量引用的方式 8.7.4 共用體類型的特點 8.8 枚舉類型 8.8.1 枚舉類型及枚舉變量的定義 8.8.2 枚舉元素的引用 8.8.3 用typedef定義類型 習題第9章 面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ) 9.1 面向?qū)ο蟪绦蛟O(shè)計概述 9.1.1 面向?qū)ο笫擒浖椒▽W的返璞歸真 9.1.2 面向?qū)ο蟪绦蛟O(shè)計語言的四大家族 9.1.3 面向?qū)ο蟪绦蚍治鯫OA與設(shè)計OOD的基本步驟 9.2 類和對象 9.2.1 類 9.2.2 對象 9.2.3 名字解析和this指針 9.3 帶默認參數(shù)的函數(shù)和函數(shù)重載 9.3.1 帶默認參數(shù)的函數(shù) 9.3.2 函數(shù)重載 9.4 構(gòu)造函數(shù)和析構(gòu)函數(shù) 9.4.1 構(gòu)造函數(shù) 9.4.2 析構(gòu)函數(shù) 9.5 對象成員和靜態(tài)成員 9.5.1 對象成員 9.5.2 靜態(tài)成員 9.6 友元 9.7 類模板和模板類 習題第10章 繼承與派生 10.1 單一繼承 10.1.1 繼承與派生 10.1.2 派生類的定義 10.1.3 類的繼承方式 10.1.4 派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù) 10.2 多重繼承 10.2.1 多重繼承的概念和定義 10.2.2 二義性和支配規(guī)則 10.2.3 賦值兼容規(guī)則 10.3 虛基類 10.3.1 虛基類的概念 10.3.2 多重繼承的構(gòu)造函數(shù)和析構(gòu)函數(shù) 習題第11章 多態(tài)性與虛函數(shù) 11.1 運算符重載 11.1.1 什么是運算符重載 11.1.2 用成員函數(shù)重載運算符 11.1.3 用友元函數(shù)重載運算符 11.1.4 幾個運算符的重載 11.2 虛函數(shù) 11.2.1 為什么要引入虛函數(shù) 11.2.2 虛函數(shù)的定義與使用 11.3 純虛函數(shù)和抽象類 11.3.1 純虛函數(shù)的概念 11.3.2 抽象類的概念 11.4 虛析構(gòu)函數(shù) 習題第12章 輸入輸出流 12.1 標準輸入輸出流 12.1.1 輸入輸出流的概念 12.1.2 C++所有輸入輸出類的繼承關(guān)系 12.2 文件輸入輸出流 習題附錄A 程序的調(diào)試與運行附錄B 標準字符ASCII表附錄C 實驗附錄D 模擬考試題附錄E 課程設(shè)計任務書附錄F 參考課時安排
章節(jié)摘錄
第1章 緒論 1.1 C++語言發(fā)展史簡介 C++語言是從C語言發(fā)展演變而來的,因此在介紹C++語言之前,首先介紹一下C語言。1972年至1973年問,美國貝爾實驗室的Denis.M.Ritchie在一臺DEC PDP-11計算機上實現(xiàn)了基于8語言的最初C語言。C語言的產(chǎn)生基于兩個方面的需要:一是為滿足UNIX操作系統(tǒng)開發(fā)的需要,二是為拉近高級語言與硬件之問距離的需要。目前,比較流行的C語言版本基本上都是以ANSI C為基礎(chǔ)的?! 語言具有以下一些特點: (1)語言簡潔、緊湊,使用方便、靈活。 ?。?)運算符和數(shù)據(jù)結(jié)構(gòu)豐富,具有結(jié)構(gòu)化的控制語句,生成目標代碼質(zhì)量高,程序執(zhí)行效率高?! 。?)語法限制不太嚴格,程序設(shè)計自由度大?! 。?)與其他高級語言相比,具有可以直接訪問物理地址,能進行位運算的優(yōu)點?! 。?)與匯編語言相比,具有良好的可讀性和可移植性。 C語言盛行的同時,其局限性也逐漸暴露出來: (1)C語言類型檢查機制相對較弱,這使得程序中的一些錯誤不能在編譯時被發(fā)現(xiàn),這些錯誤若是遺留到程序的運行階段由程序員來檢查,將是很困難的?! 。?)C語言本身幾乎沒有支持代碼重用的語言結(jié)構(gòu),因此一個程序員精心設(shè)計的程序,很難為其他程序所用?! 。?)C語言不適合開發(fā)大型程序,當程序的規(guī)模達到一定的程度時,程序員很難控制程序的復雜性。
編輯推薦
《C++語言程序設(shè)計教程與實驗(第2版)》是在前一版的基礎(chǔ)上修訂而成的。修編后的教材保持了與原書內(nèi)容、風格一致,使采用原書的教師可以自然地過渡到新版教材。這次修編主要就以下幾個方面進行了改進。全書根據(jù)教學改革、實踐教學的需要和教師多年的教學經(jīng)驗,主要修改、增補了第3章、第4章的例題;在第5章中增加了函數(shù)的引用調(diào)用機制和函數(shù)調(diào)用中的數(shù)據(jù)流;修改了第12章中的文件輸入輸出流;修改了實驗內(nèi)容;新增了附錄E課程設(shè)計任務書,供課程設(shè)計者使用。
圖書封面
評論、評分、閱讀與下載