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