-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

零基礎學C++(第3版)

( 簡體 字)
作者:王慧 等編著類別:1. -> 程式設計 -> C++ -> C++
譯者:
出版社:機械工業出版社零基礎學C++(第3版) 3dWoo書號: 39098
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:7/1/2014
頁數:557
光碟數:1 (含視頻教學)
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111468592
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

  本書共分為6篇20章,介紹了Visual C++ 6開發環境的搭建,C++語言的基本數據類型、表達式、函數、函數重載、類的繼承、多態、內存管理方式、文件存儲、錯誤與異常、RTTI、string類、編碼風格與程序編譯等內容,還用C++語言實現了一個教學管理系統,最后對世界500強中IT公司的常見面試題進行了講解。
  本書非常適合C++語言的初級、中級讀者閱讀,并可作為開發人員的參考手冊。
目錄:

前言
第一篇 C++基礎

第1章 C++概述 
1.1 了解計算機 
1.1.1 計算機硬件 
1.1.2 計算機軟件 
1.2 程序設計語言 
1.2.1 機器語言 
1.2.2 匯編語言 
1.2.3 高級語言 
1.2.4 數據結構和算法 
1.2.5 面向過程的程序設計(POP) 
1.2.6 面向對象的程序設計(OOP) 
1.3 C++概述 
1.3.1 C++語言發展歷程 
1.3.2 C++語言特點 
1.3.3 C++程序開發基本過程 
1.4 C++開發環境的搭建 
1.4.1 Visual C++ 6開發環境簡介 
1.4.2 開發步驟 
1.5 第一個C++程序 
1.6 C語言與C++語言的區別 
1.6.1 程序設計思想的區別 
1.6.2 語法規范的區別 
1.7 小結 
1.8 習題 

第2章 開始C++之旅 
2.1 C++程序的結構 
2.1.1 C++的注釋風格 
2.1.2 編譯預處理與新舊標準 
2.1.3 主函數 
2.1.4 名稱空間 
2.1.5 C++語素 
2.1.6 縮進與對齊 
2.2 變量與基本類型 
2.2.1 變量 
2.2.2 整型 
2.2.3 浮點型 
2.2.4 基本字符型 
2.2.5 寬字符型 
2.2.6 布爾型 
2.3 常量 
2.3.1 整型常量和浮點型常量 
2.3.2 字符型常量 
2.3.3 字符串常量 
2.3.4 符號常量 
2.3.5 枚舉常量 
2.4 運算符與表達式 
2.4.1 算術運算 
2.4.2 邏輯運算 
2.4.3 短路表達式 
2.4.4 關系運算 
2.4.5 大有文章:變量是否為“0” 
2.4.6 條件運算 
2.4.7 位運算 
2.4.8 賦值運算 
2.4.9 ++和-- 
2.4.10 逗號表達式 
2.4.11 sizeof運算符與sizeof表達式 
2.4.12 運算符的優先級和結合性 
2.5 類型轉換 
2.5.1 賦值轉換 
2.5.2 表達式中的轉換 
2.5.3 強制類型轉換 
2.5.4 函數調用和傳遞參數時的類型轉換 
2.6 流程控制語句 
2.6.1 if…else…選擇結構 
2.6.2 switch結構 
2.6.3 if…else…結構和switch結構的比較 
2.6.4 for循環結構 
2.6.5 for循環結構嵌套 
2.6.6 while循環結構 
2.6.7 do…while循環結構 
2.6.8 循環語句的效率 
2.6.9 流程轉向控制語句之break 
2.6.10 流程轉向控制語句之continue 
2.6.11 流程轉向控制語句之goto 
2.6.12 程序終止函數exit() 
2.7 小結 
2.8 習題
 
第二篇 C++過程開發

第3章 數組和C風格字符串 
3.1 什么是數組 
3.2 一維數組 
3.2.1 一維數組的聲明 
3.2.2 初始化一維數組 
3.2.3 一維數組應用舉例 
3.2.4 數組操作注意事項 
3.3 C風格字符串 
3.3.1 C風格字符串的聲明 
3.3.2 字符數組的cin和cout 
3.3.3 get()函數和getline()函數 
3.3.4 cin與get()/getline()函數的搭配問題 
3.3.5 訪問C風格字符串中的某個元素 
3.3.6 C風格字符串處理函數 
3.4 二維數組及多維數組 
3.4.1 聲明一個二維數組 
3.4.2 初始化二數組 
3.4.3 二維數組應用舉例 
3.4.4 二維數組在內存中是如何排列元素的 
3.4.5 三維數組在內存中是如何排列元素的 
3.5 小結 
3.6 習題 

第4章 指針和引用 
4.1 指針的定義與使用 
4.1.1 為什么使用指針 
4.1.2 聲明一個指針變量 
4.1.3 初始化指針變量 
4.1.4 指向指針的指針 
4.1.5 指針賦值 
4.2 指針的運算 
4.2.1 指針與整數的加減 
4.2.2 同類型指針間的比較 
4.2.3 同類型指針相減 
4.3 動態內存分配 
4.3.1 使用new動態分配內存 
4.3.2 使用delete釋放動態申請的內存 
4.3.3 使用new申請動態數組 
4.3.4 不要使用或釋放已經釋放的內存塊 
4.3.5 使用malloc和free動態申請內存 
4.3.6 動態內存申請并不一定能成功 
4.4 指針和const 
4.4.1 禁止改寫指針(常量指針或常指針) 
4.4.2 禁止改寫間接引用 
4.4.3 既禁止改寫指針,又禁止改寫間接引用 
4.5 指針與數組 
4.5.1 數組名指針 
4.5.2 數組元素的指針形式 
4.5.3 指向數組的指針(數組指針) 
4.5.4 指針數組 
4.5.5 指針與多維數組 
4.5.6 指針與字符數組 
4.6 引用 
4.6.1 引用的聲明 
4.6.2 引用的特點 
4.6.3 引用的使用限制 
4.6.4 其他要說明的問題 
4.7 小結 
4.8 習題
 
第5章 結構、共用體和鏈表 
5.1 結構 
5.1.1 如何定義一個結構 
5.1.2 結構變量的聲明和使用 
5.1.3 結構變量的初始化 
5.1.4 結構變量間是否可以相互賦值 
5.1.5 結構體變量的sizeof 
5.1.6 結構體的復雜形式 
5.2 共用體 
5.2.1 共用體的定義 
5.2.2 共用體和結構的區別 
5.2.3 共用體變量的聲明和初始化 
5.2.4 共用體使用舉例 
5.2.5 共用體的sizeof 
5.3 結構數組和共用體數組 
5.3.1 結構數組的聲明和初始化 
5.3.2 共用體數組的聲明和初始化 
5.4 指向結構的指針 
5.4.1 聲明一個結構指針 
5.4.2 結構指針的初始化 
5.4.3 使用指針訪問結構成員 
5.5 鏈表 
5.5.1 鏈表的結構 
5.5.2 創建鏈表 
5.5.3 鏈表與數組的區別 
5.5.4 鏈表的遍歷和查找 
5.5.5 鏈表的插入和刪除 
5.5.6 刪除整個鏈表 
5.6 小結 
5.7 習題 

第6章 用函數合理組織程序 
6.1 模塊化帶來的好處 
6.1.1 函數的調用過程 
6.1.2 抽象和封裝 
6.1.3 實現一個函數 
6.2 函數定義 
6.2.1 函數頭 
6.2.2 函數體 
6.2.3 函數定義補充說明 
6.2.4 函數的返回值 
6.3 函數聲明 
6.3.1 為什么要進行函數聲明 
6.3.2 如何聲明一個函數 
6.3.3 分割程序文件 
6.4 函數調用 
6.4.1 形參和實參 
6.4.2 參數類型轉換 
6.4.3 值傳遞 
6.4.4 指針傳遞 
6.4.5 引用傳遞 
6.4.6 對3種傳遞的補充 
6.4.7 缺省參數調用 
6.4.8 內聯函數inline 
6.5 遞歸 
6.6 函數的重載 
6.6.1 什么是函數重載 
6.6.2 何時使用函數重載 
6.6.3 如何實現函數重載 
6.6.4 陷阱:隱式轉換導致重載函數出現二義性 
6.7 C++如何使用內存 
6.7.1 自動存儲(棧存儲) 
6.7.2 靜態存儲(編譯器預分配) 
6.8 作用域與可見域 
6.8.1 作用域 
6.8.2 可見域 
6.8.3 函數的作用域和可見域 
6.9 小結 
6.10 習題 

第7章 關于函數的高級專題 
7.1 內存使用錯誤剖析 
7.1.1 內存泄露 
7.1.2 野指針 
7.1.3 試圖修改常量 
7.1.4 用錯sizeof 
7.1.5 內存越界訪問 
7.1.6 變量的初始化 
7.2 重申:函數參數傳遞和返回機制 
7.2.1 參數傳遞時的“副本” 
7.2.2 函數返回時的“副本” 
7.3 函數與指針 
7.3.1 指向函數的指針 
7.3.2 typedef關鍵字 
7.3.3 通過函數指針將函數作為另一個函數的參數 
7.3.4 函數指針數組 
7.3.5 返回函數指針的函數 
7.3.6 帶參主函數 
7.4 函數與數組 
7.4.1 數組名作函數參數 
7.4.2 通過指針得到多于1個的回傳值 
7.5 函數與結構體、共用體及類對象 
7.5.1 3種參數調用 
7.5.2 3種返回機制 
7.6 函數編寫的建議 
7.6.1 合理使用const 
7.6.2 檢查輸入參數的有效性 
7.6.3 函數返回類型的判斷 
7.7 小結 
7.8 習題 

第三篇 面向對象的C++

第8章 面向對象編程基礎 
8.1 面向對象的基本概念 
8.1.1 面向對象開發的優勢 
8.1.2 什么是類 
8.1.3 類是分層的 
8.1.4 類和對象的關系 
8.2 C++類的定義 
8.2.1 類定義的基本形式 
8.2.2 類定義示例 
8.2.3 類和結構體 
8.3 C++類的實現 
8.3.1 在類定義時定義成員函數 
8.3.2 在類定義的外部定義成員函數 
8.4 C++類的使用 
8.4.1 聲明一個對象 
8.4.2 對象的作用域、可見域和生存期 
8.5 對象的創建和撤銷 
8.5.1 構造函數的作用 
8.5.2 構造函數可以有參數 
8.5.3 構造函數支持重載 
8.5.4 構造函數允許按參數默認方式調用 
8.5.5 初始化表達式 
8.5.6 析構函數 
8.5.7 顯式調用析構函數 
8.6 復制構造函數 
8.6.1 復制構造函數調用機制 
8.6.2 默認復制構造函數帶來的問題 
8.6.3 解決方案——顯式定義復制構造函數 
8.6.4 關于構造函數和復制構造函數 
8.7 特殊數據成員 
8.7.1 const數據成員 
8.7.2 引用成員 
8.7.3 類對象成員 
8.7.4 static數據成員 
8.8 特殊函數成員 
8.8.1 靜態成員函數 
8.8.2 const與成員函數 
8.9 對象的組織 
8.9.1 const對象 
8.9.2 指向對象的指針 
8.9.3 對象的大小 
8.9.4 this指針 
8.9.5 對象數組 
8.9.6 對象鏈表 
8.10 為對象動態分配內存 
8.10.1 使用new和delete為單個對象分配/釋放動態內存 
8.10.2 使用new和delete[]為對象數組分配/釋放動態空間 
8.10.3 malloc/free與new/delete 
8.11 小結 
8.12 習題 

第9章 關于對象的高級專題 
9.1 類的作用域 
9.2 類定義的作用域與可見域 
9.3 對象的生存期、作用域和可見域 
9.3.1 先定義,后實例化 
9.3.2 對象內存釋放與堆內存 
9.4 友元 
9.4.1 認識友元函數 
9.4.2 友元的非成員函數 
9.4.3 友元的成員函數 
9.4.4 友元函數的重載 
9.4.5 友元類 
9.4.6 友元是否破壞了封裝性 
9.5 運算符重載 
9.5.1 運算符重載規則 
9.5.2 運算符重載的優點 
9.5.3 以成員函數形式重載運算符 
9.5.4 以友元函數形式重載運算符 
9.5.5 友元函數形式和成員函數形式的比較 
9.5.6 對運算符重載的補充說明 
9.6 運算符重載范例 
9.6.1 賦值運算符 
9.6.2 函數調用運算符 
9.6.3 下標運算符 
9.7 類型轉換 
9.7.1 由其他類型向定義類的轉換 
9.7.2 由自定義類向其他類型的轉換 
9.7.3 隱式轉換帶來的二義性 
9.8 小結 
9.9 習題 

第10章 繼承 
10.1 什么是繼承 
10.1.1 簡單示例 
10.1.2 繼承的層次性 
10.2 基類和派生類 
10.2.1 基類 
10.2.2 public派生與private派生 
10.2.3 protected成員與protected派生 
10.3 多基派生 
10.3.1 多基派生的聲明和定義 
10.3.2 二義性問題 
10.3.3 消除二義性的解決方案 
10.4 虛基類 
10.4.1 共同基類帶來的二義性 
10.4.2 解決共同基類帶來的二義性 
10.4.3 虛基派生二義性與多基派生二義性不同 
10.5 派生類的構造函數和析構函數 
10.5.1 派生類的構造函數 
10.5.2 派生類的析構函數 
10.5.3 多基派生類的構造函數和析構函數 
10.5.4 虛基派生的構造函數和析構函數 
10.6 分清繼承還是組合 
10.6.1 繼承不是萬能的 
10.6.2 組合 
10.7 基類與派生類對象間的相互轉換 
10.7.1 類型適應 
10.7.2 多基繼承時的情況 
10.7.3 公共基類 
10.7.4 虛基類的情況 
10.8 小結 
10.9 習題 

第11章 多態 
11.1 多態與虛函數 
11.1.1 靜態聯編 
11.1.2 動態聯編 
11.1.3 為什么需要虛函數 
11.1.4 虛函數的聲明和定義 
11.2 虛函數的訪問 
11.2.1 對象名訪問 
11.2.2 基指針訪問 
11.2.3 引用訪問 
11.2.4 類內訪問 
11.2.5 在構造函數或析構函數中進行訪問 
11.3 純虛函數與抽象類 
11.3.1 純虛函數的聲明和定義 
11.3.2 抽象類 
11.3.3 另一種抽象類:類中只定義了protected型的構造函數 
11.3.4 延伸:構造函數能否為private型 
11.3.5 虛析構函數 
11.4 虛函數引入的二義性 
11.4.1 多基派生 
11.4.2 共同基類和虛繼承 
11.5 重載、覆蓋與隱藏 
11.5.1 重載 
11.5.2 覆蓋 
11.5.3 隱藏 
11.6 小結 
11.7 習題 

第四篇 泛型編程

第12章 模板 
12.1 為什么要定義模板 
12.1.1 類型參數化 
12.1.2 模板的定義 
12.2 函數模板 
12.2.1 函數模板的定義 
12.2.2 函數模板的使用 
12.2.3 隱式實例化 
12.2.4 顯式實例化 
12.2.5 特化 
12.2.6 重載 
12.2.7 優先級與執行順序 
12.3 類模板 
12.3.1 定義類模板 
12.3.2 隱式實例化 
12.3.3 顯式實例化 
12.3.4 顯式特化 
12.3.5 部分特化 
12.3.6 重載和優先級 
12.4 模板的嵌套 
12.4.1 函數成員模板 
12.4.2 對象成員模板 
12.5 模板參數 
12.6 小結 
12.7 習題 

第13章 標準模板庫 
13.1 理解STL 
13.1.1 容器 
13.1.2 適配器 
13.1.3 迭代器 
13.1.4 算法 
13.2 使用序列式容器 
13.2.1 序列式容器的創建和元素的訪問 
13.2.2 所有容器都支持的特征 
13.2.3 序列式容器中元素的插入和刪除 
13.2.4 vector容器、deque容器和list容器的比較 
13.3 使用關聯式容器 
13.3.1 set容器 
13.3.2 multiset容器 
13.3.3 map容器 
13.3.4 multimap容器 
13.4 關聯式容器支持的成員函數操作 
13.4.1 元素的插入 
13.4.2 元素的刪除 
13.4.3 元素的查找與訪問 
13.5 迭代器 
13.5.1 理解迭代器的本質 
13.5.2 迭代器的5種類型簡介 
13.5.3 為什么要定義這么多迭代器 
13.5.4 容器中定義的迭代器類型與5種類型的對應 
13.5.5 流迭代器 
13.5.6 前向迭代器、雙向迭代器和隨機訪問迭代器 
13.5.7 混合迭代器函數 
13.5.8 迭代器失效 
13.6 泛型算法 
13.6.1 什么是函數對象 
13.6.2 算法分類 
13.7 適配器 
13.7.1 容器適配器 
13.7.2 迭代器適配器 
13.7.3 函數適配器 
13.8 小結 
13.9 上機實踐習題 

第五篇 輸入輸出處理和編程規范

第14章 輸入輸出和文件 
14.1 輸入/輸出概述 
14.1.1 什么是文件 
14.1.2 流 
14.1.3 緩沖區 
14.1.4 重定向 
14.1.5 3種輸入/輸出機制 
14.2 高層I/O 
14.2.1 標準輸出函數printf() 
14.2.2 標準輸入函數scanf() 
14.2.3 掃描集 
14.2.4 sprintf()函數和sscanf()函數 
14.2.5 fprintf()函數和fscanf()函數 
14.2.6 文件訪問機制 
14.3 流類庫 
14.3.1 流類庫更安全、更高效 
14.3.2 流類庫層次 
14.4 輸出流 
14.4.1 操作符<< 
14.4.2 其他ostream方法 
14.4.3 格式狀態字 
14.4.4 格式控制值的默認值 
14.4.5 flag()函數讀取和設定格式狀態字 
14.4.6 使用setf()函數和unsetf()函數設定格式關鍵字 
14.4.7 設置域寬 
14.4.8 填充字符 
14.4.9 浮點數輸出和顯示精度 
14.4.10 控制符 
14.5 輸入流 
14.5.1 >>操作符 
14.5.2 輸入流與格式狀態字 
14.5.3 輸入流與域寬 
14.5.4 使用get()函數讀取單個字符 
14.5.5 使用get()和getline()函數讀取C風格字符串 
14.5.6 其他istream方法 
14.6 流狀態 
14.6.1 什么是流狀態 
14.6.2 讀取流狀態 
14.6.3 管理流狀態 
14.7 重載>>和<< 
14.7.1 插入符的重載 
14.7.2 抽取符的重載 
14.8 文件操作 
14.8.1 文件操作基本過程 
14.8.2 文件的打開 
14.8.3 取消文件和流的關聯 
14.8.4 文件的讀寫 
14.8.5 文本文件的讀寫 
14.8.6 二進制文件的讀寫 
14.8.7 文件的定位和隨機讀取 
14.9 小結 
14.10 習題 

第15章 命名空間 
15.1 什么是命名空間 
15.1.1 命名空間范例 
15.1.2 定義命名空間 
15.2 實體的作用域與可見域 
15.2.1 實體可見域 
15.2.2 可見域的擴展 
15.2.3 using聲明機制 
15.2.4 using聲明帶來的多重聲明問題(二義性) 
15.2.5 空間內的“屏蔽” 
15.2.6 先聲明,后使用 
15.3 命名空間的作用域與可見性 
15.3.1 命名空間的定義策略 
15.3.2 推薦用法 
15.3.3 命名空間嵌套 
15.3.4 using編譯指令 
15.3.5 using編譯指令與using聲明的對比 
15.3.6 未命名的命名空間 
15.4 對命名空間的思考 
15.5 小結 
15.6 習題 

第16章 string字符串類 
16.1 為什么要使用string類 
16.2 聲明一個字符串 
16.3 字符串的輸入輸出 
16.4 string類的功能 
16.5 小結 
16.6 習題 

第17章 異常和錯誤 
17.1 編碼時的防錯 
17.1.1 使用斷言 
17.1.2 調用abort()函數或exit()函數 
17.1.3 返回錯誤標志 
17.2 異常機制 
17.2.1 關鍵字throw 
17.2.2 異常處理程序 
17.2.3 自定義異常對象 
17.2.4 有繼承關系的類異常 
17.2.5 terminate()函數和set_terminate()函數 
17.2.6 unexpected()函數與set_unexpected()函數 
17.2.7 標準異常 
17.2.8 對unexpected()函數的補充 
17.3 異常發生時的內存管理 
17.3.1 堆棧解退 
17.3.2 異常處理機制和函數的不同 
17.3.3 構造函數中拋出異常 
17.3.4 內存泄露 
17.3.5 析構函數中可否拋出異常 
17.4 小結 
17.5 習題 

第18章 程序編譯 
18.1 程序的編譯流程 
18.1.1 編輯 
18.1.2 預處理和編譯 
18.1.3 鏈接 
18.2 預處理 
18.2.1 頭文件包含 
18.2.2 宏 
18.2.3 條件編譯 
18.2.4 #ifdef、#ifndef與重復包含 
18.2.5 使用const代替#define定義常量 
18.2.6 inline與#define的比較 
18.3 VC 6調試入門 
18.4 小結 
18.5 習題
 
第六篇 面試題精選

第19章 教學管理系統的C++實現 
19.1 項目概述 
19.2 自定義類 
19.3 實現自定義類 
19.3.1 新建C++頭文件和實現文件 
19.3.2 實現類功能 
19.4 使用自定義類 
19.4.1 復制自定義類文件到工程目錄下 
19.4.2 包含類的頭文件 
19.4.3 創建類實例對象 
19.4.4 調用對象成員完成相應功能 
19.5 制作個性化系統界面 
19.5.1 Visual C++控件介紹 
19.5.2 制作個性化的系統界面 
19.6 在控件消息響應函數中使用自定義類功能 
19.6.1 為控件添加消息響應函數 
19.6.2 為界面中的控件關聯變量名 
19.6.3 在消息響應函數中調用類成員 
19.7 使用文件保存數據 
19.7.1 創建文件實例對象 
19.7.2 打開文件 
19.7.3 格式化讀取文件 
19.7.4 格式化寫入文件 
19.7.5 關閉文件 
19.7.6 實例程序 
19.8 小結 

第20章 常見面試題 
20.1 常見基本知識問答題 
面試題1:簡述面向對象的三個基本特征 
面試題2:局部變量能否和全局變量重名 
面試題3:類成員函數的重載、覆蓋和隱藏的區別是什么 
面試題4:用變量a給出下面的定義 
面試題5:在C++中,下面的結構是合法的嗎?如果合法,其作用是什么 
面試題6:非C++內建類 A 和 B,在哪幾種情況下B能隱式轉化為A 
面試題7:C++中的空類默認產生哪些類成員函數 
面試題8:C++有哪些性質(面向對象特點) 
面試題9:子類析構時要調用父類的析構函數嗎 
面試題10:什么是“引用”?聲明和使用“引用”要注意哪些問題? 
面試題11:將“引用”作為函數返回值類型的格式及優點有哪些 
面試題12:“引用”與指針的區別是什么 
面試題13:重載和重寫(“覆蓋”)的區別 
面試題14:多態的作用是什么 
面試題15: const與#define 相比有何優點 
面試題16:C語言中的static關鍵字有何作用 
面試題17:如何判斷程序是由C 編譯程序編譯的還是由C++編譯程序編譯的 
面試題18:關鍵字const的含義是什么 
20.2 世界500強公司的智力問答題 
面試題19:工人分金條 
面試題20:分蛋糕 
面試題21:過橋問題 
面試題22:黑白帽子 
面試題23:電梯與鉆石 
面試題24:手電筒傳遞 
面試題25:燒繩問題 
面試題26:圓的下水道蓋子 
面試題27:選建筑師 
面試題28:天平分鹽 
面試題29:分不開的錢 
面試題30:小鳥追火車 
面試題31:給紅色最大的機會 
面試題32:鏡子中的影像 
面試題33:污染的藥丸 
面試題34:稱出不是標準重量的水 
面試題35:多彩的果凍 
面試題36:電子游戲機 
面試題37:監獄里的囚犯 
面試題38:燈的狀態 
面試題39:時針和分針 
面試題40:3個奇數 
面試題41:屋內的燈 
面試題42:找出最重的球 
面試題43:盲人分襪子 
面試題44:燒香計時 
面試題45:平分蜂蜜 
面試題46:猜經理女兒的年齡 
面試題47:兩個圓環 
面試題48:喝啤酒 
面試題49:算24點 
面試題50:聰明人 
面試題51:海盜分金幣 
面試題52:到底是什么牌 
面試題53:聰明的老板娘 
面試題54:找出不同重量的球 
20.3 分析題 
面試題55:分析下面的程序段,顯示最后的結果 
面試題56:分析程序最后的輸出結果 
面試題57:分析最后輸出的結果 
面試題58:求下面函數的返回值 
面試題59:分析最后輸出的結果 
面試題60:分析最后輸出的結果 
20.4 編程題 
面試題61:結果輸出到文件 
面試題62:String類的具體實現 
面試題63:鏈表題——一個鏈表的結點結構 
面試題64:寫一個函數并找出在一個整數數組中第二大的數 
面試題65:字符串的逆序輸出 
面試題66:判斷操作系統的位數 
面試題67:實現對數組的降序排序 
面試題68:斐波那契數列1,1,2,3,5……編寫程序求第10項 
序: