出版時(shí)間:2010-1 出版社:電子工業(yè)出版社 作者:周靄如,林偉健 編著 頁數(shù):480
Tag標(biāo)簽:無
前言
C++語言是優(yōu)秀的計(jì)算機(jī)程序設(shè)計(jì)語言,它的功能相當(dāng)強(qiáng)大。我們編寫這本書的目的是,為沒有任何程序設(shè)計(jì)基礎(chǔ)的理工科大學(xué)生提供一本適用教材,使他們掌握從理論到實(shí)踐都要求很高的C++語言。一門課程的設(shè)置應(yīng)該放在整個(gè)教學(xué)培養(yǎng)計(jì)劃中統(tǒng)籌考慮。我們的教學(xué)目標(biāo)不是馬上培養(yǎng)一個(gè)會(huì)使用某種語言(例如C++語言)的程序員,而是強(qiáng)調(diào)對(duì)程序設(shè)計(jì)語言的理解和應(yīng)用,“計(jì)算機(jī)語言”的角色是第一位的。所以,在教材編寫和組織教學(xué)的過程中,我們力圖通過對(duì)基本語法現(xiàn)象的剖析,由淺入深地讓學(xué)生理解、掌握語言規(guī)則的原理,懂得用計(jì)算機(jī)指令的模式去分析和求解問題,并在機(jī)器上實(shí)現(xiàn)簡(jiǎn)單的程序。至于深入的算法及大程序的組織討論,將由相關(guān)的后續(xù)課程(例如,數(shù)據(jù)結(jié)構(gòu)、算法分析、計(jì)算方法、軟件工程等)完成。因此,對(duì)高級(jí)程序設(shè)計(jì)語言規(guī)則的理解和應(yīng)用是本教材寫作的立足點(diǎn)。我們根據(jù)多年從事計(jì)算機(jī)程序設(shè)計(jì)教學(xué)的經(jīng)驗(yàn),按照學(xué)生學(xué)習(xí)的認(rèn)知規(guī)律,精心構(gòu)造整本教材的體系和敘述方式。原則是:循序漸進(jìn)、難點(diǎn)分散、通俗而不膚淺。本教材以語法范疇和程序組織為脈絡(luò),清晰漸進(jìn)。從字、詞、數(shù)據(jù)、表達(dá)式、語句,到函數(shù)、類,是語法范疇構(gòu)成的基本脈絡(luò);在程序功能方面,則以組織數(shù)據(jù)和組織程序?yàn)榱硗庖粭l基本脈絡(luò),并以漸進(jìn)的、粒度擴(kuò)大的方式逐步導(dǎo)入分析。例如,數(shù)據(jù)的組織方式:基本數(shù)據(jù)類型—數(shù)組—結(jié)構(gòu)—鏈表,體現(xiàn)如何利用基本數(shù)據(jù)類型根據(jù)需要組織數(shù)據(jù);程序的組織方式:語句—函數(shù)—類,體現(xiàn)結(jié)構(gòu)化思想和面向?qū)ο笏枷雽?duì)程序不同的組織方式。指針是C++語言的重要概念,是操作對(duì)象的有力工具。本書沒有一般C語言、C++語言教材中專門的“指針”一章。我們從最簡(jiǎn)單的變量開始,建立對(duì)象的名和地址的概念,用對(duì)象的不同訪問方式貫穿于各章節(jié)。從結(jié)構(gòu)化程序設(shè)計(jì)到面向?qū)ο蟪绦蛟O(shè)計(jì),采取了比較平滑的過渡。首先,在一開始介紹基本數(shù)據(jù)類型、程序流程控制、函數(shù)等結(jié)構(gòu)化程序設(shè)計(jì)的基本知識(shí)時(shí),就非正式地使用“對(duì)象”這個(gè)術(shù)語(從計(jì)算機(jī)程序的角度,任何占有存儲(chǔ)空間的實(shí)體都是對(duì)象);繼而,掌握結(jié)構(gòu)到類的演變,給出對(duì)象的準(zhǔn)確定義;進(jìn)一步,展開介紹面向?qū)ο蟪绦虻膸讉€(gè)基本特性,即封裝、繼承、多態(tài)和類屬在C++語言中的實(shí)現(xiàn)方法。同時(shí),我們?cè)诒緯年U述中體現(xiàn)一個(gè)思想:沒有一種對(duì)所有問題都是最好的程序設(shè)計(jì)方法,對(duì)特定問題,選擇合適的解決方案是程序員必備的素質(zhì)。本書之所以取名為《C++程序設(shè)計(jì)基礎(chǔ)》,原因有二:第一,它不是一本C++語言手冊(cè),不可能包羅所有語法規(guī)則和特定版本提供的各種功能;第二,它沒有涉及復(fù)雜的算法和工程化的面向?qū)ο蠓治鲈O(shè)計(jì)方法。這兩個(gè)問題與教材的定位相關(guān)。對(duì)第一個(gè)原因,我們認(rèn)為學(xué)生在掌握了程序設(shè)計(jì)的基本概念和基本方法之后,可以通過語言平臺(tái)(例如Visual C++)或者其他資料(例如MSDN)學(xué)習(xí),拓展對(duì)語言功能的了解。我們?cè)谟嘘P(guān)章節(jié)中,也做了類似的引導(dǎo),例如,STL標(biāo)準(zhǔn)類庫的介紹,這些內(nèi)容提供給教師選擇或?qū)W生自學(xué)。至于第二個(gè)原因,那些是計(jì)算機(jī)專業(yè)后續(xù)課程的教學(xué)內(nèi)容。本書介紹的程序設(shè)計(jì)方法和使用到的算法都立足于基本概念和方法,所以,例程通常是簡(jiǎn)單和小規(guī)模的。本書共分12章,主要內(nèi)容包括:基本數(shù)據(jù)與表達(dá)式、程序控制結(jié)構(gòu)、函數(shù)、數(shù)組、結(jié)構(gòu)、類與對(duì)象、運(yùn)算符重載、繼承、虛函數(shù)與多態(tài)性、模板、輸入/輸出流、異常處理。
內(nèi)容概要
本書共分12章,主要內(nèi)容包括:基本數(shù)據(jù)與表達(dá)式、程序控制結(jié)構(gòu)、函數(shù)、數(shù)組、結(jié)構(gòu)、類與對(duì)象、運(yùn)算符重載、繼承、虛函數(shù)與多態(tài)性、模板、輸入/輸出流、異常處理?! ”緯涮椎碾娮诱n件和習(xí)題解答,請(qǐng)登錄華信教育資源網(wǎng)下載(http://www.hxedu.com.cn)。電子課件由近3000張PPT幻燈片組成,以圖形語言為設(shè)計(jì)理念,充分表達(dá)程序設(shè)計(jì)課程的教學(xué)特點(diǎn)?! ”緯梢宰鳛楦叩葘W(xué)校計(jì)算機(jī)類、信息類、電類專業(yè)本科生高級(jí)語言程序設(shè)計(jì)課程教材,也可作為教師、學(xué)生和C++語言愛好者的參考書。
書籍目錄
第1章 基本數(shù)據(jù)與表達(dá)式 1.1 概述 1.1.1 程序設(shè)計(jì)與程序設(shè)計(jì)語言 1.1.2 一個(gè)簡(jiǎn)單的C++程序 1.1.3 程序的編譯執(zhí)行 1.2 C++語言的字符集與詞匯 1.2.1 字符集 1.2.2 詞匯 1.3 C++語言的基本數(shù)據(jù)類型與存儲(chǔ)形式 1.3.1 C++語言的數(shù)據(jù)類型 1.3.2 數(shù)據(jù)存儲(chǔ) 1.3.3 基本數(shù)據(jù)類型 1.4 數(shù)據(jù)對(duì)象與訪問 1.4.1 變量定義 1.4.2 訪問變量 1.4.3 常量和約束訪問 1.5 表達(dá)式 1.5.1 運(yùn)算符 1.5.2 算術(shù)表達(dá)式 1.5.3 邏輯表達(dá)式 1.5.4 賦值表達(dá)式 1.5.5 條件表達(dá)式 1.5.6 逗號(hào)表達(dá)式 1.6 數(shù)據(jù)輸入和輸出 1.6.1 鍵盤輸入 1.6.2 屏幕輸出 1.6.3 表達(dá)式語句 本章小結(jié) 習(xí)題1 第2章 程序控制結(jié)構(gòu) 2.1 選擇控制 2.1.1 if語句 2.1.2 switch語句 2.2 循環(huán)控制 2.2.1 while語句 2.2.2 do_while語句 2.2.3 for語句 2.2.4 循環(huán)的嵌套 2.3 判斷表達(dá)式的使用 2.4 轉(zhuǎn)向語句 本章小結(jié) 習(xí)題2 第3章 函數(shù) 3.1 函數(shù)的定義與調(diào)用 3.1.1 函數(shù)定義 3.1.2 函數(shù)調(diào)用 3.1.3 函數(shù)原型 3.2 函數(shù)參數(shù)的傳遞 3.2.1 傳值參數(shù) 3.2.2 指針參數(shù) 3.2.3 引用參數(shù) 3.2.4 函數(shù)的返回類型 3.3 函數(shù)調(diào)用機(jī)制 3.3.1 嵌套調(diào)用 3.3.2 遞歸調(diào)用 3.4 函數(shù)指針 3.4.1 函數(shù)的地址 3.4.2 函數(shù)指針 3.5 內(nèi)聯(lián)函數(shù)和重載函數(shù) 3.5.1 內(nèi)聯(lián)函數(shù) 3.5.2 函數(shù)重載 3.6 變量存儲(chǔ)特性與標(biāo)識(shí)符作用域 3.6.1 存儲(chǔ)特性 3.6.2 標(biāo)識(shí)符的作用域與可見性 3.7 多文件程序結(jié)構(gòu) 3.7.1 多文件結(jié)構(gòu) 3.7.2 預(yù)處理指令 3.7.3 多文件程序使用全局變量 3.8 命名空間 3.8.1 標(biāo)準(zhǔn)名空間 3.8.2 定義命名空間 3.8.3 使用命名空間 3.9 終止程序執(zhí)行 本章小結(jié) 習(xí)題3 第4章 數(shù)組 第5章 結(jié)構(gòu) 第6章 類與對(duì)象 第7章 運(yùn)算符重載 第8章 繼承 第9章 虛函數(shù)與多態(tài)性 第10章 模板 第11章 輸入/輸出流 第12章 異常處理 附錄A 控制臺(tái)程序設(shè)計(jì) 附錄B 常用庫函數(shù) 附錄C C++關(guān)鍵字表 附錄D ASCII碼字符集
章節(jié)摘錄
插圖:用高級(jí)語言編寫的程序稱為“源程序”。源程序是文本文件,便于閱讀修改。C++的.cpp文件是文本文件,可以用各種字處理工具打開和編輯。計(jì)算機(jī)不能直接識(shí)別源程序,必須翻譯成二進(jìn)制代碼才能在機(jī)器上運(yùn)行。翻譯方式有兩種:一種稱為解釋方式,另一種稱為編譯方式。解釋方式是指由“解釋程序”對(duì)源程序逐個(gè)語句地一邊翻譯,一邊執(zhí)行。這種方式執(zhí)行速度慢,便于觀察調(diào)試程序。編譯方式是指由“編譯程序”把源程序全部翻譯成二進(jìn)制代碼。編譯后的程序稱為“目標(biāo)程序”,可以反復(fù)高速運(yùn)行。每一種高級(jí)語言都配有解釋或編譯系統(tǒng)。C++提供編譯執(zhí)行方式。實(shí)現(xiàn)一個(gè)C++語言源程序主要經(jīng)過以下3個(gè)步驟。1.編輯使用c++語言編輯器或其他文字編輯器錄入源程序。若使用c++語言編輯器,則系統(tǒng)自動(dòng)生成.cpp文件擴(kuò)展名;若使用其他文字編輯器,則只有以.cpp為擴(kuò)展名的文件才能被C++語言識(shí)別。.cpp文件是文本文件。2.編譯把一個(gè).cpp文件編譯成.exe目標(biāo)文件,要經(jīng)過預(yù)處理、編譯和連接3個(gè)步驟:預(yù)處理的作用是執(zhí)行程序編譯之前的準(zhǔn)備,例如執(zhí)行包含指令、宏替換命令;然后編譯器對(duì)程序進(jìn)行語法檢查,如果發(fā)現(xiàn)語法錯(cuò)誤,則顯示錯(cuò)誤信息,讓程序員修改,直至正確,生成目標(biāo)代碼;最后把目標(biāo)代碼進(jìn)行連接處理,往往還會(huì)加入一些系統(tǒng)提供的庫文件代碼。這些步驟在集成開發(fā)環(huán)境中會(huì)自動(dòng)完成。
編輯推薦
《C++程序設(shè)計(jì)基礎(chǔ)(第3版)》:高等學(xué)校計(jì)算機(jī)基礎(chǔ)及應(yīng)用教材
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載
C++程序設(shè)計(jì)基礎(chǔ) PDF格式下載