《跟我學C語言》內容全面,結構清晰,語言通俗,重點難點突出,所有程式都能夠直接運行。《跟我學C語言》內容包括C語言概述、常用的程式開發環境、基本數據類型、表達式、順序結構程式設計、選擇結構程式設計、循環結構程式設計、數組、函式、預處理命令、指針、結構體和共用體、位運算。檔案、鍊表、鍵盤和滑鼠、網路編程基礎、常用算法、棧和佇列、排序、學生成績管理系統、常見錯誤和程式調試技術。
基本介紹
- 書名:跟我學C語言
- 出版社:清華大學出版社
- 頁數:650頁
- 開本:16
- 品牌:清華大學出版社
- 作者:陳銳 田建新
- 出版日期:2013年9月1日
- 語種:簡體中文
- ISBN:9787302330080
內容簡介,圖書目錄,
內容簡介
《跟我學C語言》可作為學習C程式設計、從事計算機軟體開發、參加等級考試和軟考的人員的參考書,也可以作為計算機及相關專業的教材。
圖書目錄
第1章C語言概述
1.1為什麼要選擇C語言
1.1.1選擇C語言的好處
1.1.2C語言的特點
1.1.3如何學好C語言
1.2進制轉換
1.2.1十進制數的表示
1.2.2二進制數的表示
1.2.3二進制數、十六進制數
和八進制數轉換為十進制數
1.2.4十進制數轉換為二進制數
1.2.5十進制數轉換為十六進制數
1.2.6十進制數轉換為八進制數
1.2.7二進制數與十六進制數、
八進制數的轉換
1.3計算機中數的表示
1.3.1計算機中的正數與負數表示
1.3.2原碼和補碼
1.3.3浮點數
1.4小結
第2章C語言開發環境
2.1TurboC 2.0開發環境介紹
2.1.1運行TurboC 2.0
2.1.2TurboC 2.0環境設定
2.1.3TurboC2.0的使用
2.2Win—TC開發環境介紹
2.2.1Win—TC開發環境概述
2.2.2Win—TC的使用
2.3LCC開發環境介紹
2.3.1使用LCC開發環境創建項目
2.3.2LCC開發環境的介紹
2.3.3LCC的使用
2.4VisualC++6.0開發環境介紹
2.4.1使用VisualC++6.0新建項目
2.4.2使用VisualC++6.0新建源程式檔案
2.4.3使用VisualC++6.0開發環境
2.5小結
第3章基本數據類型
3.1變數
3.1.1為什麼要使用變數
3.1.2什麼是變數——變數在計算機中的表示
3.1.3如何定義變數
3.1.4為什麼要有數據類型
3.1.5C語言有哪些數據類型
3.1.6什麼符號可以作為變數名——用戶定義的標識符
3.1.7關鍵字——已經被占用的標識符
3.1.8初識變數賦值
3.2整型變數
3.2.1為什麼要使用整型變數
3.2.2基本整型變數
3.2.3基本整型變數的輸入——使用
scanf函式
3.2.4基本整型變數的輸出——使用printf函式
3.2.5長整型變數——解決大整數問題
3.2.6短整型變數——節省記憶體空間
3.2.7無符號整型變數——只包括非負的整數
3.2.8整型變數的套用舉例
3.3實型變數
3.3.1為什麼使用實型變數
3.3.2單精度浮點型變數
3.3.3雙精度浮點型變數
3.3.4長雙精度浮點型變數
3.3.5實型變數的套用舉例
3.4字元型數據類型
3.4.1為什麼要使用字元型變數
3.4.2字元型變數
3.4.3字元型數據的輸入與字元型變數值的輸出——使用%c和%s
3.4.4字元型變數的套用舉例
3.5常量
3.5.1為什麼使用常量
3.5.2整型常量
3.5.3浮點型常量
3.5.4字元型常量與字元串型常量
3.5.5常量與常數
3.6小結
習題
第4章運算符與表達式
4.1表達式
4.1.1運算符有哪些
4.1.2什麼是表達式
4.1.3運算符的優先權與結合性
4.1.4自動類型轉換
4.2算術運算符與算術表達式
4.2.1基本算術表達式
4.2.2自增表達式——++a和a++
4.2.3自減表達式———a和a——
4.2.4算術運算符的混合運算——算術運算符的優先權與結合性
4.2.5算術表達式套用舉例
4.3賦值運算符與賦值表達式及其套用
4.3.1賦值運算符與賦值表達式
4.3.2類型轉換
4.3.3賦值表達式的套用舉例
4.4關係運算符與關係表達式及其套用
4.4.1關係運算符和關係表達式
4.4.2關係表達式套用舉例
4.5邏輯運算符與邏輯表達式及其套用
4.5.1邏輯運算符和邏輯表達式
4.5.2邏輯表達式套用舉例
4.6逗號表達式
4.6.1逗號運算符與逗號表達式
4.6.2逗號表達式中應注意的問題
4.6.3逗號表達式套用舉例
4.7小結
第5章順序結構程式設計
5.1語句和程式
5.1.1什麼是簡單語句
5.1.2為什麼使用複合語句
5.1.3什麼是複合語句
5.1.4使用複合語句應注意的問題
5.1.5為什麼要有程式
5.1.6C語言程式的框架結構
5.2順序結構程式設計
5.2.1順序結構程式設計的特點——自上而下執行每一個語句
5.2.2順序結構程式設計——求圓的面積
5.2.3順序結構程式——求一元二次方程ax2+bx+c=0的根
5.2.4順序結構程式設計套用舉例——將小寫字母轉換為大寫字母
5.3小結
第6章選擇結構程式設計
6.1條件運算符
6.1.1為什麼要有條件運算符
6.1.2條件運算符與條件表達式
6.2if選擇語句
6.2.1為什麼要有if選擇語句——理解容易
6.2.2if選擇語句——單分支選擇結構
6.2.3if—else選擇語句——雙分支的選擇結構
6.2.4if...else if...else選擇語句——多分支選擇結構
6.2.5if選擇語句的嵌套
6.2.6設定標誌變數
6.2.7if選擇語句與條件運算符——相互轉換
6.3switch選擇語句
6.3.1switch選擇語句
6.3.2switch選擇語句套用舉例
6.4選擇結構程式設計套用舉例
6.5小結
第7章循環結構程式設計
7.1為什麼要有循環結構
7.1.1如何重複輸出多個helloworld
7.1.2如何求連續的n個自然數的和
7.2while循環語句
7.2.1while循環語句——當型循環
7.2.2while循環語句套用舉例
7.3do—while循環語句
7.3.1為什麼要有do—while
7.3.2do—while循環語句——直到型循環
7.3.3比較while循環結構和do—while循環結構
7.4for循環語句
7.4.1for循環語句概述
7.4.2for循環語句的靈活性
7.4.3幾種循環語句的比較
7.5goto語句與goto語句構成的循環語句
7.5.1goto語句——無條件轉移語句
7.5.2goto語句構成的循環語句——向前跳轉
7.5.3goto語句與while語句、for語句的比較
7.6break語句
7.6.1循環中的“提前開溜”
7.6.2使用break語句
7.7continue語句
7.7.1為什麼要有continue語句
7.7.2使用continue語句
7.7.3continue語句與break語句的區別
7.7.4continue語句套用舉例
7.8多重循環程式設計
7.8.1為什麼要有循環的嵌套——一層循環是不能解決所有問題的
7.8.2循環的嵌套——循環結構中還可以有循環結構
7.8.3多重循環套用舉例——輸出乘法口訣表
7.9循環結構程式套用舉例
7.9.1循環結構程式套用舉例——求π的近似值
7.9.2循環結構程式套用舉例——求101~200之間的所有質數
7.9.3循環結構程式套用舉例——質數問題的改進算法
7.9.4循環結構程式套用舉例——百雞問題
7.10小結
第8章數組
8.1為什麼要有數組
8.1.1多變數的解決之道——數組的引入
8.1.2數組就是這個樣子——初識數組
8.1.3數組的數組——維度的出現
8.2一維數組
8.2.1一維數組是這樣定義的
8.2.2一維數組的引用——其實很簡單
8.2.3一維數組的初始化——方法有許多
8.2.4一維數組的套用舉例——求數組各元素的平均值
8.2.5一維數組的套用舉例——數組元素的倒排
8.2.6一維數組的套用舉例——冒泡排序
8.3二維數組
8.3.1二維數組原來是這樣定義的
8.3.2二維數組的引用——其實並不難
8.3.3二維數組的初始化——多樣的初始化
8.3.4二維數組套用舉例——計算各科成績的平均分
8.3.5二維數組套用舉例——矩陣的轉置
8.3.6二維數組套用舉例——有趣的魔方陣
8.4字元數組
8.4.1字元數組是這樣定義的
8.4.2字元數組的初始化
8.4.3字元數組的連續輸出——格式符%s
8.4.4字元數組的連續輸入——格式符%s
8.4.5常用的字元串處理函式
8.4.6字元數組的套用舉例
8.5小結
第9章函式
9.1為什麼要有函式及函式的分類
9.1.1為什麼要有函式
9.1.2函式有哪些——庫函式和用戶函式
9.2函式的定義形式
9.2.1不帶參數的函式定義形式
9.2.2帶參數的函式定義形式——有參數列表
9.2.3帶參數的函式定義形式——形參定義的傳統方式
9.3局部變數與全局變數
9.3.1局部變數
9.3.2全局變數
9.4函式的參數與函式的值
9.4.1形式參數與實際參數
9.4.2函式的返回值
9.5函式的調用
9.5.1函式調用的一般形式
9.5.2函式調用的方式
9.5.3對被調用函式的聲明
9.6函式的嵌套調用
9.6.1函式的嵌套調用過程
9.6.2函式的嵌套套用舉例
9.7函式的遞歸調用
9.7.1什麼是遞歸——自己調用自己
9.7.2遞歸函式套用舉例——求n!
9.7.3遞歸函式調用套用舉例——Fibonacci數列
9.8數組作為函式的參數
9.8.1數組元素作為函式的參數——只能傳遞一個數組元素
9.8.2數組名作為函式的參數——可以傳遞整個數組
9.8.3數組名作為參數傳遞——實際上傳遞的是數組的首地址
9.8.4多維數組名作為函式的參數——傳遞整個數組
9.9變數的存儲
9.9.1什麼是動態存儲與靜態存儲——生存期不同
9.9.2auto變數——自動類型變數
9.9.3static變數——靜態變數
9.9.4register變數——使運行速度更快的變數
9.9.5extern變數——聲明外部變數
9.10內部函式與外部函式
9.10.1內部函式——使用static
9.10.2外部函式——使用extern
9.11函式套用舉例
9.11.1函式套用舉例——遞歸求解n個數的最大值
9.11.2函式套用舉例——遞歸求解a與b的最大公約數
9.11.3函式套用舉例——字元數組元素逆序存放
9.12小結
……
第10章預處理命令
第11章指針
第12章結構體和共用體
第13章位運算
第14章檔案
第15章鍊表
第16章鍵盤和滑鼠
第17章網路編程基礎
第18章常用算法
第19章簡單數據結構——棧和佇列
第20章常用技術——排序
第21章學生成績管理系統
第22章C語言常見錯誤與程式調試技術
後記
參考文獻
1.1為什麼要選擇C語言
1.1.1選擇C語言的好處
1.1.2C語言的特點
1.1.3如何學好C語言
1.2進制轉換
1.2.1十進制數的表示
1.2.2二進制數的表示
1.2.3二進制數、十六進制數
和八進制數轉換為十進制數
1.2.4十進制數轉換為二進制數
1.2.5十進制數轉換為十六進制數
1.2.6十進制數轉換為八進制數
1.2.7二進制數與十六進制數、
八進制數的轉換
1.3計算機中數的表示
1.3.1計算機中的正數與負數表示
1.3.2原碼和補碼
1.3.3浮點數
1.4小結
第2章C語言開發環境
2.1TurboC 2.0開發環境介紹
2.1.1運行TurboC 2.0
2.1.2TurboC 2.0環境設定
2.1.3TurboC2.0的使用
2.2Win—TC開發環境介紹
2.2.1Win—TC開發環境概述
2.2.2Win—TC的使用
2.3LCC開發環境介紹
2.3.1使用LCC開發環境創建項目
2.3.2LCC開發環境的介紹
2.3.3LCC的使用
2.4VisualC++6.0開發環境介紹
2.4.1使用VisualC++6.0新建項目
2.4.2使用VisualC++6.0新建源程式檔案
2.4.3使用VisualC++6.0開發環境
2.5小結
第3章基本數據類型
3.1變數
3.1.1為什麼要使用變數
3.1.2什麼是變數——變數在計算機中的表示
3.1.3如何定義變數
3.1.4為什麼要有數據類型
3.1.5C語言有哪些數據類型
3.1.6什麼符號可以作為變數名——用戶定義的標識符
3.1.7關鍵字——已經被占用的標識符
3.1.8初識變數賦值
3.2整型變數
3.2.1為什麼要使用整型變數
3.2.2基本整型變數
3.2.3基本整型變數的輸入——使用
scanf函式
3.2.4基本整型變數的輸出——使用printf函式
3.2.5長整型變數——解決大整數問題
3.2.6短整型變數——節省記憶體空間
3.2.7無符號整型變數——只包括非負的整數
3.2.8整型變數的套用舉例
3.3實型變數
3.3.1為什麼使用實型變數
3.3.2單精度浮點型變數
3.3.3雙精度浮點型變數
3.3.4長雙精度浮點型變數
3.3.5實型變數的套用舉例
3.4字元型數據類型
3.4.1為什麼要使用字元型變數
3.4.2字元型變數
3.4.3字元型數據的輸入與字元型變數值的輸出——使用%c和%s
3.4.4字元型變數的套用舉例
3.5常量
3.5.1為什麼使用常量
3.5.2整型常量
3.5.3浮點型常量
3.5.4字元型常量與字元串型常量
3.5.5常量與常數
3.6小結
習題
第4章運算符與表達式
4.1表達式
4.1.1運算符有哪些
4.1.2什麼是表達式
4.1.3運算符的優先權與結合性
4.1.4自動類型轉換
4.2算術運算符與算術表達式
4.2.1基本算術表達式
4.2.2自增表達式——++a和a++
4.2.3自減表達式———a和a——
4.2.4算術運算符的混合運算——算術運算符的優先權與結合性
4.2.5算術表達式套用舉例
4.3賦值運算符與賦值表達式及其套用
4.3.1賦值運算符與賦值表達式
4.3.2類型轉換
4.3.3賦值表達式的套用舉例
4.4關係運算符與關係表達式及其套用
4.4.1關係運算符和關係表達式
4.4.2關係表達式套用舉例
4.5邏輯運算符與邏輯表達式及其套用
4.5.1邏輯運算符和邏輯表達式
4.5.2邏輯表達式套用舉例
4.6逗號表達式
4.6.1逗號運算符與逗號表達式
4.6.2逗號表達式中應注意的問題
4.6.3逗號表達式套用舉例
4.7小結
第5章順序結構程式設計
5.1語句和程式
5.1.1什麼是簡單語句
5.1.2為什麼使用複合語句
5.1.3什麼是複合語句
5.1.4使用複合語句應注意的問題
5.1.5為什麼要有程式
5.1.6C語言程式的框架結構
5.2順序結構程式設計
5.2.1順序結構程式設計的特點——自上而下執行每一個語句
5.2.2順序結構程式設計——求圓的面積
5.2.3順序結構程式——求一元二次方程ax2+bx+c=0的根
5.2.4順序結構程式設計套用舉例——將小寫字母轉換為大寫字母
5.3小結
第6章選擇結構程式設計
6.1條件運算符
6.1.1為什麼要有條件運算符
6.1.2條件運算符與條件表達式
6.2if選擇語句
6.2.1為什麼要有if選擇語句——理解容易
6.2.2if選擇語句——單分支選擇結構
6.2.3if—else選擇語句——雙分支的選擇結構
6.2.4if...else if...else選擇語句——多分支選擇結構
6.2.5if選擇語句的嵌套
6.2.6設定標誌變數
6.2.7if選擇語句與條件運算符——相互轉換
6.3switch選擇語句
6.3.1switch選擇語句
6.3.2switch選擇語句套用舉例
6.4選擇結構程式設計套用舉例
6.5小結
第7章循環結構程式設計
7.1為什麼要有循環結構
7.1.1如何重複輸出多個helloworld
7.1.2如何求連續的n個自然數的和
7.2while循環語句
7.2.1while循環語句——當型循環
7.2.2while循環語句套用舉例
7.3do—while循環語句
7.3.1為什麼要有do—while
7.3.2do—while循環語句——直到型循環
7.3.3比較while循環結構和do—while循環結構
7.4for循環語句
7.4.1for循環語句概述
7.4.2for循環語句的靈活性
7.4.3幾種循環語句的比較
7.5goto語句與goto語句構成的循環語句
7.5.1goto語句——無條件轉移語句
7.5.2goto語句構成的循環語句——向前跳轉
7.5.3goto語句與while語句、for語句的比較
7.6break語句
7.6.1循環中的“提前開溜”
7.6.2使用break語句
7.7continue語句
7.7.1為什麼要有continue語句
7.7.2使用continue語句
7.7.3continue語句與break語句的區別
7.7.4continue語句套用舉例
7.8多重循環程式設計
7.8.1為什麼要有循環的嵌套——一層循環是不能解決所有問題的
7.8.2循環的嵌套——循環結構中還可以有循環結構
7.8.3多重循環套用舉例——輸出乘法口訣表
7.9循環結構程式套用舉例
7.9.1循環結構程式套用舉例——求π的近似值
7.9.2循環結構程式套用舉例——求101~200之間的所有質數
7.9.3循環結構程式套用舉例——質數問題的改進算法
7.9.4循環結構程式套用舉例——百雞問題
7.10小結
第8章數組
8.1為什麼要有數組
8.1.1多變數的解決之道——數組的引入
8.1.2數組就是這個樣子——初識數組
8.1.3數組的數組——維度的出現
8.2一維數組
8.2.1一維數組是這樣定義的
8.2.2一維數組的引用——其實很簡單
8.2.3一維數組的初始化——方法有許多
8.2.4一維數組的套用舉例——求數組各元素的平均值
8.2.5一維數組的套用舉例——數組元素的倒排
8.2.6一維數組的套用舉例——冒泡排序
8.3二維數組
8.3.1二維數組原來是這樣定義的
8.3.2二維數組的引用——其實並不難
8.3.3二維數組的初始化——多樣的初始化
8.3.4二維數組套用舉例——計算各科成績的平均分
8.3.5二維數組套用舉例——矩陣的轉置
8.3.6二維數組套用舉例——有趣的魔方陣
8.4字元數組
8.4.1字元數組是這樣定義的
8.4.2字元數組的初始化
8.4.3字元數組的連續輸出——格式符%s
8.4.4字元數組的連續輸入——格式符%s
8.4.5常用的字元串處理函式
8.4.6字元數組的套用舉例
8.5小結
第9章函式
9.1為什麼要有函式及函式的分類
9.1.1為什麼要有函式
9.1.2函式有哪些——庫函式和用戶函式
9.2函式的定義形式
9.2.1不帶參數的函式定義形式
9.2.2帶參數的函式定義形式——有參數列表
9.2.3帶參數的函式定義形式——形參定義的傳統方式
9.3局部變數與全局變數
9.3.1局部變數
9.3.2全局變數
9.4函式的參數與函式的值
9.4.1形式參數與實際參數
9.4.2函式的返回值
9.5函式的調用
9.5.1函式調用的一般形式
9.5.2函式調用的方式
9.5.3對被調用函式的聲明
9.6函式的嵌套調用
9.6.1函式的嵌套調用過程
9.6.2函式的嵌套套用舉例
9.7函式的遞歸調用
9.7.1什麼是遞歸——自己調用自己
9.7.2遞歸函式套用舉例——求n!
9.7.3遞歸函式調用套用舉例——Fibonacci數列
9.8數組作為函式的參數
9.8.1數組元素作為函式的參數——只能傳遞一個數組元素
9.8.2數組名作為函式的參數——可以傳遞整個數組
9.8.3數組名作為參數傳遞——實際上傳遞的是數組的首地址
9.8.4多維數組名作為函式的參數——傳遞整個數組
9.9變數的存儲
9.9.1什麼是動態存儲與靜態存儲——生存期不同
9.9.2auto變數——自動類型變數
9.9.3static變數——靜態變數
9.9.4register變數——使運行速度更快的變數
9.9.5extern變數——聲明外部變數
9.10內部函式與外部函式
9.10.1內部函式——使用static
9.10.2外部函式——使用extern
9.11函式套用舉例
9.11.1函式套用舉例——遞歸求解n個數的最大值
9.11.2函式套用舉例——遞歸求解a與b的最大公約數
9.11.3函式套用舉例——字元數組元素逆序存放
9.12小結
……
第10章預處理命令
第11章指針
第12章結構體和共用體
第13章位運算
第14章檔案
第15章鍊表
第16章鍵盤和滑鼠
第17章網路編程基礎
第18章常用算法
第19章簡單數據結構——棧和佇列
第20章常用技術——排序
第21章學生成績管理系統
第22章C語言常見錯誤與程式調試技術
後記
參考文獻