全面、系統地介紹了C語言的基礎知識,以及如何使用C語言進行程序開發。書中的內容涉及面廣,從基本操作到進階技巧和高級技術,再到項目開發,幾乎涉及C語言開發過程中的所有重要知識。《C語言編程實戰寶典》講解時提供了大量的實例,供讀者實戰演練。
賈蓓,講師。研究方向為數據庫與XML技術,在軍隊院校任教4年,講授多門計算機相關課程。近年來在國內外學術刊物及學術會議上發表論文10余篇,其中EI收錄7篇。喜歡研究新技術,精通JavaWeb開發,有豐富的項目開發經驗。鎮明敏,本科畢業於南開大學軟件工程專業。碩士就讀於北京大學計算機應用技術專業。精通C語言及JavaWeb開發。曾經參與過團購網站和火車票訂票系統的開發,還參與過國家大學生創新型項目——基於OpenXML的Word論文格式檢查系統的開發。
姜薇,博士,副教授。主要講授《C語言程序設計》和《計算機網絡原理》等專業課程。對計算機與信息技術有深刻的理解和豐富的研發經驗。近年來在國內外學術刊物及學術會議上發表論文多篇。精通C語言開發,積累了豐富的項目實戰經驗。
目錄
第1篇 C語言基礎知識
第1章 C語言概述( 教學視頻:35分鍾)
1.1 關於程序設計
1.1.1 了解程序設計
1.1.2 了解計算機語言
1.1.3 計算機語言的分類
1.2 C語言概述
1.2.1 C語言的歷史發展
1.2.2 C語言的基本特點
1.3 C語言的開發環境
1.3.1 編輯器、編譯器和鏈接器
1.3.2 集成開發環境
1.4 Turbo C的使用
1.5 Microsoft Visual C++ 6.0的使用
1.6 Hello World程序
1.7 A+B程序
1.8 程序錯誤和調試
1.9 小結
1.10 習題
第2章 C語言與算法( 教學視頻:39分鍾)
2.1 算法的基本概念
2.1.1 算法基礎
2.1.2 算法特性
2.1.3 算法的使用舉例
2.2 算法描述
2.2.1 自然語言
2.2.2 流程圖
2.2.3 3種基本結構
2.2.4 N-S流程圖
2.2.5 偽代碼
2.3 小結
2.4 習題
第3章 C語言的構成——函數( 教學視頻:69分鍾)
3.1 函數概述
3.1.1 庫函數
3.1.2 自定義函數
3.2 函數的定義和調用
3.2.1 簡單函數的定義
3.2.2 簡單函數的調用
3.3 函數的參數
3.3.1 帶參數的函數定義
3.3.2 帶參數的函數調用
3.3.3 形式參數與實際參數
3.4 函數的返回值
3.4.1 帶返回值的函數定義
3.4.2 帶返回值的函數調用
3.5 開發實踐
3.6 小結
3.7 習題
第4章 常量、基本數據類型、運算符和表達式( 教學視頻:61分鍾)
4.1 常量與變量
4.1.1 常量與符號常量
4.1.2 變量
4.2 數據類型
4.2.1 整型數據
4.2.2 實型數據
4.2.3 字符型數據
4.2.4 枚舉型數據
4.2.5 基本類型數據的輸入和輸出函數(scanf()/printf())
4.3 運算符和表達式
4.3.1 算數運算符和表達式
4.3.2 賦值運算符和表達式
4.3.3 關系運算符和表達式
4.3.4 邏輯運算符和表達式
4.3.5 條件運算符和表達式
4.3.6 逗號運算符和表達式
4.4 數據類型轉換
4.4.1 隱式類型轉換
4.4.2 強制類型轉換
4.5 小結
4.6 習題
第5章 變量( 教學視頻:35分鍾)
5.1 變量的定義與使用
5.1.1 變量的定義和賦值
5.1.2 變量的命名規范
5.2 變量的作用范圍
5.2.1 局部變量
5.2.2 全局變量
5.3 變量的存儲類型
5.3.1 變量的3個屬性
5.3.2 自動變量
5.3.3 寄存器變量
5.3.4 具有代碼塊作用域的靜態變量
5.3.5 具有外部鏈接的靜態變量
5.3.6 具有內部鏈接的靜態變量
5.3.7 存儲類型說明符
5.4 開發實踐
5.5 小結
5.6 習題
第6章 流程控制( 教學視頻:70分鍾)
6.1 C語句概述
6.2 順序結構程序t
6.3 選擇結構程序
6.3.1 單分支if語句
6.3.2 雙分支if語句
6.3.3 多分支else-if語句
6.3.4 if語句的嵌套使用
6.3.5 switch語句的使用
6.4 循環結構程序
6.4.1 while語句的使用
6.4.2 do…while語句的使用
6.4.3 for語句的使用
6.4.4 三種循環語句對比
6.4.5 嵌套循環
6.4.6 continue語句和break語句
6.5 開發實踐
6.6 小結
6.7 習題
第7章 數組( 教學視頻:47分鍾)
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.3.3 二維數組的初始化
7.3.4 二維數組程序舉例
7.4 開發實踐t
7.5 小結
7.6 習題
第8章 指針( 教學視頻:77分鍾)
8.1 指針概述
8.2 指針與變量
8.2.1 指針變量的定義
8.2.2 取地址運算符(&)
8.2.3 取值運算符(*)
8.2.4 指針變量賦值
8.3 指針與函數
8.3.1 指針作為函數參數
8.3.2 指針作為返回值
8.3.3 指向函數的指針
8.3.4 指向函數的指針作函數參數
8.4 指針與數組
8.4.1 指向數組元素的指針
8.4.2 指針的算術運算與數組運算
8.4.3 使用指針處理數組元素
8.4.4 數組名作為指針
8.4.5 指針數組
8.4.6 指向指針數據的指針
8.5 指針與多維數組
8.5.1 處理多維數組的元素
8.5.2 處理多維數組的行
8.5.3 命令行參數
8.6 開發實踐
8.7 小結
8.8 習題
第9章 構造數據類型( 教學視頻:38分鍾)
9.1 結構體
9.1.1 建立結構體類型
9.1.2 結構體變量的定義及初始化
9.1.3 訪問結構體成員
9.1.4 結構體數組
9.1.5 指向結構體變量的指針
9.1.6 指向結構體數組的指針
9.1.7 結構體作為函數的參數
9.1.8 結構體數組作為參數
9.2 共用體
9.3 類型定義符typedef
9.4 開發實踐
9.5 小結
9.6 習題
第10章 預處理命令( 教學視頻:39分鍾)
10.1 預處理器的工作方式
10.2 預處理指令
10.3 宏定義
10.3.1 不帶參數的宏
10.3.2 帶參數的宏
10.3.3 #運算符
10.3.4 ##運算符
10.3.5 取消宏定義
10.3.6 宏和函數
10.3.7 宏定義(#define)和類型定義(typedef)
10.3.8 預定義宏
10.4 條件編譯
10.4.1 #if…#endif指令
10.4.2 #if…#else…#endif指令
10.4.3 #if…#elif…#endif指令
10.4.4 #ifdef…#endif指令
10.4.5 #ifndef…#endif指令
10.4.6 條件編譯的使用
10.5 文件包含
10.6 其他指令
10.6.1 #error指令
10.6.2 #line指令
10.6.3 #pragma指令
10.7 開發實踐
10.8 小結
10.9 習題
第11章 再談函數( 教學視頻:42分鍾)
11.1 函數的嵌套調用
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 多維數組名做函數參數
11.4 內聯函數
11.5 開發實踐
11.6 小結
11.7 習題
第2篇 C語言進階技巧
第12章 字符及字符串處理( 教學視頻:42分鍾)
12.1 字符串常量
12.1.1 字符串常量概述
12.1.2 存儲字符串常量
12.1.3 字符串常量的表示
12.1.4 字符串常量與字符常量
12.2 字符串變量
12.2.1 字符數組的定義及初始化
12.2.2 字符數組與字符指針
12.2.3 指針與字符串
12.3 字符串的輸入
12.3.1 創建存儲空間
12.3.2 gets()函數
12.3.3 fgets()函數
12.3.4 scanf()函數
12.4 字符串的輸出
12.4.1 puts()函數
12.4.2 fputs()函數
12.4.3 printf()函數
12.5 字符串處理函數
12.5.1 strlen()函數
12.5.2 strcat()函數
12.5.3 strcmp()函數
12.5.4 strcpy()函數t
12.5.5 其他字符串處理函數
12.6 開發實踐
12.7 小結
12.8 習題
第13章 內存處理( 教學視頻:39分鍾)
13.1 動態存儲分配
13.1.1 內存分配函數
13.1.2 空指針
13.2 動態分配字符串
13.2.1 使用malloc()函數為字符串分配內存
13.2.2 在字符串函數中使用動態存儲分配
13.3 動態分配數組
13.3.1 使用malloc()函數為數組分配內存
13.3.2 calloc()函數
13.3.3 realloc()函數
13.4 釋放存儲
13.4.1 free()函數
13.4.2 「無效指針」問題
13.5 鏈表
13.5.1 從數組到鏈表
13.5.2 聲明結點類型
13.5.3 創建結點
13.5.4 -->運算符
13.5.5 向鏈表中插入結點
13.5.6 搜索鏈表
13.5.7 刪除鏈表結點
13.5.8 使用鏈表
13.6 開發實踐
13.7 小結
13.8 習題
第14章 文件處理( 教學視頻:28分鍾)
14.1 流
14.1.1 文件指針
14.1.2 標准流與重定向
14.2 與文件通信
14.2.1 什麼是文件
14.2.2 文本文件與二進制文件
14.3 文件操作
14.3.1 打開文件
14.3.2 關閉文件
14.3.3 為流附加文件
14.3.4 從命令行獲取文件名
14.4 格式化的輸入/輸出
14.4.1 printf()函數與fprintf()函數
14.4.2 scanf()函數與fscanf()函數
14.5 字符的輸入/輸出
14.5.1 輸出函數
14.5.2 輸入函數
第1章 C語言概述( 教學視頻:35分鍾)
1.1 關於程序設計
1.1.1 了解程序設計
1.1.2 了解計算機語言
1.1.3 計算機語言的分類
1.2 C語言概述
1.2.1 C語言的歷史發展
1.2.2 C語言的基本特點
1.3 C語言的開發環境
1.3.1 編輯器、編譯器和鏈接器
1.3.2 集成開發環境
1.4 Turbo C的使用
1.5 Microsoft Visual C++ 6.0的使用
1.6 Hello World程序
1.7 A+B程序
1.8 程序錯誤和調試
1.9 小結
1.10 習題
第2章 C語言與算法( 教學視頻:39分鍾)
2.1 算法的基本概念
2.1.1 算法基礎
2.1.2 算法特性
2.1.3 算法的使用舉例
2.2 算法描述
2.2.1 自然語言
2.2.2 流程圖
2.2.3 3種基本結構
2.2.4 N-S流程圖
2.2.5 偽代碼
2.3 小結
2.4 習題
第3章 C語言的構成——函數( 教學視頻:69分鍾)
3.1 函數概述
3.1.1 庫函數
3.1.2 自定義函數
3.2 函數的定義和調用
3.2.1 簡單函數的定義
3.2.2 簡單函數的調用
3.3 函數的參數
3.3.1 帶參數的函數定義
3.3.2 帶參數的函數調用
3.3.3 形式參數與實際參數
3.4 函數的返回值
3.4.1 帶返回值的函數定義
3.4.2 帶返回值的函數調用
3.5 開發實踐
3.6 小結
3.7 習題
第4章 常量、基本數據類型、運算符和表達式( 教學視頻:61分鍾)
4.1 常量與變量
4.1.1 常量與符號常量
4.1.2 變量
4.2 數據類型
4.2.1 整型數據
4.2.2 實型數據
4.2.3 字符型數據
4.2.4 枚舉型數據
4.2.5 基本類型數據的輸入和輸出函數(scanf()/printf())
4.3 運算符和表達式
4.3.1 算數運算符和表達式
4.3.2 賦值運算符和表達式
4.3.3 關系運算符和表達式
4.3.4 邏輯運算符和表達式
4.3.5 條件運算符和表達式
4.3.6 逗號運算符和表達式
4.4 數據類型轉換
4.4.1 隱式類型轉換
4.4.2 強制類型轉換
4.5 小結
4.6 習題
第5章 變量( 教學視頻:35分鍾)
5.1 變量的定義與使用
5.1.1 變量的定義和賦值
5.1.2 變量的命名規范
5.2 變量的作用范圍
5.2.1 局部變量
5.2.2 全局變量
5.3 變量的存儲類型
5.3.1 變量的3個屬性
5.3.2 自動變量
5.3.3 寄存器變量
5.3.4 具有代碼塊作用域的靜態變量
5.3.5 具有外部鏈接的靜態變量
5.3.6 具有內部鏈接的靜態變量
5.3.7 存儲類型說明符
5.4 開發實踐
5.5 小結
5.6 習題
第6章 流程控制( 教學視頻:70分鍾)
6.1 C語句概述
6.2 順序結構程序t
6.3 選擇結構程序
6.3.1 單分支if語句
6.3.2 雙分支if語句
6.3.3 多分支else-if語句
6.3.4 if語句的嵌套使用
6.3.5 switch語句的使用
6.4 循環結構程序
6.4.1 while語句的使用
6.4.2 do…while語句的使用
6.4.3 for語句的使用
6.4.4 三種循環語句對比
6.4.5 嵌套循環
6.4.6 continue語句和break語句
6.5 開發實踐
6.6 小結
6.7 習題
第7章 數組( 教學視頻:47分鍾)
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.3.3 二維數組的初始化
7.3.4 二維數組程序舉例
7.4 開發實踐t
7.5 小結
7.6 習題
第8章 指針( 教學視頻:77分鍾)
8.1 指針概述
8.2 指針與變量
8.2.1 指針變量的定義
8.2.2 取地址運算符(&)
8.2.3 取值運算符(*)
8.2.4 指針變量賦值
8.3 指針與函數
8.3.1 指針作為函數參數
8.3.2 指針作為返回值
8.3.3 指向函數的指針
8.3.4 指向函數的指針作函數參數
8.4 指針與數組
8.4.1 指向數組元素的指針
8.4.2 指針的算術運算與數組運算
8.4.3 使用指針處理數組元素
8.4.4 數組名作為指針
8.4.5 指針數組
8.4.6 指向指針數據的指針
8.5 指針與多維數組
8.5.1 處理多維數組的元素
8.5.2 處理多維數組的行
8.5.3 命令行參數
8.6 開發實踐
8.7 小結
8.8 習題
第9章 構造數據類型( 教學視頻:38分鍾)
9.1 結構體
9.1.1 建立結構體類型
9.1.2 結構體變量的定義及初始化
9.1.3 訪問結構體成員
9.1.4 結構體數組
9.1.5 指向結構體變量的指針
9.1.6 指向結構體數組的指針
9.1.7 結構體作為函數的參數
9.1.8 結構體數組作為參數
9.2 共用體
9.3 類型定義符typedef
9.4 開發實踐
9.5 小結
9.6 習題
第10章 預處理命令( 教學視頻:39分鍾)
10.1 預處理器的工作方式
10.2 預處理指令
10.3 宏定義
10.3.1 不帶參數的宏
10.3.2 帶參數的宏
10.3.3 #運算符
10.3.4 ##運算符
10.3.5 取消宏定義
10.3.6 宏和函數
10.3.7 宏定義(#define)和類型定義(typedef)
10.3.8 預定義宏
10.4 條件編譯
10.4.1 #if…#endif指令
10.4.2 #if…#else…#endif指令
10.4.3 #if…#elif…#endif指令
10.4.4 #ifdef…#endif指令
10.4.5 #ifndef…#endif指令
10.4.6 條件編譯的使用
10.5 文件包含
10.6 其他指令
10.6.1 #error指令
10.6.2 #line指令
10.6.3 #pragma指令
10.7 開發實踐
10.8 小結
10.9 習題
第11章 再談函數( 教學視頻:42分鍾)
11.1 函數的嵌套調用
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 多維數組名做函數參數
11.4 內聯函數
11.5 開發實踐
11.6 小結
11.7 習題
第2篇 C語言進階技巧
第12章 字符及字符串處理( 教學視頻:42分鍾)
12.1 字符串常量
12.1.1 字符串常量概述
12.1.2 存儲字符串常量
12.1.3 字符串常量的表示
12.1.4 字符串常量與字符常量
12.2 字符串變量
12.2.1 字符數組的定義及初始化
12.2.2 字符數組與字符指針
12.2.3 指針與字符串
12.3 字符串的輸入
12.3.1 創建存儲空間
12.3.2 gets()函數
12.3.3 fgets()函數
12.3.4 scanf()函數
12.4 字符串的輸出
12.4.1 puts()函數
12.4.2 fputs()函數
12.4.3 printf()函數
12.5 字符串處理函數
12.5.1 strlen()函數
12.5.2 strcat()函數
12.5.3 strcmp()函數
12.5.4 strcpy()函數t
12.5.5 其他字符串處理函數
12.6 開發實踐
12.7 小結
12.8 習題
第13章 內存處理( 教學視頻:39分鍾)
13.1 動態存儲分配
13.1.1 內存分配函數
13.1.2 空指針
13.2 動態分配字符串
13.2.1 使用malloc()函數為字符串分配內存
13.2.2 在字符串函數中使用動態存儲分配
13.3 動態分配數組
13.3.1 使用malloc()函數為數組分配內存
13.3.2 calloc()函數
13.3.3 realloc()函數
13.4 釋放存儲
13.4.1 free()函數
13.4.2 「無效指針」問題
13.5 鏈表
13.5.1 從數組到鏈表
13.5.2 聲明結點類型
13.5.3 創建結點
13.5.4 -->運算符
13.5.5 向鏈表中插入結點
13.5.6 搜索鏈表
13.5.7 刪除鏈表結點
13.5.8 使用鏈表
13.6 開發實踐
13.7 小結
13.8 習題
第14章 文件處理( 教學視頻:28分鍾)
14.1 流
14.1.1 文件指針
14.1.2 標准流與重定向
14.2 與文件通信
14.2.1 什麼是文件
14.2.2 文本文件與二進制文件
14.3 文件操作
14.3.1 打開文件
14.3.2 關閉文件
14.3.3 為流附加文件
14.3.4 從命令行獲取文件名
14.4 格式化的輸入/輸出
14.4.1 printf()函數與fprintf()函數
14.4.2 scanf()函數與fscanf()函數
14.5 字符的輸入/輸出
14.5.1 輸出函數
14.5.2 輸入函數
網路書店
類別
折扣
價格
-
新書87折$517