第1章 程序設計基本概念
1.1 計算機的過去與現在
1.2 計算機硬件結構
1.3 計算機軟件
1.3.1 操作系統(tǒng)
1.3.2 應用軟件
1.3.3 程序語言
1.4 程序設計方法
第2章 流程圖
2.1 簡介
2.2 范例
問題練習
第3章 C++程序語言初步
3.1 前言
3.2 C++的程序結構
3.3 變量與常量
3.4 數據類型(Data Type)
3.4.1 整數(Integer)
3.4.2 浮點數(Floating Point)
3.4.3 字符(Charater)與字符串(String)
3.4.4 布爾型
3.4.5 枚舉型
3.4.6 數據類型轉換
3.5 操作數與運算符
3.5.1 算術運算符
3.5.2 遞增(十十)、遞減(--)運算符
3,5.3 賦值(=)與復合賦值(op=)運算符
3.6 結論
問題練習
第4章 選擇語句與重復語句
4.1 前言
4.2 關系運算符、邏輯運算符
4.2.1 關系運算符
4.2.2 邏輯運算符
4.2.3 運算符的優(yōu)先級
4.3 if語句
4.4 switch語句
4.5 while語句
4.6 do while語句
4.7 for語句
4.8 break語句
4.9 continue語句
4.10 goto label
4.11 選擇語句與重復語句的應用
4.11.1 十進制轉換成二進制
4.11.2 求不大于整數n的質數
4.12 結論
問題練習
第5章 數組與結構
5.1 前言
5.2 數組(Anay)
5.2.1 數組的定義與初始值設定
5.2.2 數組數據的訪問
5.2.3 字符數組
5.3 結構(Shucture)
5.3.1 結構的聲明與初始值設定
5.3.2 結構中的結構
5.3.3 結構數據成員的訪問
5.3.4 結構指針
5.3.5 結構與類的差異
5.4 數組與結構的應用
5.4.1 轉置矩陣
5.4.2 反射矩陣
5.4.3 選擇排序法
5.4.4 插入排序法
5.4.5 二元搜尋法
5.4.6 堆棧(Stack)
5.4.7 隊列(Queue)
5.5 結論
問題練習
第6章 指針
6.1 前言
6.2 指針(Pointer)
6.3 字符指針
6.4 字符串指針
6.5 數組指針
6.6 結構指針
6.7 動態(tài)內存配置
6.8 結論
問題練習
第7章 輸入與輸出
7.1 前言
7.2 格式化的輸出
7.2.1 設定輸出寬度
7.2.2 設定對齊方式
7.2.3 設定輸出的小數點位數
7.2.4 設定以小數點或科學記號方式輸出
7.2.5 格式化標志
7.3 字符、字符串的輸入與輸出
7,3.1 字符的輸入與輸出
7.3.2 字符串的輸入與輸出
7.4 文本數據的存取
7.4.1 文本文件的存取
7.4.2 文件的打開模式
7.4.3 二進制文件的存取
7.5 結論
問題練習
第8章 進一步討論字符
8.1 前言
8.2 字符的應用
8.2.1 字符的定義與賦值
8.2.2 字符的運算
8.2.3 控制符
8.2.4 測試字符
8.2.5 字符數組
8.3 字符串的應用
8.3.1 字符串的定義與賦值
8.3.2 字符串的鏈接
8.3.3 字符串的長度
8.3.4 子字符串
8.3.5 比較字符串大小
8.3.6 尋找某字符串
8.3.7 尋找特定字符
8.3.8 插入字符串
8.3.9 替換字符串內容
8.3.10 刪除子字符串
8.4 結論
問題練習
第9章 函數
9.1 前言
9.2 函數的定義與聲明
9.2.1 函數的定義
9.2.2 函數的聲明——函數原型
9.2.3 調用函數
9.3 C++的程序結構
9.4 標識符的作用域
9.5 參數的傳遞
9.5.1 傳值調用(Call By Value)
9.5.2 傳址調用(Call By Address)
9.5.3 引用調用(Call By Reference)
9.6 內聯(inline)函數
9.7 遞歸函數(Recursive Function)
9.8 主程序的實參
9.9 函數的應用
9.9.1 系統(tǒng)函數:隨機數發(fā)生器rand()與random(n)
9.9.2 系統(tǒng)函數:日期與時間getdate()與gettime()
9.9.3 系統(tǒng)函數:ceil(x)與floor(x)
9.9.4 系統(tǒng)函數:平方根sqrt(x)
9.9.5 系統(tǒng)函數:次方pow(x,y)
9.9.6 輸出空格與空行
9.9.7 布爾函數
9.9.8 冒泡排序法
9.9.9 堆棧的實作(使用數組)
9.9.10 堆棧的制作(使用鏈接串行結構)
9.10 結論
問題練習
第10章 預處理指令、程序文件的分割與異常處理
10.1 前言
10.2 預處理指令
10.2.1 #include
10.2.2 #define與#undef
10.2.3 #if、#ifdef與#ifndef
10.3 程序文件的分割
10.3.1 變量的范圍法則與外部變量
10.3.2 名空間(Namespace)
10.4 異常處理
10.5 結論
問題練習
第11章 面向對象的基本概念
11.1 軟件危機
11.2 回歸自然
11.3 面向對象的問題分析
11.4 面向對象的程序語言
問題練習
第12章 類的定義
12.1 前言
12.2 類的聲明
12.2.1 結構的定義
12.2.2 聲明
12.3 成員函數的定義與內聯函數
12.4 構造函數與析構函數
12.5 合成使用類
12.6 靜態(tài)的類成員
12.7 結論
問題練習
第13章 運算符的重載
13.1 前言
13.2 友元函數與this指針
13.2.1 友元函數
13.2.2 this指針
13.3 重載的基本概念
13.3.1 運算符
13.3.2 定義運算符重載
13.4 流運算符重載
13.5 一元運算符重載
13.5.1 取址運算符&
13.5.2 !運算符
13.5.3 ++與一運算符
13.6 二元運算符重載
13.6.1 下標運算符[]
13.6.2 賦值運算符
13.6.3 其他的二元運算符
13.7 實用性的Date類
13.8 結論
問題練習
第14章 繼承
14.1 前言
14.2 繼承的聲明
14.2.1 基類與派生類
14.2.2 派生類的定義
14.3 構造函數與析構函數的使用
14.4 類的賦值問題
14.5 多重繼承
14.6 結論
問題練習
第15章 虛函數與多態(tài)性
15.1 前言
15.2 虛函數的聲明
15.3 抽象類
15.4 虛析構函數
15.5 結論
問題練習
第16章 軟件工程簡介
16.1 前言
16.2 何謂成功的信息系統(tǒng)開發(fā)項目
16.3 軟件開發(fā)程序
16.4 軟件開發(fā)方法
16.4.1 結構化方法
16.4.2 面向對象方法
16.5 軟件開發(fā)工具
16.6 軟件開發(fā)文件
16.6.1 為什么需要軟件開發(fā)文件
16.6.2 軟件分類原則
16.6.3 軟件開發(fā)過程的文件
16.7 軟件開發(fā)管理
16.7.1 項目管理
16.7.2 建構管理
16.8 結論
附錄
附錄A 流程圖范例程序
附錄B C十十保留字
附錄C ASCII碼表
附錄D 運算符的優(yōu)先級
參考文獻