出版時間:2010-8 出版社:南開大學(xué)出版社 作者:趙宏 主編 頁數(shù):344 字?jǐn)?shù):566000
前言
目前,不僅許多計算機(jī)專業(yè)和多數(shù)軟件學(xué)院的程序設(shè)計課程選擇了C++作為程序設(shè)計的第一門語言,越來越多的理工科專業(yè)也把C++作為計算機(jī)基礎(chǔ)課,一方面是由于C++是應(yīng)用最廣的面向?qū)ο笳Z言,另一方面是由于它有利于初學(xué)程序設(shè)計的學(xué)生學(xué)習(xí)一般的編程技巧。南開大學(xué)理工科公共計算機(jī)基礎(chǔ)課程“面向?qū)ο蟪绦蛟O(shè)計”,選用的就是C++語言,該課程的目標(biāo)是培養(yǎng)學(xué)生基本的程序設(shè)計能力。然而,公共計算機(jī)基礎(chǔ)課課時有限,近幾年的教學(xué)經(jīng)驗表明,把C++語言作為高級語言程序設(shè)計的教學(xué)語言對于教師和學(xué)生都是有難度的,主要的問題是C++的規(guī)模和C++程序的復(fù)雜程度,往往使剛剛步入大學(xué)的學(xué)生感到困難重重。教材的編寫一直是一個艱巨而具有探索性的工作。面對非計算機(jī)專業(yè)的理工科學(xué)生,如何使初學(xué)者在有限的課時內(nèi)打下良好的程序設(shè)計基礎(chǔ),目前仍有許多值得探索的地方。由于他們不再有相關(guān)的后續(xù)課程,進(jìn)一步提高程序設(shè)計能力的學(xué)習(xí)機(jī)會較少,公共計算機(jī)基礎(chǔ)課教材的編寫更是一個挑戰(zhàn)?! 鴥?nèi)外同類教材主要是面向計算機(jī)專業(yè)的學(xué)生,即使是為非計算機(jī)專業(yè)的理工科學(xué)生編寫的教材,也僅僅是對專業(yè)教材的簡單取舍,較少地考慮非計算機(jī)專業(yè)的理工科學(xué)生學(xué)習(xí)程序設(shè)計的需求和特點(diǎn),在內(nèi)容和程序?qū)嵗倪x取上,在文字?jǐn)⑹錾洗嬖诓蛔?,在教材的編寫風(fēng)格上也過于傳統(tǒng),較難激發(fā)學(xué)生的學(xué)習(xí)興趣。 《高等院校非計算機(jī)專業(yè)教材·面向?qū)ο蟪绦蛟O(shè)計:C++高級語言(附CD-ROM光盤1張)》是南開大學(xué)教材建設(shè)資助立項教材。編著者力求做到: ?。?)適應(yīng)21世紀(jì)課程體系和教學(xué)內(nèi)容改革方向要求,抓住授課對象是非計算機(jī)專業(yè)的本科一年級學(xué)生的特點(diǎn),注重內(nèi)容的選取和章節(jié)的安排。力求做到學(xué)習(xí)內(nèi)容循序漸進(jìn);文字?jǐn)⑹龊唵?、易于理解;全書難易得當(dāng)、重點(diǎn)突出,適合非計算機(jī)專業(yè)學(xué)生和C++語言自學(xué)者學(xué)習(xí)程序設(shè)計語言時使用?! 。?)注重語法規(guī)則的清晰講解和配備完整的程序?qū)嵗?。加?qiáng)程序?qū)嵗倪x擇和比例配置,訓(xùn)練和培養(yǎng)學(xué)生分析解決問題的思想和能力。 ?。?)根據(jù)初學(xué)者容易出錯的地方,給出了大量的提示、提問和學(xué)習(xí)指導(dǎo),適合課堂教學(xué)和自學(xué)。 ?。?)理論與實際相結(jié)合。同時為《高等院校非計算機(jī)專業(yè)教材·面向?qū)ο蟪绦蛟O(shè)計:C++高級語言(附CD-ROM光盤1張)》編寫了配套的實習(xí)指導(dǎo)和習(xí)題集,根據(jù)各章節(jié)的內(nèi)容給出相應(yīng)的上機(jī)實習(xí)內(nèi)容;強(qiáng)化并豐富相應(yīng)的習(xí)題,以逐步提高學(xué)生的程序設(shè)計能力,從而能夠使用C++高級語言解決實際的問題。
內(nèi)容概要
高級程序設(shè)計語言C++是在C語言基礎(chǔ)上的一種能夠進(jìn)行面向?qū)ο蟪绦蛟O(shè)計和傳統(tǒng)過程化程序設(shè)計的語言,是C語言的超集。本書較詳細(xì)地介紹了
C++語言的基礎(chǔ)知識,通過大量的程序?qū)嵗?,針對初學(xué)者容易出現(xiàn)錯誤和困惑的地方提供了大量的附注,幫助讀者更好地理解C++的基本概念和技術(shù)。
全書共分19章,分別介紹了程序設(shè)計的基本概念、C++程序的基本組成,數(shù)據(jù)類型、常量和變量,運(yùn)算符、表達(dá)式和語句,程序控制結(jié)構(gòu),函數(shù)初步與變量的存儲類型,數(shù)組,指針和引用,字符串,函數(shù),構(gòu)造數(shù)據(jù)類型,編譯預(yù)處理,類與對象,繼承,多態(tài)性,運(yùn)算符重載,輸入/輸出流,文件,模板,MFC入門等內(nèi)容。
本書是專門為高等院校非計算機(jī)專業(yè)C++高級語言程序設(shè)計課程編寫的教材,面向C++初學(xué)者,不要求讀者已經(jīng)熟悉相關(guān)的編程概念和有C語言方面的背景知識。本書也適合自學(xué)者使用。
書籍目錄
第1章 初識C++
1.1 程序設(shè)計(Programming)的基本概念
1.2 高級程序設(shè)計語言C++
1.3 第一個C++程序
1.4 小結(jié)
1.5 學(xué)習(xí)指導(dǎo)
第2章 數(shù)據(jù)類型、常量和變量
2.1 數(shù)據(jù)在計算機(jī)中存儲的基本概念
2.2 基本數(shù)據(jù)類型
2.3 常量
2.4 變量
2.5 小結(jié)
2.6 學(xué)習(xí)指導(dǎo)
第3章 運(yùn)算符、表達(dá)式和語句
3.1 運(yùn)算符和表達(dá)式
3.2 類型轉(zhuǎn)換
3.3 語句
3.4 小結(jié)
3.5 學(xué)習(xí)指導(dǎo)
第4章 程序控制結(jié)構(gòu)
4.1 順序結(jié)構(gòu)
4.2 選擇結(jié)構(gòu)
4.3 循環(huán)結(jié)構(gòu)
4.4 轉(zhuǎn)向語句
4.5 應(yīng)用實例
4.6 小結(jié)
4.7 學(xué)習(xí)指導(dǎo)
第5章 函數(shù)初步與變量的存儲類型
5.1 函數(shù)的基本概念
5.2 函數(shù)的定義
5.3 函數(shù)的傳值調(diào)用及函數(shù)原形
5.4 變量的存儲類型、作用域和生存期
5.5 小結(jié)
5.6 學(xué)習(xí)指導(dǎo)
第6章 數(shù)組
6.1 數(shù)組的概念
6.2 數(shù)組的聲明
6.3 數(shù)組的初始化
6.4 數(shù)組的訪問
6.5 小結(jié)
6.6 學(xué)習(xí)指導(dǎo)
第7章 指針和引用
7.1 指針的概念
7.2 指針變量的聲明、初始化和訪問
7.3 指針與數(shù)組
7.4 指針的運(yùn)算
7.5 指向指針的指針
7.6 cot指針
7.7 堆內(nèi)存分配
7.8 引用
7.9 小結(jié)
7.10 學(xué)習(xí)指導(dǎo)
第8章 字符串
8.1 字符串的概念
8.2 字符串的輸入輸出
8.3 指針與字符串
8.4 常用的字符串函數(shù)
8.5 小結(jié)
8.6 學(xué)習(xí)指導(dǎo)
第9章 函數(shù)
9.1 函數(shù)的調(diào)用機(jī)制
9.2 函數(shù)的遞歸調(diào)用
9.3 帶默認(rèn)形參值的函數(shù)
9.4 函數(shù)的作用域
9.5 內(nèi)聯(lián)函數(shù)
9.6 函數(shù)重載
9.7 函數(shù)指針
9.8 函數(shù)與指針
9.9 函數(shù)與引用
9.10 小結(jié)
9.11 學(xué)習(xí)指導(dǎo)
第10章 構(gòu)造數(shù)據(jù)類型
10.1 結(jié)構(gòu)體
10.2 枚舉
10.3 類型重定義typedef
10.4 小結(jié)
第11章 編譯預(yù)處理
11.1 宏定義
11.2 條件編譯
11.3 文件包含和多文件結(jié)構(gòu)
11.4 小結(jié)
第12章 類與對象
12.1 類和對象的基本概念
12.2 類的聲明與定義
12.3 對象
12.4 構(gòu)造函數(shù)和析構(gòu)函數(shù)
12.5 拷貝構(gòu)造函數(shù)
12.6 類的靜態(tài)成員
12.7 友元
12.8 this指針
12.9 string類
12.10 應(yīng)用實例
12.11 小結(jié)
12.12 學(xué)習(xí)指導(dǎo)
第13章 繼承
13.1 什么是繼承
13.2 派生類的定義
13.3 函數(shù)重定義
13.4 保護(hù)(protected)成員
13.5 派生類的繼承方式
13.6 派生類的構(gòu)造函數(shù)與析構(gòu)函數(shù)
13.7 類型兼容
13.8 多重繼承
13.9 應(yīng)用實例
13.10 小結(jié)
13.11 學(xué)習(xí)指導(dǎo)
第14章 多態(tài)性
14.1 多態(tài)性的概念
14.2 虛函數(shù)
14.3 抽象類
14.4 應(yīng)用實例
14.5 小結(jié)
14.6 學(xué)習(xí)指導(dǎo)
第15章 運(yùn)算符重載
15.1 運(yùn)算符重載的概念
15.2 運(yùn)算符重載的方法
15.3 運(yùn)算符重載的規(guī)則
15.4 特殊運(yùn)算符的重載
15.5 類類型轉(zhuǎn)換
15.6 小結(jié)
第16章 輸入/出流
16.1 輸入/輸出流簡介
16.2 輸入/輸出流的成員函數(shù)
16.3 輸入/輸出的格式控制
16.4 自定義數(shù)據(jù)類型的輸入/輸出
16.5 小結(jié)
第17章 文件
17.1 文件與流
17.2 文件的打開與關(guān)閉
17.3 文本文件的順序讀寫
17.4 二進(jìn)制文件的順序讀寫
17.5 文件的隨機(jī)讀寫
17.6 小結(jié)
第18章 模板
18.1 函數(shù)模板
18.2 類模板
18.3 小結(jié)
第19章 MFC入門
19.1 認(rèn)識MFC
19.2 一個簡單的MFC應(yīng)用程序
19.3 常用控件
19.4 MFC應(yīng)用程序開發(fā)實例
19.5 小結(jié)
章節(jié)摘錄
計算機(jī)程序(Program)的作用是指示計算機(jī)進(jìn)行必要的計算和數(shù)據(jù)處理從而幫助我們解決特定的問題。計算機(jī)語言要處理兩個概念一數(shù)據(jù)和算法,數(shù)據(jù)是程序使用和處理的信息。面對問題,需要找出解決問題的方法,我們把這種能夠在有限的步驟內(nèi)解決問題的過程和方法稱為算法(Algorithm)。程序設(shè)計是指設(shè)計、編制、調(diào)試程序的方法和過程,是尋找算法并用計算機(jī)能夠理解的語言表達(dá)出來的一種活動?! ?.1.1程序設(shè)計方法 20世紀(jì)60年代末期隨著“軟件危機(jī)”的出現(xiàn),程序設(shè)計方法的研究開始受到重視。結(jié)構(gòu)化程序設(shè)計方法(StructuredProgramming,SP)是程序設(shè)計歷史中最早提出的方法。70年代中后期,針對結(jié)構(gòu)化程序設(shè)計在進(jìn)行大型項目設(shè)計時存在的缺陷,提出了面向?qū)ο蟪绦蛟O(shè)計(ObljectOrientedProgramming,OOP)方法。20年來面向?qū)ο蟪绦蛟O(shè)計方法的大量研究工作,逐步替代了傳統(tǒng)的結(jié)構(gòu)化程序設(shè)計方法,成為目前最重要的程序設(shè)計方法?! ?.結(jié)構(gòu)化程序設(shè)計(SP) SP方法的核心是將程序模塊化,主要通過使用順序、分支(選擇)和循環(huán)(重復(fù))等三種基本結(jié)構(gòu),形成具有復(fù)雜層次的結(jié)構(gòu)化程序?! P方法采用“自頂向下,逐步求精”的設(shè)計思想,其理念是將大型的程序分解成小型和便于管理的任務(wù),如果其中的一項任務(wù)仍然較大,就將它分解成更小的任務(wù)。程序設(shè)計的過程就是將程序劃分成為小型的、易于編寫的模塊。程序的模塊功能獨(dú)立,只使用三種基本結(jié)構(gòu),具有單一出口和入口,增加了模塊的獨(dú)立性,可以像搭積木一樣根據(jù)需要使用不同的模塊。C語言的設(shè)計有助于使用結(jié)構(gòu)化程序設(shè)計的方法,程序員開發(fā)程序單元(稱為函數(shù))來表示各個任務(wù)模塊。圖1.1是采用結(jié)構(gòu)化程序設(shè)計的程序結(jié)構(gòu)示意圖。
圖書封面
評論、評分、閱讀與下載